原文標題:Anincompleteguidetostealthaddresses作者:VitalikButerin編譯:Karen,ForesightNews
當前以太坊生態系統中最大挑戰之一是隱私。默認情況下,進入公共區塊鏈的任何內容都是公開的,這不僅意味著資產和交易活動,還意味著ENS域名、POAP、NFT和靈魂綁定代幣等。使用一系列以太坊應用就意味著你的很多活動會公開給其他任何人查看和分析。
我們需要改善這種狀況。然而,到目前為止,關于改善隱私的討論主要圍繞一個特定的用例,即:ETH和主流ERC20代幣的隱私保護轉移。這篇文章將描述一種不同類別工具的機制和用例,可以在許多其他情況下改善以太坊的隱私狀態,也就是「隱身地址」概念。
隱身地址系統是什么?
假設Alice想要給Bob轉移資產,可能是一定數量的加密貨幣,也可能是一個NFT。當Bob收到資產時,他不想讓其他人知道該筆資產的接收人是他。隱藏已經轉移發生的事實是不可能的,特別是如果轉移的是一個在鏈上僅存在一個副本的NFT,不過隱藏誰是接收者可能更可行。
Alice和Bob更想要的應該是這樣一個支付流程系統,即,Bob向Alice發送某種能接收付款的「地址」編碼,僅此信息就足以讓Alice向他發送資產,而且這與目前的支付工作流程幾乎完全相同。
需要注意的是,這種隱私性與TornadoCash提供的隱私完全不同。TornadoCash可以隱藏ETH或主要ERC-20等主流可替代資產的轉賬,但在為鮮為人知的ERC20轉賬添加隱私方面非常薄弱,并且根本無法為NFT轉賬添加隱私。
Gravity Bridge在Osmosis為流動池提供外部激勵:7月5日消息,Cosmos生態的資產跨鏈橋Gravity Bridge在Osmosis為gUSDC/OSMO和ATOM/gUSDC提供外部激勵。 gUSDC/OSMO的激勵為50萬GRAV,周期45天; ATOM/gUSDC的激勵為100萬GRAV,周期45天.[2022/7/5 1:51:36]
如上提到的使用加密貨幣進行支付的普通工作流程,增加了隱私性,即,沒有人能知道資產接收人是Bob,而且工作流程未發生改變。
隱身地址是可以由Alice或Bob生成的地址,但只能由Bob控制。Bob生成一個支出密鑰并對此進行保密,然后使用該密鑰生成一個隱藏元地址。他將這個元地址傳遞給Alice。Alice可以對該元地址執行計算以生成屬于Bob的隱身地址。然后Alice可以將她想發送的任何資產發送到這個地址,Bob將完全控制這些資產。轉移過程中,Alice在鏈上發布了一些額外的加密數據,來幫助Bob發現這個地址屬于他。
另一種看待它的方式是:隱身地址提供與Bob相同的隱私屬性,為每筆交易生成一個新地址,但不需要Bob的任何交互。
隱身地址方案的完整工作流程如下所示:
1.Bob生成他的根支出密鑰和隱身元地址。
2.Bob添加了一條ENS記錄來注冊為bob.eth的隱身元地址bob.eth。
3.我們假設Alice知道Bob的地址為bob.eth。Alice在ENS上查找Bob的隱身元地址。
4.Alice生成一個只有她知道的臨時密鑰,并且她僅能使用一次。
Vitalik:捐贈的50萬億枚SHIB不會獲得稅務沖銷:5月19日消息,Vitalik表示,其向印度新冠加密救援基金捐贈的超50萬億枚SHIB不會獲得稅務沖銷(稅務減免)。據悉,SHIB幣價波動劇烈,此前其捐贈款價值20億美元,目前縮水到8億美元左右。(彭博社)[2021/5/19 22:19:08]
5.Alice使用一種算法,將她的臨時密鑰和Bob的元地址結合起來生成一個隱身地址。她現在可以將資產發送到這個地址。
6.Alice還生成她的臨時公鑰,并將其發布到臨時公鑰注冊表。
7.為了讓Bob發現屬于他的隱身地址,Bob需要掃描臨時公鑰注冊表,以查找自其上次掃描以來任何人發布的整個臨時公鑰列表。
8.對于每個臨時公鑰,Bob嘗試將其與他的根支出密鑰結合起來生成一個隱身地址,并檢查該地址中是否有任何資產。如果有,Bob計算該地址的支出密鑰并記住它。
這一切都依賴于密碼欺騙的兩種用途。首先,我們需要一對算法來生成共享密鑰:一個算法使用Alice臨時密鑰和Bob的元地址,另一個算法使用Bob的根支出密鑰和Alice的臨時公鑰。這可以通過多種方式完成;Diffie-Hellman密鑰交換是建立現代密碼學領域的成果之一,它恰好實現了這一點。
但是僅共享秘密遠遠不夠:如果我們只是從共享秘密生成一個私鑰,那么Alice和Bob都可以從這個地址消費。我們還添加了一個密鑰盲化機制:在一對算法中,其中Bob可以將共享密鑰與他的根花費密鑰結合起來,而Alice可以將共享密鑰與Bob的元地址結合起來,這樣Alice就可以生成隱身地址,并且Bob可以為該隱身地址生成支出密鑰,所有這些都無需在隱身地址和Bob的元地址之間創建公共鏈接。
使用橢圓曲線密碼學隱藏地址
VitalikButerin提議使用Flashbots系統實現“賬戶抽象”:3月11日消息,以太坊聯合創始人 Vitalik Buterin 在研究機構 Flashbots 的 GitHub 倉庫中提議利用 Flashbots 作為“賬戶抽象”的一種實現方式。“賬戶抽象”是以太坊社區中討論的改進提案之一,以實現交易不需要從私鑰控制的 EOA 賬戶發起,而是可以直接從智能合約發起,具體的用例包括智能合約錢包、Tornado.Cash 這類隱私保護工具等。Vitalik Buterin 認為 Flashbots 可以解決這個問題,通過搭建一個插件將其變成智能合約錢包的中繼器以實現。他表示該方案不需要對以太坊底層協議進行很多改動。
Flashbots是由五位區塊鏈行業人士發起成立的開放研究機構,旨在針對以太坊及各智能合約公鏈所面對的 MEV 問題進行研究,并實施解決方案。[2021/3/11 18:35:51]
使用橢圓曲線密碼學隱藏地址最初是由PeterTodd于2014年在比特幣背景下引入的。該技術的工作原理如下:
·Bob生成一個密鑰,并計算M=G*m,其中G是橢圓曲線的公認生成點。隱身元地址是。
·Alice生成一個臨時密鑰,并發布臨時公鑰R=G*r。
·Alice可以計算出一個共享密鑰S=M*r,Bob也可以計算出相同的共享密鑰S=m*R。
?·一般來說,在比特幣和以太坊中,地址是包含用于驗證來自該地址的交易的公鑰的哈希。因此,如果你計算公鑰,就可以計算地址。為了計算公鑰,Alice或Bob可以計算P=M+G*hash(S)?
·要計算該地址的私鑰,Bob可以計算p=m+hash(S)??
這滿足了我們上面的所有要求,而且非常簡單。
波場與WAVES達成戰略合作,將利用Gravity連接區塊鏈智能合約語言:據官方消息,波場已與WAVES達成戰略合作,Waves和TRON將一起利用Gravity來連接各自區塊鏈的智能合約語言,即Ride和Solidity。Gravity是一個無基礎代幣的預言機,具有跨鏈通信網絡。TRON和Waves正在通過Gravity建立一座橋梁,這將允許兩個生態系統為兩個用戶群提供更多的服務。波場和Waves的生態系統計劃將這一趨勢擴展到其他區塊鏈生態系統并以此為鏈間DeFi行業帶來革命性改變。[2020/8/14]
甚至有一個?EIP?試圖為以太坊定義一個隱身地址標準,它既支持這種方法,又為用戶提供了開發其他方法的空間。現在你可能會想:隱身地址并不是很難,理論知識已經扎實,采用僅是一個實施細節。然而,問題在于,真正有效的實現還需要通過一些重要的實施細節。
隱身地址和支付交易費用
假設有人給你發了一個NFT。如果你想要確保隱私,他們會將其發送到您控制的隱身地址。掃描鏈上的臨時公鑰后,你的錢包會自動發現該地址。你現在可以自由證明NFT的所有權或將其轉讓給其他人。但有一個問題是,該帳戶中的ETH余額為0,因此也無法支付交易費用。即使是?ERC-4337?代幣付款人也不會奏效,因為它們只適用于可替代的ERC20代幣。而且你不能從你的主錢包向它發送ETH,因為那樣你就創建了一個公開可見的鏈接,也就是說沒了隱私性。
有一種簡單的方法可以解決這個問題:只需使用ZK-SNARKs轉移資金來支付費用。但這樣會消耗大量的Gas,僅單次轉賬就會額外消耗數幾十萬Gas。
另一種比較聰明的方法涉及信任專門的交易聚合器。這些聚合器將允許用戶支付一次以購買一組可用于支付鏈上交易的「tickets」。當用戶需要在一個不包含任何其他內容的隱身地址中花費NFT時,他們會向聚合器提供其中一張ticket,使用?Chaumian盲法進行編碼。這是在1980年代和1990年代提出的集中式隱私保護電子現金方案中使用的原始協議。搜索者接受ticket,并重復將交易免費包含在他們的捆綁包中,直到交易在一個區塊中被成功接受。
Vitalik為以太坊分片技術發布部分概念驗證:據coindesk報道,以太坊創始人Vitalik Buterin在發布 “分片即將到來”時分享了一個新的代碼庫,該代碼庫記錄了所謂的“分支選擇規則”的部分概念驗證,這是“以太碎片”如何與主區塊鏈相互作用的代碼。分片技術旨在將以太坊分成幾個并發網絡,從而使整個網絡更加高效地擴展。這將有助于 緩解 網絡面臨的擁塞,從而提高交易速度并降低成本。[2018/5/2]
隱身地址和分離支出和查看密鑰
假設Bob不是只有一個可以做所有事情的主「根支出密鑰」,而是想要一個單獨的根支出密鑰和查看密鑰。該查看密鑰可以看到Bob的所有隱身地址,但不能進行支出。
在橢圓曲線世界中,這可以使用一個非常簡單的密碼技巧來解決:
·Bob的元地址現在的形式為(K,V),編碼G*k和G*v,其中k是支出密鑰,v是查看密鑰。
·共享密鑰現在為S=V*r=v*R,其中r仍然是Alice的臨時密鑰,R仍然是Alice發布的臨時公鑰。
·隱身地址的公鑰是P=K+G*hash(S),私鑰是p=k+hash(S)。
第一個步驟使用查看密鑰,第二個步驟使用根支出密鑰。
這有很多用例。例如,如果Bob想要接收POAP,那么Bob可以給他的POAP錢包查看密鑰來掃描鏈并查看他的所有POAP,而不需要給這個界面花費那些POAP的權力。
隱身地址和易掃描
為了更容易地掃描整個臨時公鑰集,一種技術是向每個臨時公鑰添加一個視圖標簽。在上述機制中執行此操作的一種方法是使視圖標簽成為共享密鑰的一個字節(例如,S?modulo256的x坐標,或hash(S)的第一個字節。
這樣,Bob只需要為每個臨時公鑰執行一次橢圓曲線乘法來計算共享密鑰,由于有了視圖標簽,也更容易進行掃描。
隱身地址和抗量子安全
上面的方案依賴于橢圓曲線,不過盡管這種方案效果很好,但不幸的是,容易受到量子計算機的攻擊。我們將需要切換到抗量子算法。有兩個自然的候選者:橢圓曲線同源和格。
橢圓曲線同源是一種非常不同的基于橢圓曲線的數學構造,具有線性特性,可以讓我們使用與上面所做的類似的密碼技巧,但巧妙地避免了構造可能容易受到量子計算機離散對數攻擊的循環群。
基于同源密碼學的主要弱點是其高度復雜的底層數學,以及在這種復雜性下隱藏可能的攻擊的風險。一些基于同源的協議去年被攻擊,但其他協議仍然安全。同源的主要優勢是相對較小的密鑰大小,以及直接移植多種基于橢圓曲線的方法的能力。
A3-isogenyinCSIDH
格是一種非常不同的密碼結構,依賴于比橢圓曲線同構簡單的數學,并且能夠做一些非常強大的事情。隱身地址方案可以建立在格上,盡管設計最好的方案是一個懸而未決的問題。然而,基于格的結構往往具有更大的密鑰大小。
全同態加密,格的應用。FHE還可以用于以不同的方式幫助隱身地址協議:幫助Bob外包檢查整個鏈中是否包含資產的隱身地址的計算,而無需透露他的視圖密鑰。
第三種方法是從通用黑盒原語構建隱身地址的方案。該方案的共享密鑰生成部分直接映射到密鑰交換,這是公鑰加密系統中的重要組成部分。更難的部分是讓Alice只生成隱身地址并讓Bob生成支出密鑰的并行算法。
不幸的是,你無法使用比構建公鑰加密系統所需的更簡單的成分來構建隱身地址。有一個簡單的證明是,可以用一個隱身地址方案構建一個公鑰加密系統。如果Alice想給Bob加密一條消息,她可以發送N筆交易,每筆交易要么發往Bob的一個隱身地址,要么發往一個屬于她自己的隱身地址,Bob可以看到他收到了哪些交易來讀取消息。這很重要,在數學證明中你不能只用哈希來做公鑰加密,而你可以只用哈希來做零知識證明,因此,隱身地址不能只用哈希來完成。
這確實是一種使用相對簡單成分的方法:零知識證明,可以由哈希和公鑰加密組成。Bob的元地址是一個公開的加密密鑰加上一個哈希h=hash(x),他的支出密鑰是對應的解密密鑰加上x。要創建一個隱身地址,Alice生成一個值c,并將Bob可讀的c加密作為她的臨時公鑰發布。該地址本身是一個ERC-4337帳戶,其代碼通過要求交易提供零知識證明來驗證交易,證明值x和c的所有權,使得k=hash(hash(x),c)。知道x和c,Bob就可以自己重建地址及代碼。
(c)的加密不會告訴除Bob之外的其他任何人任何信息,并且(k)是一個哈希,它幾乎不會透露有關c?的任何事情。錢包代碼本身只包含(k),(c)私有意味著(k)無法追溯到(h)。
然而,這需要一個STARK。最終,我認為后量子以太坊世界很可能會涉及使用許多STARK的應用,因此我提倡像此處描述的聚合協議將所有這些STARK組合成一個遞歸STARK以節省空間。
隱身地址和社交恢復以及多L2錢包
很長一段時間以來,我一直很感興趣社交恢復錢包,社交恢復錢包具有多重簽名機制,其密鑰能在機構、你的其他設備和朋友的某種組合之間共享。如若你丟失主要密鑰,絕大多數密鑰允許恢復賬戶訪問。
然而,社交恢復錢包不能很好地與隱身地址結合:如果你必須恢復你的賬戶,你還必須執行一些步驟來改變你的N個隱身錢包的賬戶驗證邏輯,這將需要N筆交易,以高昂的費用、便利性和隱私成本為代價。
社交恢復和多個L2協議的相互作用也存在類似的擔憂:如果你在Optimism、Arbitrum、StarkNet、Scroll、Polygon上有賬戶,出于擴展原因有十幾個并行實例,并且您在每個實例上都有一個帳戶,那么更改密鑰可能是一個非常復雜的操作。
更改多條鏈中多個帳戶的密鑰是一項巨大的工作。
也許你可以使用一些自動化軟件在兩周的時間跨度內以隨機間隔將資產轉移到新的隱身地址,以降低基于時間的關聯的有效性。但這遠非完美。另一種方法是在監護人之間秘密共享根密鑰,而不是使用智能合約恢復。但是,這會消除停用監護人幫助恢復您帳戶的權力的能力,因此存在長期風險。
一種更復雜的方法涉及零知識證明。這允許許多帳戶,甚至跨越許多L2協議,在某處由單個k值控制,其中更改該值足以更改所有帳戶的所有權,所有這些都不會泄你的多個帳戶之間的聯系。
結論
當前基本的隱身地址可以快速實施,并且可以顯著提高以太坊上用戶的隱私。我認為出于其他與隱私相關的原因,錢包應該開始轉向更原生的多地址模型。
然而,隱身地址確實會帶來一些長期的可用性問題,例如社交恢復的困難。從長遠來看,這些問題是可以解決的,不過隱身地址生態系統看起來確實嚴重依賴于零知識證明。
數字資產交易平臺BitMart宣布與數字資產托管平臺Cobo達成合作,將接入Cobo即將發布的交易所場外托管與結算網絡SuperLoop,使BitMart機構用戶能夠在其平臺交易的同時.
1900/1/1 0:00:00電影訂閱服務MoviePass完成種子輪融資,AnimocaBrands領投,ClaritasCapital、EmeraldPlus、Gaingels、HarlemCapital、PKOVC和S.
1900/1/1 0:00:00美國聯邦調查局周一證實,LazarusGroup和APT38是去年6月對HarmonyHorizo??n跨鏈橋?1億美元盜竊案的幕后黑手,且正通過RAILGUN隱私協議洗錢.
1900/1/1 0:00:00天橋資本創始人AnthonyScaramucci表示,將用自己的錢投資FTXUS前總裁BrettHarrison成立的加密貨幣公司.
1900/1/1 0:00:00元宇宙區塊鏈網絡Lamina1首席技術官WillCarter??宣布測試網已上線。第一階段測試網對公眾全部開放,可以測試基于Avalanche代碼庫的Lamina1區塊鏈平臺的基本功能.
1900/1/1 0:00:00作者:Moledao Moledao和OGBC聯合舉辦的Web3系列課終于在2023年1月16日正式開始啦!第一周為Web3基建之周,內容涵蓋了區塊鏈基礎,以太坊和Layer2,Layer0.
1900/1/1 0:00:00