同樣作為layer2擴容解決方案,optimistic和零知識匯總(zero-knowledge rollups)主要有哪些區別?

optimistic和零知識匯總都將數百個交易捆綁(或“匯總”)到layer1的單個交易中。 Rollup交易在layer1之外執行,但交易數據被發佈到layer1。

主要區別在於將哪些數據發佈到layer1以及如何驗證數據。有效性證明(用於零知識rollups)在鏈下運行計算並發布證明,而欺詐證明(用於optimistic rollups)僅在懷疑有錯誤且必須檢查時在鏈上運行計算。目前,大多數ZK-rollups都是特定應用程序的,而optimistic rollups在很大程度上是可推廣的。

對於optimistic rollups在之前的文章中我們詳細介紹過,本文不再贅述。今天我們重點介紹什麼是零知識匯總,以及如何與以太坊進行交互。

零知識匯總(ZK-rollups) 是2 層擴容解決方案,可通過將計算和狀態存儲移至鏈下來提高以太坊主網上的吞吐量。 ZK-rollups 可以批量處理數千筆交易,然後只將一些最小的匯總數據發佈到主網。這個匯總數據定義了應該對以太坊狀態進行的更改以及一些加密證明這些更改是正確的。

什麼是零知識匯總?

零知識匯總(ZK-rollups)將交易打包(或“匯總”)成鏈下執行的多個batch中。鏈下計算減少了必鬚髮佈到區塊鏈的數據量。 ZK-rollup 操作者提交表示batch處理中的所有交易所需的更改總結,而不是單獨發送每個交易。他們還產生有效性證明(validity proofs )來證明其變更的正確性。有效性證明以密碼學的確定性證明,對以太坊狀態的提議更改確實是執行batch處理中所有交易的最終結果。

ZK-rollup 的狀態由部署在以太坊網絡上的智能合約維護。要更新此狀態,ZK-rollup 節點必須提交有效性證明以供驗證。如前所述,有效性證明是一種加密保證,即匯總提出的狀態更改確實是執行給定批次交易的結果。這意味著ZK-rollup 只需要提供有效性證明來完成以太坊上的交易,而不是像optimistic rollups 那樣將所有交易數據發佈到鏈上。

將資金從ZK-rollup 轉移到以太坊時沒有延遲,因為一旦ZK-rollup 合約驗證了有效性證明,就會執行退出交易。相反,從optimistic rollups 中提取資金會受到延遲,以允許任何人使用欺詐證明來挑戰退出交易。

ZK-rollup 將交易作為calldata寫入以太坊。 calldata是存儲智能合約函數外部調用中包含的數據的地方。 calldata中的信息發佈在區塊鏈上,允許任何人獨立重建匯總的狀態。 ZK-rollup 使用壓縮技術來減少交易數據——例如,賬戶由索引而不是地址表示,這樣可以節省28 字節的數據。鏈上數據發布是rollups 的一項重要成本,因此數據壓縮可以降低用戶的費用。

ZK-rollups 如何與以太坊交互?

ZK-rollup 鍊是一種在以太坊區塊鏈之上運行的鏈下協議,由鏈上以太坊智能合約管理。 ZK-rollups 在主網之外執行交易,但定期將鏈下交易batch提交到鏈上rollup 合約。這個交易記錄是不可變的,很像以太坊區塊鏈,並形成了ZK-rollup 鏈。

ZK-rollup 的核心架構由以下組件組成:

  1. 鏈上合約:如前所述,ZK-rollup 協議由運行在以太坊上的智能合約控制。這包括存儲匯總塊、跟踪存款和監控狀態更新的主合約。另一個鏈上合約(驗證者合約)驗證區塊生產者提交的零知識證明。因此,以太坊充當ZK-rollup 的基礎層或L1。
  2. 鏈下虛擬機(VM):雖然ZK-rollup 協議存在於以太坊上,但交易執行和狀態存儲發生在獨立於EVM的單獨虛擬機上。這個鏈下VM 是ZK-rollup 上交易的執行環境,並作為ZK-rollup 協議的第二層或L2。在以太坊主網上驗證的有效性證明保證了鏈下VM 中狀態轉換的正確性。

ZK-rollups 是“混合擴容解決方案”——獨立運行但從以太坊獲得安全性的鏈下協議。具體來說,以太坊網絡強制執行ZK-rollup 狀態更新的有效性,並保證每次更新rollup 狀態後數據的可用性。因此,ZK-rollup 比純鏈下擴展解決方案要安全得多,例如負責其安全性的側鏈,或也使用有效性證明驗證以太坊上的交易的,但將交易數據存儲在其他地方的validiums

ZK-rollups 依賴主要的以太坊協議來實現以下目的:

數據可用性

ZK-rollups 將鏈下處理的每筆交易的狀態數據發佈到以太坊。有了這些數據,個人或企業就可以復制匯總的狀態並自己驗證鏈。以太坊將這些數據作為calldata提供給網絡所有參與者。

儘管如此,將數據存儲在鏈上仍然很重要,因為它允許對L2 鏈的狀態進行無需許可的獨立驗證,從而允許任何人提交批量交易,防止惡意運營商審查或凍結鏈。

用戶需要在鏈上與匯總進行交互。如果無法訪問狀態數據,用戶將無法查詢其帳戶餘額或啟動依賴於狀態信息的交易(例如,取款)。

交易終結

以太坊充當ZK-rollups 的結算層:只有當L1 合約接受有效性證明時,L2 交易才會最終確定。這消除了惡意運營商破壞鏈的風險(例如,竊取匯總資金),因為每筆交易都必須在主網上獲得批准。此外,以太坊保證用戶操作一旦在L1 上完成就不能被撤銷。

抗審查

大多數ZK-rollups 使用“超節點”(運營商)來執行交易、生產batch並將區塊提交給L1。雖然這確保了效率,但它增加了審查的風險:惡意的ZK-rollup 運營商可以通過拒絕批量包含用戶的交易來審查用戶。

作為一項安全措施,ZK-rollups 允許用戶在認為自己被運營商審查時直接向主網上的rollup 合約提交交易。這允許用戶強制退出ZK-rollup 到以太坊,而無需依賴運營商的許可。

哪些值得期待的ZK項目?

近期備受關注的即將發布的ZK項目就包括zkSync 、StarkWare和Polygon的zkEVM。 zkSync 是一個ZK Rollup,其完整主網甚至還沒有啟動,生態系統就已經很龐大了。 zkSync 的下一個階段是“Fair Onboarding Alpha”,可以在封閉環境中開始部署在zkSync 2.0 上。

StarkWare 是一個二級擴展解決方案,它利用STARK 證明來減少發送到以太坊區塊鏈的信息量,緩解區塊鏈擁堵。 SnarkNet 和zkSync 一樣,利用ZK-Rollup 技術來實現這一目標。 StarkWareLtd 即將推出Starknet 代幣。

Polygon 收購了Hermez Network(一個ZK-rollup),以致力於他們自己的zkEVM 產品。 zkEVM 是一個虛擬機,以透明的方式執行以太坊交易,包括具有零知識驗證的智能合約。 zkEVM 增加了一個已經擴展的生態系統,該系統正在迅速發展。由於Hermez 已經與Polygon 合併,$MATIC 代幣將為該網絡提供動力。

ZK 是以太坊擴展的未來,隨著zkSync、Starknet 和Polygon zkEVM 即將推出的代幣,ZK-rollup加密敘事繼續深入佈局。

參考文章: https://ethereum.org/en/developers/docs/scaling/zk-rollups/#zk-rollups-and-ethereum