作者:BlockchainAcademy,Geekcartel
zkEVM的背景和意義
以太坊是一個去中心化的計算機平臺,允許開發人員構建分布式應用程序和智能合約。然而,由于以太坊網絡的限制,包括吞吐量限制和高費用,這些應用程序的規模和性能受到了限制。
為了解決這些問題,以太坊社區開發了許多二層解決方案,其中包括zkEVM。zkEVM是一種基于零知識證明的以太坊虛擬機,它可以在不犧牲去中心化和安全性的前提下提高以太坊網絡的吞吐量和降低交易費用。
zkEVM的核心思想是利用零知識證明來驗證和執行智能合約,而不需要每個節點都執行所有的計算。相反,只有證明驗證者需要進行計算,然后將驗證結果廣播到網絡中的其他節點。這樣,可以大大減少網絡負載和執行成本,并提高網絡的吞吐量和性能。
零知識證明(ZKP)在節省冗余計算、壓縮鏈上空間和保護用戶隱私方面體現了重要的應用價值。幾種常見的零知識證明實現方法,包括zk-SNARK、zk-STARK、PLONK和Bulletproofs。
其中,zk-SNARK是一種簡潔非交互零知識證明,它通過將生成的證明數據量壓縮到比實際證明數據量小的程度,并且證明者只需發送一條簡單的信息給驗證者來完成驗證,從而實現了在節省計算開銷和交互次數的同時保護用戶隱私的目的。而zk-STARK則是一種可擴展透明零知識證明,相比于zk-SNARK,它允許開發人員將計算和存儲轉移到鏈下來提高可擴展性,在計算速度和大小方面更具可擴展性,同時還能夠抵御量子計算機的攻擊。
zkEVM作為一種新的解決方案
zkEVM可以在保護交易隱私和完整性的同時,不需要犧牲性能和去中心化。它利用零知識證明來驗證和執行智能合約,證明驗證者只需要進行計算,而不需要每個節點都執行所有計算,從而大大降低了網絡負載和執行成本。此外,zkEVM的實現可以充分利用以太坊網絡的現有基礎設施和生態系統,可以很容易地集成到現有的以太坊應用程序中。
zkEVM的基本原理和設計
ZkEVM是zkRoll-up的一部分,這是以太坊第2層擴展解決方案,通過將計算和狀態存儲轉移到鏈下來提高吞吐量。ZK-rollup向以太坊提交交易數據以及驗證鏈下交易批次有效性的零知識證明。
早期的ZK-rollup缺乏執行智能合約的能力,并且受限于簡單的Token交換和支付。但是,隨著與EVM兼容的零知識虛擬機的引入,ZK-rollups開始支持以太坊dApp。
借貸市場0VIX已在Polygon zkEVM網絡啟動:3月28日消息,借貸市場0VIX已在Polygon zkEVM網絡啟動,成為首個在Polygon zkEVM網絡部署的DeFi協議,包括ETH、MATIC、USDT和USDC在內的四種資產市場已經上線。[2023/3/28 13:31:23]
zkEVM的基本原理是使用零知識證明來驗證智能合約執行的結果,從而保證交易的隱私和完整性。與傳統的以太坊網絡不同,zkEVM的驗證和執行智能合約的過程是分離的,即驗證者只需要驗證零知識證明,而不需要真正執行智能合約。以下是zkEVM的基本設計:
1、零知識證明生成器:zkEVM的用戶需要使用一個零知識證明生成器來生成零知識證明。這個生成器的目的是證明交易的正確性和合法性,包括交易的簽名、輸入和輸出等。
2、零知識證明驗證器:zkEVM的驗證者需要使用一個零知識證明驗證器來驗證用戶生成的零知識證明。驗證器需要驗證證明的正確性,包括證明的格式、證明的數據完整性和證明的邏輯正確性等。
3、智能合約執行器:zkEVM的智能合約執行器是一個離線計算的過程,即計算可以在離線狀態下完成。執行器使用輸入和智能合約的字節碼來計算輸出,并將輸出作為計算結果返回給零知識證明生成器。
4、隱私保護:zkEVM使用零知識證明來保護交易的隱私和完整性,證明只需要證明計算的正確性,而不需要暴露輸入和輸出的詳細信息。
通過這種設計,zkEVM可以有效地保護交易的隱私和完整性,同時具有高效性和可擴展性。它可以在不降低去中心化和性能的情況下,為以太坊網絡帶來更高的吞吐量、更低的交易費用和更快的確認時間。
zkEVM的技術實現
zkEVM在以太坊二層網絡中的技術實現,包括交易驗證和數據驗證
????交易驗證
????交易驗證是指驗證交易的正確性和合法性,包括驗證交易的簽名、輸入和輸出等。在zkEVM中,交易驗證采用零知識證明技術實現,具體實現過程如下:
????生成證明:zkEVM用戶使用zk-SNARKs算法生成交易的零知識證明,證明交易的正確性和合法性,證明通常包括交易的簽名、輸入、輸出等。
????驗證證明:zkEVM的驗證者使用驗證器驗證用戶生成的零知識證明,驗證證明的正確性。在驗證證明的過程中,驗證者只需驗證證明的正確性,而不需要暴露交易的具體信息,保護了交易的隱私。同時,由于zkEVM使用了零知識證明技術,驗證者也無法獲取交易的輸入和輸出信息。
Ankr將在Polygon zkEVM推出后提供RPC連接:3月17日消息,Web3 基礎設施提供商 Ankr 將在 3 月 27 日 Polygon zkEVM 推出后提供 RPC 連接,Ankr 還將通過啟動 RPC 連接到 zkEVM 測試網與主網,使開發者能夠在以太坊擴容方案上建設。[2023/3/18 13:11:28]
?數據驗證
數據驗證是指驗證以太坊二層網絡中存儲的數據的正確性和完整性,包括驗證區塊頭、交易狀態樹、存儲狀態樹等。在zkEVM中,數據驗證采用merkle樹結構實現,具體實現過程如下:
????Merkle樹的構建:zkEVM在以太坊二層網絡中采用了一種基于Merkle樹的數據存儲結構,通過將交易和狀態信息編碼為葉子節點,然后在樹中生成和存儲Merkle樹,實現交易和狀態信息的快速查詢和驗證。
????Merkle樹的驗證:在驗證Merkle樹的過程中,zkEVM需要驗證Merkle樹的根哈希和葉子節點哈希的正確性。由于Merkle樹具有高效的驗證性能,zkEVM可以快速驗證以太坊二層網絡中存儲的數據的正確性和完整性。
通過交易驗證和數據驗證,zkEVM保證了以太坊二層網絡中交易的正確性、隱私和數據的完整性,實現了高效、去中心化和可擴展的以太坊二層網絡。
zkEVM的等效性
zkEVM可以模仿與以太坊主網相同的交易執行環境,但它的EVM等效級別與傳統EVM有所不同,主要分為語言水平等效、字節碼級等效、共識水平等效和完全等效四個級別。
語言水平等效的zkEVM可以將EVM友好編程語言翻譯成為生成零知識證明而優化的定制語言,因此可以實現與EVM的語言級兼容性。但這種類型的zkEVM在為用戶和智能合約開發人員提供與EVM交互相同的體驗方面最受限制。
字節碼級等效的zkEVM需要ZKRollups來解釋從更高級語言編譯下來的EVM字節碼,并模仿與EVM相同的高級編程語言和低級字節碼,從而實現更深層次的兼容性。這些類型的zkEVM構建起來更復雜,需要更高級的工程設計,但它們與基于EVM的應用程序和工具相互兼容。
共識水平等效的zkEVM可以實現對EVM的最高原生兼容性,它的想法是由zkEVM生成的加密證明不需要以任何身份驗證,就能被EVM接受。
Orbiter Finance測試網產品已整合至Polygon zkEVM:3月9日消息,Orbiter Finance宣布其測試網產品已整合至Polygon zkEVM。[2023/3/9 12:52:32]
完全等效的zkEVM需要與EVM在所有方面都完全兼容,這通常會導致創建低效且昂貴的ZK系統,因此,通常需要在成本和效率之間進行權衡。目前,已有兩種字節碼兼容的zkEVM,分別是PolygonzkEVM和ScrollzkEVM,它們在不同程度上實現了字節碼級等效,但隨著時間的推移,這些實現正朝著完全兼容的方向努力。
zkEVM的結構
zkEVM是一種基于零知識證明的可擴展性解決方案,它將智能合約的執行和驗證遷移到了L2鏈上,從而實現了更高的交易吞吐量和更低的交易成本。zkEVM由三個部分組成:執行環境、證明電路和驗證者合約。
執行環境類似于以太坊虛擬機,它負責在zkEVM中執行智能合約,并根據初始狀態和當前交易計算出新的最終狀態。
證明電路用于生成零知識證明,驗證在執行環境中計算交易的有效性。證明生成過程是通過使用前狀態、交易輸入和后狀態信息來作為輸入完成的。之后,證明者獲得該特定狀態轉換的有效性簡潔證明。
驗證者合約用于接收提交的有效性證明,并確認輸入和輸出是正確計算的。它在L1鏈上部署,并與zk-rollups集成,確保zkEVM的安全性和可靠性。
zkEVM操作碼是一種低級機器指令,用于在EVM兼容的zk-rollups中執行程序。與EVM一樣,用高級語言編寫的合約必須被編譯成虛擬機可以解釋的低級語言,當在虛擬機中部署程序的時候,該字節碼指定了執行程序時所需使用的操作碼。
為了使操作碼更適合在零知識證明電路中使用,有兩種常見的方法。第一種方法是為原生EVM操作碼建立零知識電路,這需要在算術電路中實現所有的EVM指令集,是一項復雜而費時的任務。第二種方法是為零知識證明計算創建新語言和自定義操作碼,開發人員直接用新語言編寫合約,或者將Solidity源代碼編譯為自定義的zkEVM操作代碼。盡管第二種方法通常更容易實現,但可能會導致開發人員無法訪問現有的以太坊基礎設施和資源。
zkEVM的優勢
zkEVM是一種基于零知識證明技術的以太坊二層網絡隱私保護技術,具有以下優點和優勢:
Uniswap V3擬上線Polygon zkEVM,現處于提案階段:3月4日消息,Uniswap社區成員Jack Melnick發起提案,擬使Uniswap V3在PolygonzkEVM發布,建議授權Uniswap Labs代表社區將Uniswap的協議部署到稱為zkEVM的Polygon零知識以太坊虛擬機。
Uniswap在EVM兼容的ZKrollup上可用具有重要價值。Polygon zkEVM是一種新的zk-rollup,它提供以太坊虛擬機(EVM)等效性(操作碼級兼容性),以實現透明的用戶體驗以及現有的以太坊生態系統和工具兼容性。[2023/3/4 12:42:20]
1、高度的隱私保護:zkEVM采用零知識證明技術,可以實現高度的隱私保護。具體來說,zkEVM通過零知識證明技術實現了以下兩個方面的隱私保護:
2、交易隱私保護:zkEVM將交易信息放到鏈外處理,只將交易的驗證結果存儲在鏈上,從而保護了交易的隱私。
3、數據隱私保護:zkEVM將所有數據都加密處理,并將其存儲在鏈外的zkSNARK中,只將數據的哈希值存儲在鏈上,從而保護了數據的隱私。
4、高度的安全性:zkEVM采用零知識證明技術,可以實現高度的安全性。具體來說,zkEVM采用zkSNARK來驗證交易和數據,并使用托管模式來管理數據和私鑰,從而保證了交易和數據的安全性。同時,zkEVM還使用了多方安全計算技術和密鑰隔離技術來防止攻擊者的攻擊和數據泄露。
5、高效的交易速度和吞吐量:zkEVM將交易的計算和數據存儲移動到鏈外,從而提高了交易的速度和吞吐量。具體來說,zkEVM采用了分布式計算和存儲技術,使得交易的計算和數據存儲可以在多個節點上進行,并使用zkSNARK技術實現高效的驗證和認證,從而實現高效的交易處理。
6、高度的兼容性和可擴展性:根據協議規則,所有驗證節點必須在以太坊虛擬機中重新執行所有計算,以確保以太坊節點可以獨立驗證程序的正確性。但這種方法限制了以太坊網絡的可擴展性,因為它只能處理大約15-20個交易。
而與EVM兼容的ZK-rollup可以解決以太坊的吞吐量問題,而不會破壞網絡安全。與其他擴容協議一樣,ZK-rollups不受以太坊共識協議規則的負擔,并且可以優化執行速度。一些估計表明,ZK-rollups每秒可以處理約2000筆交易,而不會產生以太坊高額的費用。
ConsenSys的zkEVM公共測試網將于3月28日上線:金色財經報道,以太坊基礎設施開發公司ConsenSys將于3月28日推出零知識以太坊虛擬機(zkEVM)公共測試網。
此前報道,2月24日,ConsenSys表示其zkEVM測試網封閉測試版已經執行30萬筆交易,每天處理超過5萬筆交易。[2023/3/4 12:41:30]
7、更快的確定性和資本效率:ZK-rollup相對于op-rollup還有另一個優勢,即更快的最終確定性。在區塊鏈上,確定性是指交易不可逆轉所需的時間,只有當網絡參與者有客觀證據證明交易的有效性時,才能最終確定。
使用ZK-rollups,在zkEVM中執行的交易通常在發布到以太坊后立即完成。由于每個交易批次都帶有即時可驗證的有效性證明,因此以太坊主鏈可以快速應用狀態更新。
與之相比,樂觀匯總僅在沒有證明的情況下發布VM事務,因此必須經過質詢期才能使事務達到最終確定性。挑戰期一般為1-2周,在此期間,任何人都可以在交易提交到以太坊后對其進行挑戰。較慢的最終確定性會對用戶體驗產生不良影響。例如,在延遲期到期之前,用戶不能從匯總中提取資產。雖然流動性提供者可能會解決這個問題,但如果提款涉及高價值資產甚至NFT,則可能無效。
相比之下,zkEVM沒有上述問題。更快的最終確定性非常適合高級用戶,例如需要無縫移動資產的NFT交易者、DeFi投資者或套利交易者。
zkEVM的難點
構建zkEVM面臨的主要困難來自于EVM虛擬機設計的初衷并不包含零知識計算的考慮。由此帶來的一些特性對于證明電路的設計來說不太友好,主要包括以下四個方面:
特殊操作碼
EVM在程序執行和錯誤處理等操作中使用了特殊的操作碼,如CALL、DELEGATECALL、REVERT、INVALID,這些操作碼使得證明電路設計變得更加復雜。
基于堆棧的架構
EVM使用的基于堆棧的結構雖然比基于寄存器的結構簡單,但是增加了證明計算的難度。為此,一些知名的zkVM,如ZkSync和StarkWare的StarkNet,選擇使用基于寄存器的模型來實現zkEVM。
存儲開銷
EVM的存儲布局依賴于Keccak函數和MerklePatriciaTrie,這兩者的證明開銷都很高。為了避免這個問題,一些zkVM,如ZkSync,試圖通過替換Keccak256函數來解決,但這可能會破壞與現有以太坊工具和基礎設施的兼容性。
證明成本
即使解決了上述問題,構建zkEVM仍需要處理生成證明的過程,而生成零知識證明需要專門的硬件以及大量時間、金錢和精力成本。
這些困難因素阻礙了建立與EVM兼容的zkEVM。不過,隨著零知識技術的不斷突破,在一定程度上可以緩解這些問題帶來的影響,使人們對zkEVM解決方案重新產生興趣。
zkEVM賽道項目
以下是不同類型的zkEVM協議及其工作原理的比較。
PolygonzkEVM
PolygonHermez是一個基于PolygonZK-rollup的零知識虛擬機,旨在支持EVM兼容性。它將EVM字節碼編譯為微操作碼并在uVM中執行,使用SNARK和STARK證明來驗證程序執行的正確性。PolygonHermezzkEVM使用STARK證明電路來生成狀態轉換的有效性證明,然后將其提交給以太坊進行驗證。結合STARK和SNARK證明的使用,能夠更快地生成STARK證明,而SNARK證明的驗證成本更低。
zkSynczkEVM
zkSync是一個與EVM兼容的ZK-rollup,由MatterLabs開發并提供支持。它使用將Solidity編寫的合約代碼編譯成中間語言Yul,并將其重新編譯為專門為zkSync的zkEVM設計的自定義、電路兼容的字節碼集。與PolygonHermez一樣,zkSynczkEVM在語言級別而不是字節碼級別實現EVM兼容性。例如,zkSync的zkEVM不支持傳統的加法操作碼。
ScrollzkEVM
Scroll是一個正在開發的新的零知識EVM實現。Scroll團隊計劃為每個EVM操作碼設計零知識電路。這將允許開發人員在Scroll上部署以太坊原生智能合約EVM,而無需修改底層EVM字節碼。此外,ScrollzkEVM將使用密碼累加器來驗證存儲的正確性,并提供一個將字節碼與執行跟蹤鏈接起來的電路,以驗證計算與原始字節碼是否一致。
ZK硬件加速
盡管ZKP生產速度緩慢且昂貴,但隨著特殊硬件如FPGA和ASIC的普及,其效率將得到大幅提升。隨著隱私計算需求日益增長,ZKP的語句復雜性將進一步增加,只能通過使用專門的硬件來提高證明生成速度。這將促成一個完整的ZK挖礦和證明行業的出現,業余愛好者們可以在自己的CPU上生成證明或使用GPU和FPGA。
ZKPs的性能瓶頸主要集中在數字的向量乘積和FFT計算上。為了提高ZKPs的性能,可以采取以下措施:
1、優化數字向量的乘積計算。可以使用更高效的算法和并行計算來加速向量乘積的計算,從而減少生成證明所需的時間。此外,可以通過使用更小的域來減少數字向量的大小,進一步減少計算時間。
2、優化FFT計算。可以使用更高效的FFT算法來加速計算,并使用分布式計算來分擔計算負擔,從而減少生成證明所需的時間。此外,還可以使用更小的域和更短的FFT周期來減少計算時間。
3、優化證明系統的實現。可以使用更高效的編譯器和優化器來生成更高效的代碼,從而減少生成證明所需的時間。
4、優化硬件和軟件環境。可以使用更快的計算機和更優化的操作系統、編譯器和庫來提高生成證明的性能。
在以太坊在合并前,約有2700萬張顯卡在其網絡上工作,算力在5月中達到了高峰的1.13P。隨著以太坊的合并,這些算力將會切換至ETC等分叉鏈。除了市場上存量龐大的Filecoin、AR等算力設備,ZK證明計算也許會為礦機硬件提供新的用武之地。
影響zkp證明速度的主要有三個維度:證明系統、待證明電路規模和算法軟硬件優化。
對于證明系統,市面上主流的ZK-SNARK算法都使用橢圓曲線算法來產生多項式承諾,涉及大數點乘操作,這是證明過程中時間較長的瓶頸。相比之下,基于FRI的算法,如ZK-Stark,使用哈希函數生成多項式承諾,不涉及EC算法,因此不需要MSM運算。
證明系統是基礎,待證明電路的規模也是硬件優化的核心需求之一。例如zkEVM由于與原生以太坊的兼容性不同,其電路的復雜程度也不同。例如,Zksync和Starkware構建了與原生以太坊不同的虛擬機,從而避免了一些以太坊原生的代碼不適合使用zk進行處理的問題,縮小了電路的復雜度;而Scroll和Hermez等項目則以與底層zkevm兼容為目標,因此其電路設計更復雜。硬件加速對于設計更復雜的電路的需求更加迫切,但這也是一個具有一定變化程度的問題,對于ZK-EVM也同樣如此。
總之,硬件加速是ZKP擴容方案實現的關鍵之一。在硬件加速領域,人們期望看到摩爾定律在zk硬件加速領域的應用,這將會大大提高證明速度,加快擴容方案的發展。此外,硬件zk加速領域也為新的硬件加速技術和業務模式提供了機會和挑戰,這將在未來成為一個備受關注的領域。
AboutBlockchainAcademy?
BlockchainAcademy是Talentre旗下的教育平臺,是一個致力于培養和發展下一代Web3.0人才的非營利組織。得到香港科技大學、香港理工大學、香港大學和香港中文大學等知名大學的支持,以及BNB、FenbushiCapital和Aptos等領先行業參與者的支持,BlockchainAcademy是亞洲最大的Web3.0GenZ教育平臺和社區。學員來自超過35所大學,學院已經影響了超過110,000名GenZ個體,并旨在利用平臺資源,與用戶分享Web3.0相關的知識和技能,將下一個億人引入Web3.0。加入BlockchainAcademy社區,共同建設Web3.0世界。
AboutGeekCartel
Geekcartel是一家專注于投資早期Web3項目的風險投資機構。我們是一群充滿激情和專研知識的極客所組成,團隊各來自不同專業的加密背景。我們的使命是為新創公司增加價值,提供技術和運營方面的實際幫助,其包括技術解決方案、安全服務、籌資策略和全球營銷等。
此前辭任PaxfulCEO職位的Paxful聯合創始人RayYoussef承諾將把Paxful公司45%?個人股份的99.9%放入公共信托基金.
1900/1/1 0:00:00作者:Yuanshan@Web3CN.Pro 一、項目簡介及愿景 Loopring協議是一個專為應用程序開發的zkRollup協議、一個中繼器、一個L2非托管交易所、一個智能錢包.
1900/1/1 0:00:00在Consensus2023大會上,GoogleCloud和PolygonLabs宣布建立多年戰略聯盟,旨在用谷歌云基礎設施和開發人員工具加速采用核心Polygon協議.
1900/1/1 0:00:00整理:西柚,ChainCatcher“過去24小時都發生了哪些重要事件”1.Polygon聯創暗示其zkEVM可能會有空投Polygon聯合創始人SandeepNailwal在回應某推特用戶“L.
1900/1/1 0:00:00作者:veDAO研究院 2023年4月20日根據官方推特消息公告,公鏈項目Sui已經敲定將在5月3日上線主網,而事先通過加密貨幣交易所發售的原生代幣SUI也將在主網啟動期間被解鎖.
1900/1/1 0:00:006月2日至6月7日,「韓國上半年區塊鏈周」將在首爾盛大舉辦。作為亞洲最具影響力的區塊鏈盛會之一,韓國區塊鏈周將吸引全球加密行業的主流布道者和商業領袖、核心開發者云集首爾,以主題演講、研討會、展覽.
1900/1/1 0:00:00