一文讀懂ZK Rollup和Optimistic Rollup:以太坊重要的擴展方向

蓝狐笔记
本文约8216字,阅读全文需要约33分钟
ZK Rollup是以太坊重要的擴展方向。

編者按:本文來自藍狐筆記(ID:lanhubiji),Odaily經授權轉載。

藍狐筆記(ID:lanhubiji)

簡介

,Odaily經授權轉載。

藍狐筆記(ID:lanhubiji)

二級標題

簡介

  • ,Odaily經授權轉載。

  • 藍狐筆記(ID:lanhubiji)

  • 二級標題

  • 簡介

前言:多年來,擴展性一直困擾著公鏈。關於擴展性的解決方案有的在概念論證中,有的在研發中。 Optimistic Rollup和Zk Rollup也是擴展性的解決方案,並引起了加密社區的濃厚興趣。那麼,到底什麼Optimistic Rollup和ZK Rollup?哪一種技術路線會贏得以太坊擴展的未來?不管道路如何曲折,之前的努力是否有用(如plasma等技術解決方案),但以太坊的擴展之路一直在前進,滿足主流場景並非遙不可及。本文作者Alex Gluchowski,由藍狐筆記社群的“JOKO”翻譯。

Rollup 101

二級標題

簡介

ZK Rollup是一種更加複雜的技術。它如今可以用於代幣轉移和特定應用。然而,要在通用智能合約上實現還需要更長一些時間,並且要想高效地將EVM包裹於ZKP中甚至還需要更多的研究工作。 (藍狐筆記:ZKP是指零知識證明)

二級標題

不過,一旦ZK Rollup完全開發出來,所有現有的以太坊dApp和服務都能夠平滑且輕鬆地遷移過去。

ZK Rollup將會解決Optimistic Rollup上的幾個基本問題:

將提取資金時間從1-2週減少至幾分鐘;

二級標題

支持快速交易確認並以無限制的數量退出;

Optimistic Rollup對ZK Rollup來說是個好消息。向Layer 2擴展的過渡要求對錢包、預言機、dApp、用戶習慣的重大改變。 Optimistic Rollup有助於為這一行動做好生態系統的準備,將擴展性帶入這些尚不能基於ZK Rollup構建的dApp。這給予ZK Rollup足夠的時間發展成熟,並使其實現完全無縫的採用,與此同時維持以太坊的增長勢頭。

二級標題

*Optimistic Rollup

*什麼是Rollup?

將Rollup和Plasma區分開來的是它解決了Plasms的巨大問題:數據可用性,其方式是通過Layer 1網絡為每筆交易發布一些數據(在以太坊,專門為此目的使用tx CALLDATA)。

二級標題

因此可以在單個Rollup區塊中將數千個交易捆綁在一起。儘管此方法的成本嚴格地呈線性增長(交易數量的O(n) ),但它在吞吐量上實際可提升100倍,因為CALLDATA比Layer 1存儲和計算要便宜。

*ZK Rollup

Rollup已經被Vitalik Buterin反复認可為其最喜歡的Layer 2可擴展性解決方案。根據如何確保狀態轉換的正確性,有兩種Rollup方式:ZK Rollup和Optimistic Rollup。

在ZK-Rollup中,運營商必須為每個狀態轉換生成一個SNARK(藍狐筆記:簡潔非互動的知情證明,Succinct Non-interactive ARgument of Knowledge),並由主鏈上的Rollup合約進行驗證。此SNARK證明存在一系列由所有者正確簽名的交易,這些交易以正確的方式更新了賬戶餘額,並使得Merkle root從舊到新。因此,運營商不可能提交無效或操縱的狀態。

二級標題

*什麼是Optimistic Rollup?

在Optimistic Rollup中,新狀態根由運營商發布,且無需每次都由Rollup智能合約檢查。相反,每個人都希望狀態轉換是正確的。但是,如果發布了不正確的狀態轉換,其他運營商或用戶(必須觀察在Layer 1 Rollup 合約中的情況,執行每個單筆交易)將能夠指出錯誤的交易,並還原錯誤的區塊,消減惡意運營商的押金。 Optimistic Rollup的概念最初由John Adler提出的。

接下來,讓我們比較一下ZK Rollup 和Optimsitc Rollup。

靈活性:通用計算

儘管Optimistic Rollup可用於特定的應用,但是Plasma Group最重要的創新是OVM(Optimistic Vitual Machine)。 OVM支持任意智能合約邏輯的實現。

*Optimistic Rollup

  • 幾乎任何在以太坊上能實現的同樣可以在OVM上實現,這其中包括智能合約的可組合性。它基於EVM,EWASM或任何其他虛擬機。關於OVM的好處是,如果它與EVM一起使用,它將支持用Solidity編寫代碼。因此,大部分現有的代碼庫都可以輕鬆移植到Optimistic Rollup上。

  • 這可能會導致與EVM產生分歧,從而導致無法正確處理邊緣情況,這意味著仍然需要做一些工作才能適應當前的OVM合約。實施的另外一個挑戰在於,大型區塊的欺詐證明可能需要比Layer 1區塊gas limit所允許的更多的gas。那麼,這些欺詐證明必須被分解為多個ETH交易。

  • 二級標題

  • 迄今為止,所有現有的ZK-Rollup實現聚焦於特定的操作,例如代幣轉移或原子交換。這其中有幾個主要原因。

首先,沒有一種有效的技術可用於針對不同ZKP的簡潔遞歸證明組合,這需要將不同智能合約的執行匯總到一個區塊中。我們最好的方法是在橢圓曲線的循環上使用Groth16(由Coda使用),這需要在較長的字段上進行計算,並且對於大型計算完全沒有效率。

STARK驗證程序必須對被證明的計算語句的每個約束至少執行一次,這意味著我們無法迭代異構智能合約的集合。

*ZK Rollup

  • 二級標題

  • 隨著SNORKs的出現,一切都發生改變。 SNORK是基於稍微不同的一組加密原語(著名的多項式承諾方案)的新一代ZKP。由Sean Bowe在Sonic中率先開發,在2019年夏季PLONK和Marlin緊跟其後。所有這些都有一個共同點:儘管依然需要可信設置,但現在它是通用且可更新的。完成一次之後,它可以隨時將其重用於任何數量的不同程序。

  • 然而,在這些證明系統中使用的Kate多項式承諾方案依然需要高效的橢圓曲線循環來進行遞歸,而目前尚不可用。這就是我們為什麼對最新的完全簡潔和透明(無可信設置)的證明系統感到興奮,例如Halo、SuperSonic、Fractal,以及Matter Labs團隊最近在折騰的讓人興奮的事情。

  • 長話短說:在ZKP上構建通用智能合約的障礙現在已經被移除。 ZK Rollup完全能夠支持與EVM相同的編程模型,包括無縫可組合性和可互操作性。儘管Solidity開發者的學習曲線不會超過一天,但最初的合約可能需要專用的DSL。最終,鑑於ZKP證明者技術的當前發展步伐,我們期望所有的現存ETH(甚至EWASM)合約都能以最小的努力有效地移植過來。

二級標題

可擴展性&交易成本

根據John Adler的說法,在EIP2028/伊斯坦布爾之後,目前的估算是每筆轉賬tx大約4k的gas。

這意味著,相當於大約100tps。

  • 使用BLS聚合簽名,此數字最多可以上升到大約500tps(為了不破壞EVM兼容性,tx參數將可能會保留很長時間)。

  • 如果EVM兼容性遭到破壞,則理論上吞吐量可能會增長到ZKP的極限。

實際吞吐量上限(代幣轉移):500tps

但是,在許多用例中,ZK Rollup將節省更多,因為可以從公共數據中省略大塊部分(通過將它們移至ZK電路證明),而無須重構狀態轉換增量。

元交易

二級標題

安全

*Optimistic Rollup

元交易

二級標題

二級標題

安全

元交易

二級標題

二級標題

安全

元交易

兩種類型的Rollup都非常適合支持元交易和賬戶抽象。

二級標題

安全

與支付通道不同,Rollup中的所有資金都由單個智能合約持有。既然Rollup是最有希望的擴展方向,我們應該看到大量的用戶遷移其中,且很多價值集中於這類合約。持有數千萬上億(甚至數十億)美元價值的資產,對於知名黑客來說,Rollup合約正變成非常有吸引力的蜜罐,如果攻擊有機會,那麼,無論多麼複雜,都有可能會嘗試進行。

Optimistic Rollup的安全模型基於兩個假設:

1.至少在n個節點中有1個誠實節點執行所有Optimistic Rollup交易,並且在無效狀態轉換發佈時提交欺詐證明;

2.底層Layer 1網絡有強大的抗審查性

*N個節點中至少有一個誠實節點參與者

對於第一點,現實的期望是,只有Rollup的運營商才會實際監控和執行交易。普通用戶既沒有動力也沒有技術能力來處理高負載的交易(如果他們可以,擴展來源於哪裡?)幸運的是,運營商自然地有動力去檢查彼此區塊的正確性,因為基於無效區塊上搭建區塊會被消減資產。

有足夠的可信參與者,N個節點中有1個誠實節點運營商是合理的假設。但是,既然活躍參與者的數量有限(幾百個?),一些複雜的攻擊可能包括:針對所有運營商的基礎設施(非常困難但並非不可行),賄賂/勒索開發工程師秘密安裝惡意代碼,針對Rollup軟件的更新分發渠道等,當然,還可能是這些攻擊的組合。

*ZK Rollup

這些攻擊很難實現,但應該積極防禦,但比起用同樣的方式攻擊以太坊礦工,這些攻擊要更加現實,尤其是因為對Optimistic Rollup的成功攻擊直到完成後才會被注意到。

*強大的Layer 1抗審查性

第二個假設是棘手的假設。實際上,以太坊的設計提供了經濟機制,它對抗普通審查非常有效。但是,在出現反機制時,這些機制會停止起作用。攻擊者可以創建完全自動的賄賂機制來協調礦工的51%攻擊,這會阻止誠實礦工將欺詐證明包含在其區塊中。

畢竟,這樣的審查攻擊可以被視為對整個網絡的侵略,儘管也可以說,礦工只是簡單地誠實地遵循協議,且沒有義務以違背其最佳經濟利益方式行事。

密碼學

但是,在DAO分叉後,至少可以說,這將是非常有爭議的討論,其結果無法預測。在Vitalik最近進行的一次社區民意測驗中,無論遇到什麼程度的攻擊,63%的投票者反對對不可變的區塊鏈進行任何人工幹預來救助用戶。不用說,要清除即使一個驗證者的權益(藍狐筆記:此處是指質押資金)也非常困難,更不用說清除大多數驗證者的權益。

同時,鑑於主要的DeFi運營商在決定這種分叉的結果時處於有利位置,且避免吵鬧的干擾事件符合其最大利益。所以,他們的最佳選擇可能只是靜靜地遵循攻擊者(這將使以太坊保持最長鏈,並產生比成功軟分叉更少的爭議)。

密碼學

總的來說,欺詐證明審查的風險相對較低,但不可忽略。

*Optimistic Rollup

因此,ZK Rollup更充分地體現了加密世界的基本理念:通過密碼學和博弈理論激勵機制來取代可信方,以實現彈性。但是,為了完整起見,我必須提到ZK Rollup特有的一些潛在風險。

密碼學

二級標題

可信設置

*ZK Rollup

如果在ZK Rollup中使用的ZKP需要通用的可信設置,則我們將得出“N分之一”誠實參與者的假設。根據參與者的數量和質量,這可能是可接受的風險,也可能是不可接受的風險。但安全是安全的,這就是為什麼我對高效無須信任的SNARKs最新進展感到非常興奮的原因,尤其是Matter Labs正在進行構建上。

密碼學

與Groth16相比,最新一代的SNARKs正在使用的是更多經過實踐檢驗的加密原語。 Matter Lab的工作基於FRI,因此甚至可以說是具有後量子的安全性。但是,要完全冷靜下來,應該應用兩種緩解策略:

*與RSA挑戰類似,必須以比實際產品版本更低安全參數來部署大量獎金。如果發現了實際攻擊,研究者會在產品代碼被破壞數年前克服挑戰。

延遲(達成可驗證最終性所需的時間)

二級標題

二級標題

二級標題

隱私

*Optimistic Rollup

當前ZKP計算上很密集。目前,對於1000tx的區塊,我們可以在普通服務器硬件上有20分鐘證明生成時間。正在進行的GPU證明程序實現(Matter Labs和Coda實施)有望將tx速度提高至少10倍。在不遠的將來,專用硬件可能會擁有更高的計算能力。最終,我們期望看到在一分鐘內完成區塊的最終性。

*ZK Rollup

二級標題

隱私

結論

Rollup交易內部的快速確認

二級標題

隱私

結論

快速提取資金