原文標題:《zkEVMs:TheFutureofEthereumScalability》
作者:ChristineKim
編譯:aididiaojp.eth、0x11,ForesightNews
簡介
零知識以太坊虛擬機zkEVM是一項備受關注且可能改變游戲規則的技術,它可在短期和長期內提高以太坊的可擴展性。今年三個主要的以太坊擴容項目zkSync、Polygon和Scroll都各自宣布了其zkEVM實施的重大進展,其中許多項目已在今年的早期啟動alpha階段,如今已作為L2區塊鏈獨立運行。隨著時間的推移,zkEVM有可能直接在以太坊的基礎層運行。
zkEVM是可以執行與以太坊虛擬機(EVM)相同的高級編程語言或低級字節碼的虛擬機,并使用零知識證明ZKP證明此代碼,另外加密證明可在不泄露的情況下驗證有關數據本身的任何信息,例如其屬性或內容。早在1982年,計算機科學家Goldwasser、Micali和Rackoff首次引入ZKP概念。
ZKP經常與密碼學的另一個分支同態加密混淆。同態加密允許對加密數據執行操作而無需解密數據,由Rivest、Adleman和Dertouzos于1978年首次提出,并已成為實現云計算和存儲的關鍵技術之一。值得注意的是,同態加密也被用于一些公共區塊鏈協議利用,如隱私幣Grin用它來混淆交易金額。
在過去的40年里,計算機科學家發明了多種算法來安全高效地生成ZKP,其中許多算法屬于兩大類:可擴展的透明知識論證(STARKs)或簡潔的非交互式知識論證(SNARKs)。這些算法是為大范圍用例開發的,包括核裁軍、身份認證系統,以及最近可擴展的公共區塊鏈和加密貨幣。
特別是在以太坊上,許多開發人員認為ZKP是擴展的「圣杯」,因為與其他加密方案相比,ZKP具有簡潔和易于驗證的特點。難以構建或破解但易于驗證是密碼協議開發人員的共同目標,因為這樣它就可以被廣泛而有效地使用。
零知識系統很難被推廣和應用于證明任意復雜性的代碼,構建ZKP以本地支持和證明以太坊區塊鏈上所有類型的交易活動一直是開發人員在過去幾年中進行的一項持續研究計劃。直到2021年11月,Starkware才推出了第一個用于證明基于以太坊交易的通用ZK系統,這是通過Starkware團隊創建的自定義編程語言Cairo實現的。然而在2022年7月,三種不同基于以太坊的L2協議包括zkSync、Polygon和Scroll宣布在利用ZKP以zkEVM的形式擴展以太坊方面取得了突破。
注意:雖然通俗地稱為zkEVM,但這些虛擬機并沒有利用ZKP的隱私優勢,而是完全受益于ZKP的安全和效率優勢。因此,這些類型的虛擬機更準確的名稱是有效性證明生成EVM,但在本報告中,它們將使用更流行的名稱zkEVM。
本報告旨在讓讀者熟悉zkEVM的一般概念,并了解其在以太坊開發中的各種實現方式。由于zkEVM是一個比較抽象的主題,本報告首先簡要概述以太坊網絡的現狀,并通過介紹區塊生產、EVM和Rullups等核心概念為理解zkEVM奠定基礎。然后,我們將總結以太坊上可以存在的不同類型的zkEVM,并比較目前生產中的5種主要zkEVM實現。我們將重點介紹這項新興技術在實施中面臨的挑戰,以及我們對zkEVM隨時間推移的競爭格局的展望。總體而言,zkEVM仍處于以太坊開發和采用的早期階段。
今天的以太坊
在深入研究zkEVM的復雜性之前,首先要從高層次理解交易是如何包含在以太坊區塊中的。
區塊產生
當用戶向以太坊提交新交易時,連接到網絡的計算機將交易存儲在稱為內存池的本地數據結構中。內存池負責維護未確認交易的列表,然后隨機選擇運行節點和抵押32ETH的驗證者,通過它們將內存池中的交易批量處理成塊。選擇將新區塊添加到以太坊區塊鏈的驗證者有時被稱為「提議者」。為了從最大可提取價值MEV中獲得額外獎勵,一些提議者在構建區塊時將依賴第三方區塊構建器而不是本地內存池。
區塊按順序排列,并通過父塊鏈接在一起。每個區塊都包含其父塊的哈希值,并通過將區塊鏈接在一起形成區塊鏈數據結構。通過父塊哈希鏈接塊如下圖所示:
在2022年9月15日之前,以太坊依賴工作量證明PoW共識機制,礦工代替驗證者負責區塊生產,礦工無需抵押大量資本,而是需要消耗大量電力來處理用戶交易。
在PoW和PoS共識協議下,以太坊區塊鏈缺乏可擴展性的根源在于有限的區塊空間。區塊空間在以太坊上以Gas為限制單位。需要更多計算工作才能執行的交易通常以較高的Gas單位定價,而具有較低計算成本的交易具有較低的Gas成本。Gas通過以太坊網絡自動設置稱為基本費用的動態Gas費率轉換為ETH。以太坊協議限制了區塊空間,它們最多只能包含3000萬單位的Gas。這個最大區塊gas限制確保了快速的區塊傳播時間并降低了硬分叉的風險。
聲音 | 以太坊開發者:可能還需很多年才能全面推出以太坊2.0:金色財經報道,根據最近的一篇官方博客文章,可能還需要很多年才能全面推出以太坊2.0,至少還需3-5年。以太坊開發者表示,實現以太坊 2.0還有很長的路要走。該團隊目前正專注于對Ethereum 1.x進行更多的增量升級,相關研究正在被分解成更小的更新,以確保原鏈在這個過渡時期仍然可操作。這篇文章寫道,現在的任務是“在升級到ETH 2.0之前,將原鏈的壽命至少再延長3-5年。”這種“延遲”的原因是多方面的,而且很復雜。此前有報道稱,以太坊2.0的“零階段”將于2020年第一季度推出。[2019/12/14]
以太坊虛擬機
一旦交易被包含在以太坊上的一個區塊中,它們就會通過稱為以太坊虛擬機(EVM)的自定義運行環境執行。EVM旨在在以太坊上部署任意復雜度的代碼,這是使以太坊成為通用區塊鏈的根本,有時也稱為圖靈完備系統。
EVM執行交易的方式存在一定規則。首先,EVM將人類可讀的編程語言編譯為面向機器或「低級」語言,稱為EVM字節碼。然后,EVM將字節碼解析為稱為「操作碼」的順序指令列表。每個操作碼命令EVM執行不同的任務,并以十六進制形式在EVM字節碼中表示。例如,在鏈上執行智能合約時命令EVM保留瞬態數據的操作碼以助記符表示為「MSTORE」,或以十六進制形式表示為「0x52」。為了幫助讀者概念化操作碼,以下是以太坊黃皮書中定義的簡單操作碼:
多年來,以太坊開發人員向EVM不斷添加新的操作碼,他們還添加了預編譯,使用戶能夠在網絡上執行更高級的操作,例如哈希函數和標量乘法。作為同類中的第一個運行環境,EVM已被廣泛用作通用公共區塊鏈上智能合約部署的標準。然而,作為同類技術中的第一項,EVM確實存在設計限制,其中與本報告最相關的是EVM缺乏與ZKP的兼容性。
Rollups
為了提高以太坊的可擴展性,有一些L2網絡將交易執行從基礎層抽象到Rollups。Rollups壓縮交易數據,使得將一批交易提交到基礎層所需的區塊空間量明顯低于通過鏈上的內存池單獨確認這些交易所需要的區塊空間。Rollups由被稱為「排序器」的網絡運營商運營,而不是驗證者或礦工。排序器負責驗證Rollups的狀態轉換。它們是將用戶交易打包成一個Rollups批次,然后將這批交易的證明提交給以太坊基礎層的實體。下圖說明了排序器在Rollups中的作用:
Rollups?不同于以太坊上的其他擴展解決方案,例如Plasma和狀態通道。在以太坊的歷史進程中,核心開發人員已經研究并廢棄了以太坊的可擴展性路線圖。Rollups?有兩種主要類型:OptimisticRollups和ZK?Rollups。OptimisticRollups依賴于欺詐證明,這意味著L2網絡狀態的更改會在沒有直接證明其有效性的情況下部署到以太坊。只要至少有一個誠實參與者在觀察OptimisticRollup的狀態轉換,就可以檢測并取消無效的狀態轉換。就Arbitrum和Optimism而言,可以提交欺詐證明的「挑戰窗口」持續一周。一旦挑戰窗口結束,optimisticRollup的狀態轉換就被認為是最終的和有效的。
另一方面,ZKRollups依賴于ZKP,每次在L2上處理交易批次時,ZKP都會生成有效性證明,并發布到以太坊。自動生成所有交易批次的有效性證明同時也增加了ZKRollup的安全保障。這也意味著每次向以太坊提交新的有效性證明時都可以從ZKRollups中提取資金,而對于optimisticRollups來說,為了允許爭議和欺詐證明的生成,通常需要大約7天的等待期。ZKRollups還提供了比optimisticRollups更好用的數據壓縮功能。下表總結了optimistic和ZKRollup之間的差異:
OptimisticRollup相對于ZKRollups的主要優勢是OptimisticRollup的虛擬機與EVM的虛擬機幾乎相同。目前在以太坊上運行的OptimisticRollup實現,如Optimism和Arbitrum,模擬了與以太坊相同的交易執行環境,分別稱為OVM和AVM。大多數ZKRollups都是為某些應用程序特定的,這意味著它們不支持所有類型的基于以太坊的交易和DApp。Loopring、StarkExRollups和zkSync1.0是特定應用程序ZKRollups的示例,它們支持特定類型的支付、代幣交易和NFT鑄幣。
StarkNet等某些ZKRollups是通用的,這意味著它們支持所有類型的交易和DApp。然而,這些ZKRollup要求DApp開發人員學習如何在新的自定義執行環境中執行他們的智能合約代碼,通常該環境針對生成ZKP而優化,而不是EVM兼容性。鑒于現有的去中心化應用程序和用戶難以加入新的執行環境,這對在以太坊上采用ZKRollups提出了挑戰。為了克服這個問題,PolygonHermez、zkSync和Scroll等ZKRollups項目正在致力于實現與EVM兼容的ZKRollups,另外,EVM是以太坊上所有智能合約代碼的原生執行環境。
動態 | 福州市晉安區將引進發展區塊鏈產業 全面實施數字經濟領跑行動:據福州日報消息,近日,福州市晉安區召開部署會。會議指出,晉安區正全面實施數字經濟領跑行動,積極創建國家數字示范區,打造顯示器件、光電芯片、物聯網、大數據、軟件信息五大產業基地,加快福州軟件園晉安分園建設,引進發展區塊鏈產業,力爭到2020年數字經濟規模占GDP比重達45%以上,規模和增速躋身全市第一方陣。[2019/6/13]
STARKs、SNARKs、VolitionsandValidiums
在實踐中,Rollups不僅根據鏈上發布的證明類型進行區分,還根據Rollups的數據可用性策略和證明算法進行區分。
目前存在兩大類有效性證明,稱為SNARKs和STARKs。
SNARKs依靠橢圓曲線密碼學,一種在比特幣和以太坊中最常用的數據加密技術。SNARKs通常還依賴于可信設置,這意味著該算法需要由可信實體提前生成一段數據。可信設置并不是重復的事件,而是一個人或一群人生成核心數據的一次性過程。此數據稱為公共參考字符串(CRS),它是一個在zk-SNARK算法中用于生成可信賴的證明的數值。如果生成CRS所需的輸入受到損害,那么可能會導致錯誤的證明生成。因此,重要的是所有可信設置參與者需銷毀用于生成CRS/SRS的輸入,或者在儀式完成后使其無法恢復。
STARKs不依賴于橢圓曲線或可信設置。STARKs依賴哈希函數,一些開發人員認為哈希函數有利于對抗量子加密。然而,STARKs更復雜,它需要更多的計算資源才能運行。它在2018年被推出,晚于SNARKs,而SNARKs自2012年以來一直存在。由于這些原因,SNARKs比STARKs被更廣泛地使用。基于STARKs的算法的一些示例包括Fractal、SuperSonic、Fri-STARKs和genSTARK。
除了生成有效性證明的不同方法外,ZKRollups的數據可用性策略也不同。數據可用性策略將決定交易批次的哪些組件最終發布在鏈上。Rollups,包括Optimistic和ZK,通常在每次處理一批交易時將三份數據提交到主網以太坊。首先,Rollups的驗證者將新網絡狀態的根哈希提交給以太坊。狀態記錄在一個Merkle樹數據結構中,如下圖:
根哈希是整個Merkle樹的密碼承諾,有時也稱為狀態承諾。雖然并不要求所有ZKRollup都將根哈希提交給以太坊,但為了使發布在以太坊上的數據能夠輕松重建和驗證在Rollup上執行的交易,他們通常會這么做。
除了用于確認L2區塊鏈新狀態的高級根哈希之外,以太坊上還記錄了加密證明。在如果是OptimisticRollup的情況下,此證明可以是ZKP或欺詐證明。它可以通過STARKs或SNARKs算法生成。最后,除了這兩條數據之外,ZKRollups還向以太坊發布了處理交易批次的壓縮版本,也稱為Statedelta。Statedelta是一種將大量交易數據以經濟高效的特點提交到以太坊的方式,這是ZKRollups獨有的。OptimisticRollups是使用其他數據壓縮技術來批量處理事務并將它們提交到鏈上。
此外,某些ZKRollups項目,例如Scroll團隊,實際上并不依賴于將Statedelta發布到以太坊來獲得額外的數據壓縮收益。Scroll開發人員認為即將到來的代碼更改,例如以太坊改進提案EIP-4844和danksharding將顯著降低將交易數據提交給以太坊的成本,這樣Statedelta相對于其他數據壓縮技巧的效率提升可以忽略不計。
Rollups使用來自Merkle樹最低層的數據,并將其與來自Merkle樹最高層的根分布式相結合,能夠允許任何人重建和驗證在鏈上提交的交易批次的內容。大多數Rollups的一個決定性特征是能夠使用鏈上提交給以太坊的數據重新創建在L2網絡上執行的交易。然而,某些Rollups避免將Statedelta或其他壓縮交易數據提交給以太坊,而是將數據發布到其他地方以降低運營成本并提高網絡可擴展性。某些開發人員會爭辯說,避免將交易數據提交給以太坊并因此破壞交易重建保證的L2網絡不應歸類為Rollups。
Rollup處理Statedelta的方式決定了網絡是可以歸類為Validium還是Volition。
Validium可以被理解為Rollups,它僅在鏈上提交有效性證明和根哈希,同時將Statedelta存儲在鏈下的單獨網絡上。因為Rollups不再依賴以太坊的數據可用性和受網絡塊空間的限制,這在理論上可以將Rollups的交易吞吐量提高到9,000TPS。Validiums的缺點是安全性,用于發布鏈下數據的獨立網絡不具有與以太坊相同的安全保證。
Volitions是將在鏈下或鏈上發布Statedelta的決定留給用戶,由以太坊擴展初創公司Starkware開創。這是一種新穎的方式,通過直接在鏈上向以太坊或Starkware可信數據可用性委員會(DAC)等鏈下網絡確認,讓用戶決定他們的交易是否需要增強的安全性,但成本可能更高。
動態 | 湖南湘潭市將推進區塊鏈等現代信息技術與農業全面融合:據湖南省人民政府官網,今明兩年,湘潭市將全力推進互聯網、物聯網、區塊鏈、人工智能、3S技術等現代信息技術與農業生產、經營、管理、服務全面融合。適時舉辦數字鄉村發展大會,推動湘潭市數字鄉村發展。[2019/3/12]
EVM等效的4個主要級別
上述內容幫助理解以太坊上交易執行的整體框架、EVM和ZKRollups,現在討論zkEVMs。
zkEVM是一種ZKRollup,它可以模仿與主網以太坊相同的交易執行環境。zkEVM的實現在證明算法和數據可用性策略上有所不同,另外zkEVM的EVM等效級別也不同。EVM等效性有四個主要級別。以下是不同級別的摘要:
語言水平等效
為了實現語言級別的EVM等效性,zkEVM必須能夠理解并本地編譯EVM友好的語言。換句話說,這些類型的zkEVM可以將EVM友好編程語言翻譯成一種為生成ZKP而優化的定制語言。這被認為是在ZK-Rollups中實現EVM兼容性的最簡單和最有效的方法之一。然而,這些類型的zkEVM在為用戶和智能合約開發人員提供與EVM交互相同的體驗方面最受限制。
與EVM的語言級兼容性意味著需要通過編譯器運行Solidity,該編譯器將EVM的高級編程語言翻譯成定制的低級語言,由專為生成ZKP而設計的虛擬機解釋。對于大多數只關心通過Solidity代碼與EVM交互的以太坊用戶和智能合約開發人員來說,zkEVM的底層行為可能并不重要,只要可以通過zkEVM執行與以太坊主網上相同類型的代碼即可。另一方面,為EVM構建的復雜開發工具、框架和測試環境可能需要修改才能在僅具有語言級EVM兼容性的zkEVM上使用。
字節碼級等效
EVM等價的第二個和第三個級別是字節碼級別,這需要ZKRollups才能解釋從更高級語言編譯下來的EVM字節碼。zkEVM可以模仿與EVM相同的高級編程語言和低級字節碼,從而實現與EVM更深層次的兼容性。這些類型的zkEVM構建起來更復雜,需要更高級的工程設計。
虛擬機執行EVM字節碼的方式是通過稱為操作碼的特定指令列表,每個操作碼命令EVM執行不同的任務。字節碼兼容的zkEVM的目標是創建一個ZK系統,該系統可以證明EVM字節碼并解析字節碼包含的各種操作碼。這些類型zkEVM的優勢在于它們與基于EVM的應用程序和工具相互兼容。完全字節碼兼容的zkEVM將能夠支持與基于以太坊的原生應用程序相同的調試工具和開發人員基礎設施。然而,實現完全的字節碼兼容性通常會導致創建低效且昂貴的ZK系統,而降低成本,提高效率是不得不考慮的問題。
目前,有兩種字節碼兼容的zkEVM,包括PolygonzkEVM和ScrollzkEVM。在他們當前的設計中,這兩個僅實現部分兼容EVM字節碼,但是,隨著時間的推移,這些實現正朝著完全兼容的方向努力。
共識水平等效
EVM等價的第四個也是最后一個級別是共識級別。這是ZKRollups可以實現的對EVM的最高原生兼容性。它有時被稱為「enshrinedRollups」,盡管并非所有「enshrinedRollups」都需要基于ZK,也可以是OptimisticRollups。這個想法是由zkEVM生成的加密證明不需要以任何身份在以太坊上重新執行,證明本身可用于驗證主網以太坊上生成的區塊。從某種意義上說,實現共識級別兼容性的zkEVM是zkEVM的最真實形式。
對于一些開發者來說,能夠實現共識級別兼容性的ZKRollups是唯一一種應該稱為zkEVM的ZKRollups,而其他具有語言和字節碼兼容性的ZKRollup應該分別被認為是EVM兼容的和EVM等效的,但不是一個zkEVM。關于zkEVM的精確定義及其不同級別的EVM等價性,以太坊開發人員之間存在大量爭議。
事實上,EVM等效是一個范圍,上面描述的每個層次都不是嚴格的類別。zkEVM開發的早期性質意味著為語言級別兼容性而構建的項目也可能提供某種類型的字節碼級別兼容性,而字節碼級別兼容的zkEVM最終可能會發展成為具有大量共識級別等價性的混合Rollups。
以太坊上的zkEVM項目概覽
目前,還沒有實用性的zkEVM可以實現共識級別的兼容性,開發者仍在不斷的研究和開發,以太坊核心開發人員將其描述為「多年工程努力」。有些zkEVM已經實現在語言和字節碼級別上的等效,為以太坊上當前主要以應用程序為中心的ZKRollupLayer2生態系統提供了改進思路。構建ZKRollup來執行一般的智能合約和用戶交易而不是以應用程序為中心的交易是一項艱巨的任務,到目前為止,只有少數項目在主網上成功啟動。
以下是以太坊上五個zkEVM項目的概述:
聲音 | 北京銀保監局:數字貨幣尚難以全面發揮真正貨幣的功能:據北京晚報3月11日報道,3月11日至3月15日,北京銀保監局組織北京銀行業和保險業開展“3·15”消費者教育宣傳周活動,向首都消費者普及金融知識,通過具體的虛擬貨幣、區塊鏈騙局案例,希望切實提高消費者對金融產品和服務的認知能力,提升消費者風險識別和自我保護能力。
通過具體案例分析,北京銀保監局提示消費者,一是理智看待區塊鏈,切勿盲目相信天花亂墜的承諾。從目前技術發展來看,數字貨幣尚難以全面發揮真正貨幣的功能。上述以“區塊鏈”、“虛擬貨幣”為噱頭的“金融創新”,實際上只是“借新還舊”的龐氏騙局,其資金運轉難以長期維系。廣大消費者要擦亮雙眼,識破這些“金融創新”背后的陷阱,切勿盲目輕信天花亂墜的承諾,以免讓自身財產受到損失。二是樹立正確的投資理念。投資常伴風險,想要高收益必然要承受高風險。廣大消費者要樹立正確的投資理念,不要相信“一夜暴富”的“神話”,要注意學習金融和投資相關知識,客觀評價自身風險承受度,選擇正規投資渠道,實現自己財富保值增值的目標。[2019/3/11]
zkSync2.0
區塊鏈開發團隊MatterLabs成立于2018年12月,2020年6月曾在以太坊上推出了他們自己的ZKRollups協議,稱為zkSync。按總鎖倉價值,zkSync是以太坊上第6大L2網絡,支持有限范圍的智能合約操作,包括ETH、ERC20代幣和原生NFT的低Gas傳輸,以及原子互換和限價訂單。該公司最近通過由AndreessenHorowitz牽頭的B輪融資籌集了5000萬美元,并宣布了一項2億美元的國庫基金,致力于在未來幾年擴展zkSync生態系統。
zkSync2.0是一種語言級兼容的zkEVM,旨在支持所有類型的智能合約操作。zkSync2.0依賴于稱為UltraPLONK的基于SNARKs的證明算法。此外它還依賴于稱為LLVM的開源編譯器基礎架構,通過LLVM可以將Solidity和其他類型的編程語言編譯成zkEVM字節碼。該項目將于2022年10月開始「babyalpha」階段,預計到2022年底將對外部用戶完全開放,但MatterLabs團隊仍未披露zkSync2.0證明生成的全部細節。
由于L2網絡之間的激烈競爭,以及由于Rollup技術的初期階段導致了更大的技術漏洞風險,大多數Rollups項目都在高度保密的情況下運行,并不支持開源。一旦成功啟動,zkSync2.0將是一種可以讓用戶可以選擇將Statedelta從他們的鏈下交易發布到一個稱為zkPorter的單獨協議,而不再需要在鏈上發布到以太坊。該策略理論上會將zkSync2.0的每秒交易吞吐量從2,000TPS提高到超過20,000TPS。
StarkNet
與zkSync一樣,StarkNet是Starkware團隊構建的已經在以太坊上運行的通用ZKRollup。Starknet的交易執行環境稱為StarkNetOS,其原生智能合約編程語言稱為Cairo。與其他ZKRollups相比,Starknet是功能最全面的區塊鏈網絡之一。StarkNet為用戶提供了一個可選的鏈下數據解決方案,以實現比非Volitions類型的Rollups成倍降低的交易費用。StarkNet操作系統依賴于基于STARKs的證明算法。
與zkSync2.0一樣,在StarkNetOS上生成證明的過程不是開源的。與其競爭對手zkSync類似,隨著時間的推移,圍繞證明生成的細節將會逐漸開源,以便任何人都可以通過專用線路連接到網絡。
StarkNet本身不支持與EVM的語言級兼容性,但是以太坊執行層軟件客戶端Nethermind背后的團隊正在積極構建名為Warp的SoliditytoCairo語言編譯器。使用Warp編譯器,StarkNet用戶可以部署基于以太坊的智能合約,而無需再用Cairo重寫代碼。此外,還有一個名為Kakarot的社區驅動項目,用于構建另一個Solidity到Cairo語言的編譯器,以幫助支持StarkNet與EVM的兼容性。
Starkware團隊在7月公布了原生StarkNet代幣和新基金會計劃。在透露初始100億供應量的三分之一將分配給StarkNet核心貢獻者后,代幣的分配方案成為爭議的根源。今年Starkware以80億美元的估值籌集了1億美元。該輪融資由投資公司GreenoaksCapital、Coatue和TigerGlobal領投。
除了StarkNet之外,StarkWare還為用戶提供了一種可定制的區塊鏈可擴展性解決方案,稱為StarkEx。該解決方案利用了基于STARK的ZK新技術。與StarkNet不同,StarkEx是一個以應用程序為中心的ZKRollup。使用StarkEx在以太坊上實現更大可擴展性的一些值得注意的DeFi應用程序包括soRare、Immutable和DeversiFi。
動態 | 菲律賓卡加延經濟特區全面篩查不可靠區塊鏈公司:7月19日消息,近期菲律賓卡加延經濟特區開始進行全面篩查以排除不可靠的區塊鏈公司。菲律賓已經意識到,隨著區塊鏈的發展,許多公司利用這個去中心化的平臺進行不法活動,也帶來了額外的不利因素。當地政府對加密貨幣犯罪和相關法律法規的強硬立場飽受爭議,但最終允許在卡加延經濟區內運營10個區塊鏈和虛擬貨幣有關的公司 。[2018/7/19]
PolygonzkEVM
Polygon團隊構建的zkEVM實現了與EVM的字節碼級別兼容性。Polygon的zkEVM預計將于2023年初的某個時候在以太坊上推出,并且最近已開源,供公眾審查。當然雖然代碼可以公開查看,但不能使用、修改或共享,因為它不是在開源代碼許可下發布的。
Polygon的zkEVM實現依賴于基于SNARKs和STARKs的證明,具體來說,zk-SNARKs用于證明zk-STARKs的正確性,這具有利用與zk-STARK相關的快速證明時間以及生成zk-SNARK所需的相對較輕的計算資源的優勢。關于數據可用性問題,Polygon的zkEVM實現不會立即支持鏈下數據解決方案,然而,Polygon正積極致力于通過開發可用性更高的應用程序。
Polygon成立于2017年,是一家主要專注于以太坊擴展解決方案的公司。它于2020年6月推出了基于權益證明的以太坊側鏈,稱為PolygonPoS。之后,Polygon的產品插件得到了顯著發展,變得更加多樣化。除了zkEVM實現方式之外,Polygon還在積極開發另外兩個ZKRollups實施,即PolygonMiden和PolygonZero。它們是結合了OptimisticRollup和ZKRollup的混合Rollups實施,稱為PolygonNightfall。今年早些時候,Polygon團隊完成了自首次代幣發行以來的第一輪重大融資,并從40家風險投資公司籌集了4.5億美元,由紅杉資本印度領投。
Scroll
Scroll是另一個字節碼級別兼容的zkEVM實現。Scroll由SandyPeng、YeZhang和HaichenShen于2021年創立,2022年宣布為白名單用戶推出他們的pre-alpha版本測試網。值得注意的是,圍繞其zkEVM實現的所有代碼都是公開的,并在開源許可下發布。Scroll將依賴于一種基于SNARKs的證明算法,并且不支持鏈下數據可用性解決方案。
此外,Scroll團隊正在設計一個用于證明生成的去中心化市場,以支持他們的zkEVM。為了無需許可和抗審查的方式生成ZKP,他們還專注于構建可以由世界各地的用戶運行的專用硬件設施。
Scroll團隊與以太坊基金會的擴容解決方案研發團隊密切合作,其被稱為隱私擴容以太坊(PSE)團隊。與zkSync、StarkWare和Polygon等其他團隊相比,Scroll規模較小,并且更專注于研究,商業屬性較輕。他們只專注于他們的zkEVM實施,而其他競爭團隊擁有一套其他與ZK相關的產品和服務。Scroll今年在A輪融資中籌集了3000萬美元,投資方包括PolychainCapital和BainCapitalCrypto等領先的加密貨幣風險投資公司,以及包括以太坊基金會的YingTong和CarlosAria在內的幾位天使投資人。
Privacy&ScalingExplorations(PSE)
PSE是以太坊基金會的一個研究機構,專注于探索ZKP的前沿研究及其在以太坊上的應用。他們以前被稱為「AppliedZKP」小組。與本報告中強調的其他zkEVM實施相比,PSE的zkEVM并不專注于在不久的將來滿足大規模使用。PSE正在研究的zkEVM專注于根據「enshinedRollup」模型,實現與EVM的共識級兼容性。
PSE研究中使用的證明算法是稱為Halo2的zk-SNARK,它由Zcash(ZEC)加密貨幣的核心開發團隊ElectricCoinCompany開發。PSE團隊構建的zkEVM實施是開源的,任何人都可以參與。除了zkEVM,PSE團隊還在推進其他幾個項目,包括研究反共謀去中心化應用程序基礎設施、增強用戶交易隱私以及替代加密簽名方案。
構建zkEVM的挑戰
在以太坊上構建生產就緒的zkEVM實現還存在一些持續的挑戰。實施zkEVM等新技術、zkEVM的去中心化操作以及構建用于生成zkEVM證明的專用硬件,這些未經證實和測試的性質是開發人員面臨的主要障礙。本節討論對這些挑戰的一些見解。
新領域
zkEVM是以太坊上的一個新概念,從2022年才正式開始運行。這項技術面臨的一個簡單挑戰是其未經證實和大規模測試的性質。大多數zkEVM實現在生成證明的方式、生成證明的硬件要求以及去中心化定序器的細節方面仍然存在大量未知因素。建立對zkEVM作為可靠的擴展性解決方案的信任是Scroll、Polygon、StarkNet和zkSync等團隊關注的一個重要領域。
去中心化的挑戰
圍繞去zkEVM操作去中心化路徑的問題適用于所有Rollup,因為有效性和欺詐證明的生成在很大程度上取決于中心化排序器。如上所述,定序器是L2利益相關者,負責批處理用戶交易并將這些批次的證明提交給以太坊L1。
目前以太坊上運行的每個Rollup都由中心化排序器操作,并依賴于由單個實體管理的可升級智能合約。今天Rollup中心化性質的一個主要原因是:在技術初期,代碼中出現意外錯誤時需要快速修復。此外,尤其是zkEVM背后的技術在不斷變化,因此很難自信地激勵用戶在自己的設備上運行這項新興技術。為Rollup實現去中心化排序器通常意味著要啟動一個代幣,并創建一個共識協議,以一種無需許可的方式組織多個排序器和證明者。
雖然啟動代幣和創建共識協議對公共區塊鏈來說并不新鮮,但也需要時間和深思熟慮才能負責任地啟動。StarkWare的代幣計劃就因供應設計和初始分配引起了爭議,Polygon也預計將在其zkEVM推出后改進當前的代幣經濟學。zkSync有望在未來幾個月為其Rollup推出代幣,而Scroll的代幣計劃仍不明朗。
當前zkEVM的背景下,排序器去中心化重要的第一步是開源項目軟件,在撰寫本文時很少有人這樣做。在去中心化zkEVM操作方面,已經擁有大量用戶的RollupzkEVM實現可能具有優勢。
zkEVM硬件挑戰
雖然zkEVM證明驗證起來很簡單,但生成它們需要大量計算,部分原因是ZKP背后的數學依賴于線性計算序列。這使得并行化工作在機器上生成證明變得困難。最近使用遞歸證明在這方面取得了進展。遞歸證明是一種減少證明生成延遲的技術,它指的是重復生成證明的證明以進一步壓縮交易,從而可以并行處理ZKRollup上的小批量交易。這是StarkNetVM和Polygon的zkEVM用于生成有效性證明的技術。
由于生成ZKP需要密集計算,zkEVM可能不得不依賴高級硬件,例如圖形處理單元(GPU)、現場可編程門陣列(FPGA),甚至專用集成電路(ASIC)。需要專門的硬件來運行必要的計算來生成證明,這與需要專門的硬件來根據工作量證明(PoW)共識協議有效地挖掘區塊沒有什么不同。這兩個硬件行業的增長差異在于證明者與礦工的選擇過程。
證明者是負責生成有效性證明的網絡利益相關者。另一方面,定序器負責將用戶交易排序和打包成批次,并將數據提交到第1層區塊鏈。從技術上講,排序者和證明者的職責可以合并為一個角色。然而,因為證明生成和交易排序都需要高度專業化的技能才能有效執行,所以拆分這些職責可以防止Rollup功能中不必要的中心化。
如果證明者和排序器的選擇過程類似于礦工的選擇過程,依賴于達成中本聰共識并獎勵最高效的硬件參與者,那么ZKP“挖礦”行業就有可能沿著與比特幣挖礦相同的軌跡發展。然而,有幾個原因可以解釋為什么特定證明者的選擇過程更可能在設計上類似于權益證明(PoS)而不是PoW共識。
首先,中本聰式的選擇過程意味著擁有最高效硬件的證明者將主導證明市場。為了避免證明者市場的壟斷,同時減少電能消耗,像Scroll這樣的項目正在尋找替代設計,這需要證明者將資產作為抵押品,這與以太坊驗證者被要求抵押32ETH的方式不同。質押模型的實施確保證明者可能因破壞網絡安全性和活躍性的行為而受到懲罰,例如未能為指定的一批交易計算有效性證明。
確定性地選擇證明者生成證明,而不是讓所有證明者競爭生成證明的另一個好處是可以提高交易吞吐量和網絡可擴展性。選擇證明者意味著幾個證明者可以并行地為不同批次的交易生成證明,而不是所有證明者都為同一批交易生成證明。然而,依賴于某種形式的質押和懲罰的領導人選舉系統存在一個弱點:復雜性。與中本聰式的PoW系統相比,PoS系統依靠更復雜的制衡設計來保持參與者的誠實。例如,中本聰式的共識通常只需要參與者,即礦工,產生他們工作的證明來獲得獎勵。
大多數zkEVM可能會嘗試通過選擇確定性而不是概率性的無需許可的證明者選擇過程來盡量減少Rollup的用電量。以太坊聯合創始人VitalikButerin估計,計算zkEVM的有效性證明所需的電能不到用于開采ETH的1%。zkEVM設計人員的目標是盡可能減少證明時間,同時讓盡可能多的用戶可以經濟地訪問證明生成。實現共識級別兼容的zkEVM的要求之一是將證明生成時間減少到與以太坊L1的出塊時間相當。
只有當zkEVM背后的規范變得清晰和標準化后,ZKP硬件制造商才能真正成長和成熟。最后,預測有效性證明計算行業的用電量仍然很困難,除非Rollups采用并實施一種無需許可地選擇證明者和定序器的模型。
zkEVM競爭展望
短期內,zkEVM參與者正在競爭成為第一個在主網上啟動的項目。然而,從長遠來看,他們將在EVM兼容性水平和VM效率方面展開競爭。一旦支持zkEVM的技術得到更廣泛的測試、使用和理解,zkEVM很可能還必須與optimisticRollups和其他L2可擴展性解決方案競爭以獲取用戶。
先發優勢和后發優勢
zkSync、Polygon和Scroll團隊的zkEVM實現正競相在主網上推出。更早啟動主網可以在可吸引DApp開發人員方面占據先發優勢,鑒于Rollup之間互操作性和DApp可組合性的難度,這可能是一個特別重要優勢。DApp可組合性是指像積木一樣在DApp之上構建DApp的能力,是以太坊去中心化金融(DeFi)生態系統的一個特別重要的特征,它使DApp開發人員更有可能被已經廣泛采用的L1或L2所吸引。
另一方面,由于zkEVM作為一項技術的新穎性,首批推出的zkEVM實現不太可能針對以太坊DApp開發人員進行最優化。正如本報告中提到的,在字節碼級別和共識級別上與EVM完全兼容的zkEVM實現尚未準備好用于生產。可以更原生地支持以太坊DApp部署的zkEVM實現可能不會首先啟動,擁有更多EVM等效的zkEVM具備后發優勢。等效程度越深,zkEVM開發人員的進入門檻就越低。換句話說,2015年以來一直是主要DApp執行環境的EVM可以遷移的工具越多,zkEVMDApp開發人員的采用就順利。
通過EVM等效性吸引DApp開發人員是zkEVM實現之間第一個明顯的競爭領域,雖然DApp開發人員采用的先發優勢很強,但該技術還處于初期階段,因此仍有進行重大迭代和改進的空間來構建一個生產就緒的zkEVM。最終,這場游戲類似于從零開始的創新者困境:成為第一個并嘗試建立布局和社區更好,還是成為第二個并以更好的功能推翻先行者更好?
虛擬機設計
隨著時間的推移,zkEVM的另一個競爭和改進領域是效率。如前所述,EVM并未針對ZK系統進行優化,構建通用的ZKRollup可以證明基于以太坊的智能合約和DApps需要大量開銷。隨著時間的推移,為SNARK或STARK證明優化的其他虛擬機設計可能會降低EVM兼容性,這是Starkware團隊強烈持有的觀點。將Solidity編譯為Cairo的Warp工具和其他類似工具都是社區驅動的舉措,因為內部StarkWare團隊專注于使StarkNet的虛擬機盡可能高效,而不是簡單地與EVM兼容。
在以太坊上,值得注意的是,在不破壞DApp向后兼容性的情況下,EVM不能被顯著改變或升級。自EVM于2015年發布以來,開發人員對EVM及其高級編程語言Solidity進行了修補,以在較小的方面提高可用性和安全性。例如,在2019年以太坊伊斯坦布爾硬分叉升級期間,核心開發人員向EVM添加了一個名為“CHAINID”的新操作碼,它將返回規范鏈的唯一標識符。這是為了通過允許節點檢查CHAINID來防止升級的節點連接到未升級的節點,這是一種特別有用的升級,有助于防止“重放攻擊”。
以太坊核心開發人員一直堅稱,以太坊的發展路線圖中仍將對EVM進行進一步的升級。新的操作碼和預編譯可能會繼續添加到EVM中,這表明現有的zkEVM實現必須靈活地適應EVM中的變化。然而,即使有了這些改進,Mina、Sui和Aptos等L1區塊鏈仍然有機會嘗試不同的虛擬機和智能合約語言設計,從長遠來看,這可能會使EVM過時。zkEVM實現主要側重于在字節碼和共識級別與EVM的深度兼容性,長期押注EVM在智能合約開發中的相關性和主導地位。
OptimisticRollups到ZKRollups
最后,本報告中討論的五個zkEVM實現打敗了Optimism或Arbitrum等OptimisticRollups,這并不是一個必然的結論。在技??術層面上,ZKRollups比optimisticRollups更安全、更高效,并且有可能更具成本效益。但是,它們在證明為EVM設計的通用計算方面的靈活性并未經過測試和大規模部署。
一旦zkEVM推出并且其背后的技術更加成熟和穩健,基于欺詐證明的OptimisticRollup就有可能升級并過渡到生成有效性證明。此外,混合Rollup和多證明者系統使用欺詐證明樂觀驗證用戶交易并間歇性地發布有效性證明。
隨著zkEVM背后的技術發展,逐漸加快有效性證明生成時間將是一個活躍的研究領域,今天以太坊核心開發人員如VitalikButerin和L2開發人員如Optimism的KelvinFichter正在認真討論這個問題。
已經在以太坊上推出的Rollup具備用戶群優勢,理論上可以很容易地移植到Rollup的新升級版本,類似于2022年推出的ArbitrumNitro。這可能是為什么zkEVM團隊在他們主網啟動和建立龐大的用戶群之前,對完全開源他們的項目代幣猶豫不決的原因之一。隨著時間的推移,optimisticRollups到ZKRollups的可升級性表明:競爭不僅存在于zkEVM實現不之間,也存在于更廣泛的以太坊L2生態。
結論
市場近來對zkEVM的興趣激增引發了幾個關于以太坊可擴展性路線圖終局的問題。在最真實的意義上,zkEVM代表了對EVM主導地位的長期押注,同時也押注以太坊作為智能合約執行的主要平臺。zkEVM也是對以太坊可擴展性路線圖的長期押注,因為它以Rollup為中心將交易執行抽象為Rollup,而不是與共識和數據可用性相結合。
盡管今年宣布了幾個接近生產就緒的zkEVM,但該技術仍處于起步階段。實現與EVM具有共識級別兼容性的zkEVM仍然是一項研究計劃,距離準備好投入生產可能還需要數年時間。然而,僅在一年前,實現與EVM的字節碼級兼容性的zkEVM,情況也是如此。Polygon、zkSync、StarkWare和Scroll對zkEVM實現的快速發展繼續推動計算機科學和數學的界限,并且超出了預期。在以太坊主網上推出PolygonzkEVM和zkSync2.0將是使用真實用戶和DApp活動測試zkEVM的重要起點。
兩個生產就緒的zkEVM的可用性和可擴展性可能不僅會顛覆zkEVM的競爭格局,而且還會顛覆OptimisticRollups和L1競爭鏈的格局。如果zkEVM成功,OptimisticRollups將不得不轉換為ZKRollup設計以保持長期競爭力。L1競爭鏈還必須在其虛擬機設計上進行創新,以與可擴展的EVM競爭。關于ZKP在以太坊上的就緒性和適用性還有很多待證明,而生產就緒zkEVM的推出應該被視為這項新技術競爭格局的開始。
zkEVM的一些持續關注和發展領域包括它們的硬件設計和代幣經濟學。用于生成ZKP的硬件環境以及哪種Rollup成功地去中心化證明生成仍有待觀察。這在很大程度上將歸結為各個團隊的社區建設,以及這些Rollup中的任何一個能夠在多大程度上成功地吸引DApps,尤其是DeFiDApps向其網絡的大規模遷移。
這些發展領域需要時間和迭代才能逐漸走上正軌。然而,鑒于zkEVM試圖在以太坊上實現的先進性,以及它們對公共區塊鏈未來的廣泛潛在影響,這一進展將受到以太坊利益相關者、研究人員、密碼學家和學者等的密切關注。
作者:Moledao? Moledao是2021年8月成立于新加坡的區塊鏈開發者社區,致力于建設一站式區塊鏈生態系統.
1900/1/1 0:00:00作者:BitizenWalletBitizen是基于MPC技術構建的無私鑰、無助記詞Web3錢包.
1900/1/1 0:00:00據CoinDesk報道,一位Solana基金會的代表證實,Solana生態NFT項目DeGods曾向Solana基金會索要500萬美元以留在Solana上。DeGods團隊拒絕對此置評.
1900/1/1 0:00:00整理:西昻翔,鏈捕手 “過去24小時都發生了哪些重要事件”?1、AnimocaBrands擬推出20億美元規模元宇宙基金據Nikkei報道.
1900/1/1 0:00:00通用互操作性平臺AxelarNetwork宣布啟動6000萬美元創業生態計劃,致力于加速開發可以取代CEX的去中心化應用程序和協議,促進Web3應用程序的開發.
1900/1/1 0:00:00貴州茅臺發布消息,截至1月2日,巽風數字世界注冊用戶數正式突破100萬。1月1日9時,這個名為“巽風”的APP開啟下載.
1900/1/1 0:00:00