作者:Vitalik;翻譯:金色財經0x25
一種未被充分討論但非常重要的以太坊維護其安全性和去中心化的方式是其多客戶端理念。以太坊有意沒有默認每個人都運行“參考客戶端”:相反,有一個協作管理的規范并且有多個團隊實現規范,這些客戶端客戶端由用戶實際運行。
每個以太坊節點運行一個共識客戶端和一個執行客戶端。截至今天,沒有共識或執行客戶端占網絡的2/3以上。如果在其類別中份額低于1/3的客戶端出現錯誤,則網絡將照常運行。如果在其類別中占有1/3到2/3份額的客戶端出現錯誤,鏈將繼續添加區塊,但它會停止最終確定區塊,從而為開發人員提供時間進行干預。
以太坊驗證方式的一個未被充分討論但非常重要的即將到來的重大轉變是ZK-EVM的興起。證明EVM執行的SNARK已經開發多年,該技術正被稱為ZKrollups的2層協議積極使用。其中一些ZKRollups已經在主網激活,很快就會有更多。但從長遠來看,ZK-EVM不僅僅用于Rollup;我們也想使用它們來驗證1層的執行情況。
一旦發生這種情況,ZK-EVM實際上成為第三種類型的以太坊客戶端,對網絡安全的重要性與當今的執行客戶端和共識客戶端一樣重要。這自然會提出一個問題:ZK-EVM將如何與多客戶端交互?困難的部分之一已經完成:我們已經有多個正在積極開發的ZK-EVM實現。但其他困難的部分仍然存在:我們如何真正為ZK證明以太坊區塊的正確性創建一個“多客戶端”生態系統?這個問題提出了一些有趣的技術挑戰——當然還有權衡是否值得的迫在眉睫的問題。
以太坊多客戶端理念的最初動機是什么?
Vitalik Buterin:賬戶抽象可為以太坊帶來數十億美元的收益:金色財經報道,最近在巴黎舉行的以太坊社區會議(EthCC)上的一次演講中,以太坊創始人Vitalik Buterin詳細介紹了賬戶抽象升級如何讓用戶用用于交易的代幣支付Gas費,從而吸引數十億人使用以太坊。帳戶抽象使用戶能夠從外部擁有的錢包(EOA)切換到基于智能合約的錢包。如果此次升級成功,錢包管理將比現在更加高效和輕松。Buterin和社區相信,這可以使加密技術得到廣泛采用。
此外,加密貨幣領域充斥著丟失助記詞或助記詞被盜的用戶。通過賬戶抽象,用戶可以創建充當可編程智能合約的非托管錢包。據報道,錢包恢復只是此次新升級帶來的眾多功能之一。Buterin相信此次升級可以給以太坊帶來數十億美元的收益。[2023/7/20 11:05:50]
以太坊的多客戶端哲學是一種去中心化,就像一般的去中心化一樣,人們可以關注架構去中心化的技術收益或去中心化的社會收益。最終,多客戶理念受到雙方的推動并為雙方服務。
技術去中心化
技術去中心化的主要好處很簡單:它降低了一個軟件中的一個錯誤導致整個網絡災難性崩潰的風險。例證這種風險的歷史情況是2010年的比特幣溢出漏洞。當時,比特幣客戶端代碼沒有檢查交易輸出的總和是否溢出(通過總和超過最大整數回繞到零),所以有人做了一筆交易,給了自己數十億枚比特幣。該漏洞在數小時內被發現,并迅速修復并在整個網絡中快速部署,但如果當時有一個成熟的生態系統,這些代幣就會被交易所、橋和其他構造所接受,攻擊者可能已經帶走了很多錢。如果有五個不同的比特幣客戶,他們不太可能都有相同的錯誤,因此會立即出現分叉,而分叉中有錯誤的一方可能會輸掉。
使用多客戶端方法來最小化災難性錯誤的風險需要權衡:相反,你會遇到共識失敗錯誤。也就是說,如果你有兩個客戶端,則存在客戶端對某些協議規則有細微不同解釋的風險,雖然兩種解釋都是合理的并且不允許偷錢,但分歧會導致鏈分叉成兩個。這種類型的嚴重分叉在以太坊的歷史上發生過一次。單一客戶端方法的捍衛者將共識失敗作為不具有多個實現的原因:如果只有一個客戶端,則該客戶端不會不同意自己。他們關于客戶數量如何轉化為風險的模型可能如下所示:
Terra Classic獨立開發團隊TerraCVita完成100萬美元融資:1月10日消息,Terra Classic獨立開發團隊TerraCVita宣布完成100萬美元融資,投資者未知。本輪融資旨在推動旗下去中心化金融項目Terraport發展,該項目計劃推出一個社區去中心化交易平臺Terra Community DEX,預計將在2023年一季度上線。[2023/1/10 11:04:30]
我當然不同意這種分析。我不同意的地方在于(i)2010年風格的災難性錯誤也很重要,并且(ii)你實際上永遠不會只有一個客戶端。后一點在2013年的比特幣分叉中表現得最為明顯:由于兩個不同版本的比特幣客戶端之間存在分歧而發生了鏈分叉,其中一個版本意外地限制了可以使用的對象數量,但未記錄在案。在單個區塊中進行修改。因此,理論上一個客戶端在實踐中通常是兩個客戶端,理論上五個客戶端在實踐中可能是六個或七個客戶端。所以我們應該面對冒險并走在風險曲線的右側,并且至少有幾個不同的客戶端。
去中心化
壟斷的客戶端的開發人員處于擁有大量權力的位置。如果客戶端開發人員提出更改,而用戶不同意,理論上他們可以拒絕下載更新版本,或者在沒有它的情況下創建一個分叉,但實際上用戶通常很難做到這一點。如果不愉快的協議更改與必要的安全更新捆綁在一起怎么辦?如果主要團隊威脅說如果他們不按他們的方式行事就退出怎么辦?或者,更溫和地說,如果壟斷的客戶端團隊最終成為唯一擁有最強大協議專業知識的群體,而使生態系統的其他部分處于不利地位,無法判斷客戶端團隊提出的技術論點,從而使客戶端團隊面臨有很大的空間來推動他們自己的特定目標和價值觀,這可能與更廣泛的社區不匹配?
Vitalik Buterin(V神)突然現身基輔科技峰會:金色財經報道,以太坊聯合創始人Vitalik Buterin(V神)突然現身基輔科技峰會,Buterin 在基輔現身特別值得注意,因為目前距離以太坊備受期待的合并只有幾天的時間。作為峰會閉幕發言人之一,Buterin表示區塊鏈、以太坊、加密世界中的很多人在關心和支持烏克蘭,其他峰會發言人包括Binance烏克蘭總經理 Kiril Khomiakov、NEAR Protocol 聯合創始人Illia Polosukhin和烏克蘭創業基金董事 Pavlo Kartashov。(coindesk)[2022/9/11 13:22:08]
對協議的擔憂,特別是在2013-14比特幣OP_RETURN戰爭的背景下,一些參與者公開支持分叉鏈的特定用途,是以太坊早期采用多客戶端哲學的重要促成因素,這旨在讓一小部分人更難做出此類決定。以太坊生態系統特有的擔憂——即避免權力集中在以太坊基金會內部——為這一方向提供了進一步的支持。2018年,基金會決定有意不實施以太坊PoS協議,將該任務完全留給外部團隊。
未來ZK-EVM將如何進入1層?
如今,ZK-EVM用于Rollup。這通過允許僅在鏈下發生幾次昂貴的EVM執行來增加擴展性,而其他人只需驗證鏈上發布的SNARKs即可證明EVM執行計算是否正確。它還允許一些數據不包含在鏈上,從而節省gas成本。這給了我們很多可擴展性的好處,可擴展計算與ZK-EVM和可擴展數據與數據可用性采樣的結合可以讓我們擴展得更遠。
然而,今天的以太坊網絡也有一個不同的問題,一個再多的layer2擴容也無法自行解決的問題:layer1難以驗證,以至于沒有多少用戶運行自己的節點。相反,大多數用戶只是信任第三方提供商。Helios和Succinct等輕客戶端正在采取措施解決該問題,但輕客戶端遠非完全驗證節點:輕客戶端僅驗證稱為同步委員會的隨機驗證者子集的簽名,而不會驗證該鏈實際上遵循協議規則。為了讓我們進入一個用戶可以實際驗證鏈是否遵守規則的世界,我們必須做一些不同的事情。
Vitalik Buterin:開發人員還不知道“Merge + surge + verge + purge + splurge”的執行順序:金色財經報道,以太坊聯合創始人“V神” Vitalik Buterin 今日在社交媒體上發文稱“Merge + surge + verge + purge + splurge”不是5個階段,而是會并行發生。在回應加密社區質疑“合并后不會立即發生所有事情”的問題時,Vitalik Buterin 進一步解釋說,這一切都是同時發生,實際的部署會在單獨的硬分叉進行,但是不同的團隊正在并行完成工作,在某些情況下,開發人員甚至還不知道事情的執行順序。[2022/7/26 2:38:57]
選項1:限制1層,強制幾乎所有活動移動到2層
隨著時間的推移,我們可以將1層每個區塊的gas目標從1500萬減少到100萬,足以讓一個區塊包含一個SNARK和一些存款和取款操作,但其他的不多,從而強制幾乎所有用戶活動移動到2層協議。這樣的設計仍然可以支持在每個區塊中提交許多Rollup:我們可以使用由定制構建者運行的鏈下聚合協議來從多個2層協議收集SNARK,并將它們組合成一個SNARK。在這樣的世界中,1層的唯一功能是成為2層協議的交換所,驗證它們的證據并偶爾促進它們之間的大額資金轉移。
這種方法可能有效,但它有幾個重要的弱點:
它實際上是向后不兼容的,因為許多現有的基于L1的應用程序在經濟上變得不可行。高達數百或數千美元的用戶資金可能會陷入困境,因為費用變得如此之高,以至于超過了清空這些賬戶的成本。這可以通過讓用戶簽署消息以選擇協議內大規模遷移到他們選擇的L2來解決,但這增加了過渡的復雜性,這需要1層的某種SNARK真正足夠便宜。當涉及到SELFDESTRUCT操作碼之類的東西時,我通常喜歡打破向后兼容性,但在這種情況下,權衡似乎不太有利。
Vitalik發起EIP-3298提案 gas費回歸正常:2月28日消息,Vitalik在昨天發起EIP 3298提案,提案內容為在倫敦升級中移除“執行SELFDESTRUCT獲得gas費減少獎勵”的規則。
據悉,以太坊網絡的gas費受以太坊狀態(節點存儲的合約和地址信息集合)大小的影響,以太坊狀態越膨脹,全網gas就會相應上漲。而“SELFDESTRUCT(自毀)”是虛擬機級別的操作碼,通過執行該操作碼銷毀合約,以太坊虛擬機會向用戶退回一部分gas費,從而激勵以太坊狀態收縮。但是一部分開發者在gas費較低時將gas存儲到合約中,在gas費較高時執行“SELFDESTRUCT”來進行套利,這種事先填充“便宜的gas”的行為其實導致了網絡膨脹。Vitalik發起該提案后,以太坊gas已經回到幾十Gwei水平。[2021/2/28 18:00:26]
它可能仍然無法使驗證變得足夠便宜。理想情況下,以太坊協議應該不僅在筆記本電腦上而且在手機、瀏覽器擴展程序甚至其他鏈中都應該易于驗證。第一次同步鏈的時候,或者長時間離線后,應該也很容易。筆記本電腦節點可以在大約20毫秒內驗證100萬gas,但即使這樣也意味著在離線一天后需要54秒進行同步,而對于手機或瀏覽器擴展,則需要每個區塊幾百毫秒,并且可能仍然是不可忽略的電池消耗。這些數字是可控的,但并不理想。
即使在L2優先的生態系統中,L1至少在某種程度上可以負擔得起也是有好處的。如果用戶在注意到新的狀態數據不再可用時可以提取資金,Validiums可以從更強大的安全模型中受益。如果經濟上可行的跨L2直接轉移的最小規模較小,套利將變得更加有效,尤其是對于較小的代幣。
因此,嘗試找到一種使用ZK-SNARKs來驗證1層本身的方法似乎更合理。
選項2:SNARK驗證第1層
類型1ZK-EVM可用于驗證以太坊區塊的EVM執行。我們可以編寫更多的SNARK代碼來驗證區塊的共識方面。這將是一個具有挑戰性的工程問題:今天,ZK-EVM需要幾分鐘到幾小時來驗證以太坊區塊,并且實時生成證明需要一個或多個改進以太坊本身以刪除對SNARK不友好的組件,)要么通過專門的硬件獲得巨大的效率提升,要么(iii)通過更多的并行化改進架構。然而,沒有根本的技術原因不能做到這一點——所以我希望,即使需要很多年,它也會完成。
這是我們看到與多客戶端范式交集的地方:如果我們使用ZK-EVM來驗證1層,我們使用哪個ZK-EVM?
我看到三個選項:
1、單一ZK-EVM:放棄多客戶端范式,并選擇我們用來驗證區塊的單一ZK-EVM。
2、ClosedmultiZK-EVM:就一組特定的多個ZK-EVM達成一致并達成共識,并有一個共識層協議規則,即一個區塊需要來自該集合中超過一半的ZK-EVM的證明才能被認為是有效的.
3、OpenmultiZK-EVM:不同的客戶端有不同的ZK-EVM實現,每個客戶端在接受一個區塊為有效之前等待與自己的實現兼容的證明。
對我來說,似乎是理想的,至少直到并且除非我們的技術改進到我們可以正式證明所有ZK-EVM實現彼此等效的程度,此時我們可以選擇最重要的一個高效的。(1)會犧牲多客戶端范式的好處,并且(2)會關閉開發新客戶端的可能性并導致更加中心化的生態系統。(3)有挑戰,但這些挑戰似乎比其他兩個選項的挑戰要小,至少目前是這樣。
實施(3)不會太難:每個類型的證明可能都有一個p2p子網絡,使用一種類型證明的客戶端將監聽相應的子網絡并等待直到他們收到證明他們的證明驗證者認為有效。
(3)的兩個主要挑戰可能如下:
延遲挑戰:惡意攻擊者可能會延遲發布一個區塊,以及對一個客戶端有效的證明。生成對其他客戶有效的證明實際上需要很長時間。這段時間足夠長,可能會創建一個臨時分叉并中斷幾個插槽的鏈。
數據效率低下:ZK-SNARKs的一個好處是可以從區塊中刪除僅與驗證相關的數據。例如,一旦你驗證了一個簽名,你就不需要將簽名保存在一個區塊中,你可以只存儲一個表示簽名有效的bit,以及區塊中確認所有簽名有效的單個證明。但是,如果我們希望能夠為一個區塊生成多種類型的證明,則需要實際發布原始簽名。
在設計單slot最終確定性協議時要小心,可以解決延遲挑戰。單slot最終確定性協議可能需要每個slot超過兩輪的共識,因此可能需要第一輪包含區塊,并且只需要節點在第三輪簽署之前驗證證明。這確保了在發布區塊的截止日期和預計證明可用的時間之間始終有一個重要的時間窗口可用。
數據效率問題必須通過單獨的協議來聚合與驗證相關的數據來解決。對于簽名,我們可以使用ERC-4337已經支持的BLS聚合。另一大類與驗證相關的數據是用于隱私的ZK-SNARKs。幸運的是,這些往往有自己的聚合協議。
還值得一提的是,SNARK驗證1層有一個重要的好處:鏈上EVM執行不再需要由每個節點驗證這一事實使得可以大大增加發生的EVM執行量。這可以通過大幅增加1層gas限制或引入enshrinedrollups或兩者兼而有之。
結論
使一個開放的多客戶端ZK-EVM生態系統運行良好需要大量的工作。但真正的好消息是,這項工作的大部分正在發生或無論如何都會發生:
我們已經有多個強大的ZK-EVM實現。這些實現還不是類型1,但其中許多正在積極朝著這個方向發展。
在Helios和Succinct等輕客戶端上的工作最終可能會變成對以太坊鏈的PoS共識端進行更全面的SNARK驗證。
客戶端可能會開始嘗試使用ZK-EVM來證明自己的以太坊區塊執行,特別是當我們有無狀態客戶端并且沒有技術需要直接重新執行每個區塊來維護狀態時。我們可能會從客戶端通過重新執行它們來驗證以太坊區塊,過渡到大多數客戶端通過檢查SNARK證明來驗證以太坊區塊。
●ERC-4337和PBS生態系統可能會很快開始使用BLS和證明聚合等聚合技術,以節省gas成本。在BLS聚合上,工作已經開始。
有了這些技術,未來看起來非常美好。以太坊區塊會比今天更小,任何人都可以在他們的筆記本電腦甚至他們的手機或瀏覽器擴展程序中運行一個完全驗證的節點,這一切都會發生,同時保留以太坊多客戶端理念的好處。
從長遠來看,當然任何事情都有可能發生。也許AI會加強形式驗證,使其可以輕松證明ZK-EVM實現等效并識別導致它們之間差異的所有錯誤。這樣的項目甚至可能是現在就開始著手的實用項目。如果這種基于形式驗證的方法取得成功,則需要建立不同的機制以確保該議的去中心化持續進行;也許到那時,協議將被視為“完整的”,不變性規范將更加強大。但即使這是更長遠的未來,開放的多客戶端ZK-EVM世界似乎也是天然的下一步,無論如何都有可能發生。
從短期來看,這仍然是一段漫長的旅程。ZK-EVM就在這里,但ZK-EVM在1層真正可行將需要它們成為類型1,并使證明足夠快以使其可以實時發生。有了足夠的并行化,這是可行的,但要實現這一點仍然需要做很多工作。共識變化,如提高KECCAK、SHA256和其他哈希函數預編譯的gas成本,也將是未來圖像的重要組成部分。也就是說,過渡的第一步可能比我們預期的要早:一旦我們切換到Verkle樹和無狀態客戶端,客戶端就可以開始逐漸使用ZK-EVM,并且到“開放的多ZK-EVM”世界的過渡可以自行發生。
特別感謝JustinDrake的反饋和審閱
在這場潛在的硬分叉風險中,可以做的最簡單的事情就是在合并前以安全的方式持有更多的以太坊。隨著合并的不斷推進,以太坊硬分叉的傳言也被討論的愈演愈烈.
1900/1/1 0:00:00文/OXjim,譯/金色財經xiaozou 我們之前探討過未來將出現數百萬個區塊鏈的景象——其中一些是通用鏈,但絕大多數區塊鏈將是特定應用鏈.
1900/1/1 0:00:002023年7月24日,OpenAI首席執行官、Worldcoin聯合創始人SamAltman在推特宣布,Worldcoin項目正式上線.
1900/1/1 0:00:00Algorand是由圖靈獎得主、密碼學先驅SilvioMicali教授創建的區塊鏈科技公司。作為純粹的權益證明機制、無需許可、即時交易、沒有分叉的明星公鏈,自2019年6月主網上線以來,設計簡潔.
1900/1/1 0:00:00自從非同質化代幣的市場數據在2021年登上新聞之后,許多Web3的熱愛者和技術專家發布了專門的NFT帖子和文章,解釋NFT的定義及其工作原理.
1900/1/1 0:00:00文/MartinLee,Nansen;譯/金色財經xiaozou區塊鏈在現實世界中的使用越來越廣泛,區塊鏈分析的重要性也隨之增加.
1900/1/1 0:00:00