作者:xpara,Four Pillars研究員;翻譯:金色財經xiaozou
1、證明系統與Optimistic證明
讓我們迴歸區塊鏈的基礎。區塊鏈本質上是一個狀態機,其狀態會隨着交易的變化而改變,而變化後的共享狀態會所有被參與者所用。確保所有參與者就共享狀態達成共識是至關重要的。爲了更好地達成共識並消除對某一方的信任需求,區塊鏈側重於去中心化特性。然而,這種去中心化可能會限制擴展性,使其難以容納更多交易。這些問題構成了區塊鏈的三難困境。
以太坊作爲最早的智能合約區塊鏈之一,引領了rollup的創建。在rollup模式中,執行與以太坊相分離,但仍然存有一個檢查有效性和懲罰惡意活動的系統。建立這個系統的方法有兩種。第一種是optimistic方法,在該方法下,下一個狀態是預先確認的,經過一個緩衝挑戰期再最終確定。第二種方法是利用zk有效性證明,在該方法下,狀態更新可以在低成本的驗證過程中通過一個鏈上zk證明進行驗證。雖然側鏈是另一種選擇,但我將其排除在外,因爲側鏈對以太坊結算的依賴程度很低。
由於實現過程簡便,optimistic證明(又名欺詐證明或錯誤證明)是結算rollup狀態更新的主要可行方法。
1.1證明系統的狀態:ZK和OP
人們一度認爲,zk證明系統將很快佔據主導地位,optimistic證明系統將失去優勢。人們通常期待zk證明系統可以爲rollup提供更低的成本和更快的最終確定性,其在證明生成方面已經取得了重大進展,在基於MIPS、RISC-V和Wasm的通用zkVM構建上進行了各種實驗。這些項目包括ZKM、RiscZero、Succint Labs和Fluent。儘管zk rollup有明顯的好處,但開發具有成本效益的安全版本的挑戰是巨大的。EVM這類虛擬機的更新也存在挑戰,因爲很難在不損壞任何特性的情況下合併新功能。
由於存在這些挑戰,目前在rollup生態系統中最常見的是optimistic證明系統,它佔據了大部分TVL(約爲L2總TVL的75%)。目前還不確定這種主導地位是否會在未來持續下去。然而,已有衆多旨在優化證明系統的舉措取得了很大進展。
1.2 Optimistic證明制度的未來會怎樣?
很多積極的研究和開發正在進行中,目標是改進optimistic證明系統,主要圍繞以下三方面進行:
· 降低成本
· 去中心化排序、挑戰和最終確定過程
· 減少soft finality(軟最終性)和hard finality(硬最終性)
這三個領域都展現出了重大努力,例如最近的Dencun升級,該升級包含了EIP-4844,改進了數據壓縮,以及交互式證明系統的開發。
在深入研究最新進展之前,有必要先來徹底瞭解一下既定概念和當前情況。首先,我們應該來看該領域的發展演變,然後深入研究optimistic證明項目的現狀。
2、Optimistic證明系統的發展史
Optimistic證明系統不是一蹴而就的。有衆多研究人員和開發人員努力構建機器人證明系統,以確保其在實際操作中可以無縫運行,目前該系統已保障180億美元的資金安全。讓我們回顧一下曾經的里程碑。
2.1過去—追溯歷史
Optimistic Rollup最初是由以太坊研究人員John Adler於2019年提出的以太坊的Layer 2擴展解決方案。Optimistic Rollup的核心理念是將計算和數據存儲從以太坊主網轉移到獨立的L2鏈上,同時仍然繼承以太坊的安全保證。開發Optimistic Rollup的主要動機是考慮到以太坊主網上的擁塞和高交易費問題。隨着DeFi協議和NFT的日益普及,以太坊面臨着擴容問題,阻礙用戶體驗和經濟效率。
Optimistic Rollup主要由Arbitrum和Optimism兩個團隊進行實驗和開發。這些rollup旨在通過處理鏈下交易並在以太坊主網上發佈壓縮交易數據和輸出根,爲以太坊提供可擴展性。由於它們爲用戶和dapp降低了成本,以太坊社區迅速採用了這些rollup。
Optimistic Rollup的關鍵特徵是它們採用“optimistic”方法——在對交易進行簡單的有效性檢查後,它們假設所有交易是默認有效的,並且它們依賴欺詐證明機制,挑戰者可以在設定的時間段(通常是7天)內挑戰交易的有效性。如果檢測到欺詐交易,則在鏈上執行欺詐證明以正確方式重新處理交易。這種樂觀的方法允許optimistic rollup在以太坊主網上實現顯著的擴展性改進。
過去曾有很多挑戰。最初,像Optimism這樣的項目使用他們自己修改的EVM(稱爲OVM),這限制了它與EVM的兼容性。這些項目將繼續採用集中的方法來解決回滾和挑戰機制。這種方法帶來了一種安全權衡,因爲交易不是立即結束的,如果有限數量的參與者在挑戰窗口期間檢測到欺詐,則可以回滾交易。
2.2現狀—不斷進步,但也面臨挑戰
Optimistic證明系統的最新發展顯著提高了以太坊L2解決方案(如Arbitrum和Optimism)的效率和可擴展性。除了以太坊的Dencun升級之外,Optimistic Rollup的其他優化也有助於提高效率。例如,Arbitrum一直致力於完善其錯誤證明系統,以確保數據的完整性和安全性。
Optimism通過其Superchain(超級鏈)戰略也取得了實質性進展,該戰略旨在使用OP Stack創建一個由多個L2組成的協調的生態系統。Superchain利用自定義和alt DA解決方案、跨鏈消息傳遞和共享排序來促進無縫互操作性和可擴展性優化。
最近對Optimistic Rollup生態系統的增強已經顯現了從非交互式欺詐證明到交互式欺詐證明的轉變。交互式證明包括一個來回的對話,以有效識別和糾正錯誤的交易。這一變化旨在降低鏈上驗證的計算成本和複雜性。
3、當前格局
讓我們來看一下rollup的當前狀態,重點關注在optimistic證明系統下運行的項目及其發展。
目前,Arbitrum和Optimism主要致力於改進optimistic證明系統。其他項目,如Initia、Dymension和Rollkit,正在開發自己的rollup生態系統框架。
Arbitrum和Optimism正在努力改進欺詐證明的技術,而其他項目也在實現有趣的方法。我們來簡要概述一下他們目前的活動和進展。
3.1 Arbitrum—多輪證明和BoLD
3.1.1 Multi-Round Proof(多輪證明)
Arbitrum的證明系統使用“多輪欺詐證明”方法來驗證交易。這個過程主要發生在鏈下,最終狀態記錄在以太坊的區塊鏈上,以提高透明度。
該系統的核心特徵是“assertion tree(斷言樹)”。使用ETH發佈bond的驗證者對Arbitrum的狀態做出聲明(或“斷言”)。這些斷言形成了一條鏈,每個斷言都建立在上一個斷言之上。然而,當出現相互矛盾的斷言時,斷言樹會分裂出分支,這表明可能存在欺詐。
解決這些爭議涉及到一種名爲“dissection”的交互式證明技術。參與爭議的驗證者系統地縮小了他們的分歧,直到只剩下一個操作。然後該操作在以太坊L1上運行以確定其有效性。
具體步驟如下:
· 兩個驗證者對Arbitrum的狀態存在分歧。
· 他們逐漸將他們的爭議減少到只剩一個計算步驟。
· 然後在以太坊L1上運行此步驟以驗證哪個驗證者是正確的。
Arbitrum的方法以其高效而著稱。通過隔離和檢查有爭議的計算,它避免了在以太坊上重新運行整個交易而帶來的更高成本的過程,正如Optimism的單輪欺詐證明所做的那樣,因爲單輪欺詐證明需要在L1鏈上進行全部計算。
3.1.2 Arbitrum BoLD
BoLD(有界流動性延遲)是專爲Arbitrum鏈上的Optimistic Roolup量身定製的新的爭議解決協議,旨在促進無需許可的驗證。這種機制通過確保爭議在預定的時間窗口內得到解決,從而降低了延遲攻擊相關風險。
BoLD具有幾個關鍵特性,是其功能的重要組成部分。首先,它引入了無需許可的驗證,允許任何誠實的一方驗證並綁定他們的資金,以發佈正確的L2狀態斷言。此特性使誠實的驗證者能夠挑戰並贏得與惡意參與者的爭議。其次,BoLD保證爭議將在固定的時間窗口內解決,目前對Arbitrum One和Nova設置爲一個挑戰期(約6.4天)。此外,解決爭議的最長時間包括最多兩個挑戰期加上安全理事會可能進行干預的兩天寬限期。最後,BoLD支持Arbitrum進入Stage 2 rollup階段,確保任何人都可以驗證該L2狀態並向以太坊提交欺詐證明,這增強了該平臺的去中心化特性和安全性。
至關重要的是,BoLD提倡無需許可的參與,鼓勵任何誠實的一方參與驗證過程。這種包容性旨在通過多樣化參與和減少中心故障點,培養網絡內的更大的彈性。目前,BoLD正處於alpha發佈階段,並部署在公共測試網絡上。它還經過了兩次審計。
3.2 Optimism—錯誤證明VM,Cannon
OP-Stack中的錯誤證明系統旨在挑戰和減輕網絡中的惡意活動。即將推出的錯誤證明虛擬機將是一個關鍵改進。該系統由三個主要部分組成:錯誤證明程序(FPP)、錯誤證明虛擬機(FPVM)和爭議博弈協議。FPP檢查rollup狀態轉換,以驗證L2輸出(L1輸入),整理L1輸出的爭議。這種模塊化架構允許獨立開發和部署多個證明系統和獨特的爭議博弈,極大地增強了系統的靈活性和安全性。
FPVM是該架構中的一個最小且可組合的單元,由於與FPP分離,它可以執行用於證明交易的指令週期,同時不受以太坊協議更新的影響。爭議博弈協議通過等分狀態轉換來協調挑戰機制,將爭議縮小到單個指令驗證,從而允許在L1 EVM上進行有效證明。該系統促進了一個包括各種證明方法的多證明未來,如ZK證明和聚合證明系統。
3.3 Initia—Enshrined OP-Stack,OPinit
Initia是一個Comsos L1區塊鏈,它正在構建一個統一的、相互交織的rollup生態系統。Initia非常類似於以太坊中的rollup生態系統,只不過是專爲rollup自下而上設計的。Initia L1的驗證者爲rollup運行排序器,基於optimistic證明的結算嵌入到L1區塊鏈中。讓我們看看這些rollup是如何工作的,這些rollup是由OPinit Stack構建的,OPinit Stack支持EVM、WasmVM和MoveVM,具有通過IBC實現的原生互操作性。
OPinit Stack是一個旨在啓動基於Initia L1區塊鏈的Minitia L2的框架。OPinit Stack專門使用CosmosSDK構建的,CosmosSDK可幫助構建虛擬機無關的Optimistic Rollup,非常接近於Optimism的Bedrock接口。通過利用Initia L1治理模型,它有效地處理欺詐證明糾紛,確保可靠的交易驗證和糾紛解決。就像Bedrock的挑戰系統一樣,被許可的挑戰者可以刪除未確定的輸出。此外,通過L1提議,可以更改輸出提交者。
OPinit Stack必不可少的兩個主要模—OPHost和OPChild:
· OPHost模塊是爲Initia生態系統中的L1操作而設計的,利用了Cosmos SDK功能。它包括各種消息類型和RPC handler方法,以促進諸如批量提交、橋創建、輸出數據提議和輸出刪除等核心活動。
· OPChild模塊專注於L2操作,提供支持代幣轉移和費用池管理的機制。它還包括特定的消息類型和RPC handler,用於執行消息、確定代幣存儲和啓動從L2到L1的代幣提取,從而確保在Initia架構內實現改進的L2功能。
3.4 Taiko—多輪系統
Taiko是一個默認的optimistic rollup,使用一個多重證明系統。該系統結合了optimistic方法和zk證明的使用。
這個過程從Proposer(提議者)開始,他們從L2交易中構建rollup塊,並將它們推薦給以太坊上的L1 Taiko合約。這些提議區塊被添加到L1合約中,不需要任何有效性證明。然後,Prover(證明者)有機會通過提供bond來挑戰所提議區塊的有效性,這需要質押TAIKO代幣。如果一個區塊在挑戰期內沒有受到挑戰,那麼它將被認爲是有效的,並在L1上被最終確定,並返回證明者的bond。在區塊受到挑戰的情況下,需要zk證明來確認區塊的有效性。正確的Prover,無論是最初的Prover還是挑戰者,除了拿回bond之外還會獲得獎勵。與此同時,錯誤的一方的bond將被罰沒,一部分將被burn(燃燒銷燬)。
有趣的是,Taiko估計大約有1%的區塊需要zk證明,這有助於減少計算開銷,同時仍然提供有效性保證。爲了增強其彈性,Taiko支持PLONK、Halo2和SGX等多個證明後端,以防止潛在的bug或漏洞。這種方法允許dApp設置自己的信任假設和安全級別,展示了Taiko對區塊鏈可擴展性和安全性的貢獻。
3.5其他—Dymension和Rollkit
3.5.1 Dymension
欺詐證明是Dymension生態系統的一個組成部分,旨在確保區塊鏈狀態轉換的完整性。當RollApp(Dymension L1中的Rollup)排序器發佈一個狀態根時,RollApp全部節點監視這些轉換。如果檢測到無效的狀態轉換,這些節點通過收集區塊內直到欺詐性狀態轉換之前的所有狀態轉換列表來生成唯一的欺詐證明交易。
這個集合交易,包括諸如塊高度、交易索引、blob份額、blob包含證明和狀態見證等細節,然後被髮送到Dymension進行驗證。一旦提交,Dymension全節點將驗證數據並重新計算狀態轉換。如果計算的轉換產生的臨時狀態根(ISR)與發佈的狀態跟不同,則欺詐證明被驗證,從而導致爭議狀態的回滾以及責任排序器的罰沒。
當前Dymension主網上的爭議期被設置爲大約12萬個區塊。由於當前每6秒產出一個區塊,因此最終確定時間約爲8天。
3.5.2 Rollkit
Rollkit的狀態欺詐證明通過識別欺詐交易幫助減少區塊鏈網絡中的信任問題。它們用於由全節點和排序器產生的狀態根不匹配的情況下。全節點創建一個在整個網絡上共享的證明以供驗證。如果確認不匹配,則需要採取糾正措施,增強安全性並分散監督。
4、 未來的發展:問題和解決方案
許多人曾經認爲optimistic rollup不如zk rollup。隨着zk rollup越來越多地投入生產,其安全互操作性和更快的最終確定性等優勢衆所周知,人們不僅疑惑,optimistic證明系統是否會地位大跌。我並不這麼認爲,因爲針對optimistic證明系統中的主要問題出現了很多積極進展。
現在,讓我們來看看這些主要問題是什麼,有哪些潛在的解決方案?
· 運營中心化
· 高運營成本
· 緩慢的最終確定性
4.1去中心化—無需許可的驗證
在Optimistic Rollup項目中,排序器的集中化是一個關鍵問題,因爲它涉及到在一個旨在去中心化的系統中具有集中的控制點和信任點。在Optimistic Rollup中,排序器負責對交易進行排序,並將交易聚合到鏈下,再將它們提交給以太坊。這個中心角色賦予了排序器相當大的權力和控制力,這可能會帶來一些中心化風險。
如今的大多數rollup都使用集中式排序器。在這種情況下,通常由單個實體或組織運行排序器,這就可能導致幾個潛在問題。包括OP-Mainnet和Arbitrum在內的大多數當前rollup都沒有完全去中心化的系統。它們在提交交易包以及參與欺詐挑戰系統方面都依賴於某些中央實體。然而,Arbitrum有一個內置方式,如果排序器脫機或實施惡意行爲的話,用戶可以繞過排序器。
最近的Blast回滾事件就是一個很好的例子,可以顯示出中心化的好處和缺點。這一事件凸顯了中心化L2解決方案沒有足夠的用戶退出策略,從而具有很大風險。在Blast關停以及與黑客攻擊相關的交易被刪除時就能很明顯地看出這一點。運營rollup的中央實體可以影響整個生態系統,在本案例中,它幫助找回了6250萬美元。
4.1.2 解決方案1:無需許可的驗證
Arbitrum和Optimism是領先的Optimistic Rollup框架構建者,他們現在正在考慮將無需許可的驗證作爲使Rollup更加去中心化的下一步。他們都準備在今年發佈更新,讓驗證過程變得無需許可。
· Arbitrum:Arbitrum正致力於通過其名爲BoLD(有界流動性延遲)的新驗證協議實現無需許可的驗證。該協議允許任何誠實的一方通過綁定他們的資金來發布正確的L2狀態斷言來參與驗證過程。這消除了依賴中央實體管理驗證者的需要,並使爭議能夠基於狀態的正確性而非驗證者的身份得到解決。
· Optimism:Optimism旨在通過轉換到一個去中心化錯誤驗證系統來實現無需許可的驗證。最初,Optimism依賴於由Optimism安全委員會和Optimism基金會管理的多籤錢包。爲了進一步去中心化,Optimism引入了Cannon,這是一個鏈下錯誤證明系統,目前部署在OP Sepolia上進行測試。通過使用Cannon,Optimism正試圖從一個需要明確許可的系統過渡到一個任何參與者都可以參與交易驗證和衝突解決的系統。該系統允許任何人通過提交由bond支持的取款聲明來參與驗證過程。
4.1.3 解決方案2:排序器的去中心化
排序器(負責構建和提議區塊)的集中特性引起了對中心化的關注。爲了應對這些挑戰,rollup旨在從單個排序器模型過渡到多排序器設置,從而在多個獨立實體之間分配塊驗證和提議的責任。下面是一些可以實現排序器去中心化的方法。
· 共享排序器:將排序外包給第三方服務,如Espresso和Radius。
· 分佈式排序器技術(DST):利用機器羣分配排序任務,提供高容錯性。這可以被認爲類似於爲PoS驗證者構建的DVT解決方案(如Obol網絡)。
不同的rollup可以根據其具體用例擁有不同的優先考量,例如最大程度的去中心化特性、靈活性或地理分佈。例如,像Optimism這樣的通用rollup可能採用更加去中心化的方法,但使用專用排序器集(如DST),而特定應用rollup(如遊戲rollup)可能傾向於中心化模式,但使用共享排序器來確保可靠性並減少停機時間。這一領域還處於早期發展階段。
4.2更低成本—數據可用性和交互式證明系統
Optimistic rollup需要存儲交易來重新構建挑戰過程的狀態。這可能導致較高的數據存儲成本,這構成了optimistic rollup的大部分運營成本。然而,人們正在積極地研究這個問題,解決方案包括應用更多的壓縮技術或使用alt DA(可替代的數據可用性)。此外,交互式證明系統有助於降低挑戰成本,因爲挑戰的計算量大大減少了。
4.2.1 解決方案1:低成本DA
Optimistic rollup正在有效地利用以太坊blobs和其他數據可用性(DA)解決方案(如Celestia)來解決與交易包數據發佈相關的高成本問題。
在以太坊的情況下,optimistic rollup之前將交易數據作爲calldata發佈到主網,這是一個巨大的成本。然而,隨着Dencun升級,它們現在使用叫做blobs的新的數據存儲格式,將總成本降低了90%以上。
除了利用以太坊自身的進步,optimistic rollup還與其他數據可用性決方案(如Avail和Celestia)集成。通過將交易包數據卸載到Celestia,optimistic rollup可以減少對以太坊花費更高昂的存儲的依賴,從而進一步降低與數據發佈相關的成本。這種集成允許rollup在保持成本可控的同時維持高水平的吞吐量和交易速度。
隨着越來越多的使用optimistic證明系統的rollup的推出,alt DA領域現在正得到越來越多的關注。隨着更多的rollup準備發佈,alt DA領域也會出現顯著強化。目前,DA既不構成運營成本的瓶頸,也非擴容瓶頸。
4.2.2 解決方案2:交互式證明系統
在optimistic rollup中,如果懷疑某交易是欺詐性的,網絡上的挑戰者可以挑戰輸出根的有效性。在挑戰期內,必須提供欺詐證明來證明交易的不正確性。如果交易被證明的確是欺詐性的,則在鏈上驗證該證明,從而導致交易無效。這種方法確保只有有爭議交易才需要進行鏈上驗證,從而使大多數交易保持在鏈下。
交互式證明系統邀請參與者在懷疑某交易是欺詐交易時生成並提交欺詐證明。管理rollup的智能合約根據排序器提交的狀態根評估這些證明。如果發現偏差,則棄用不正確的狀態,並將系統恢復到先前的有效狀態。這種方法確保了有效的驗證,而不會給以太坊網絡帶來不必要的計算負擔。目前,這種計算是在鏈上執行的,這可能會非常昂貴。對於Arbitrum來說,挑戰所需的計算是在鏈下完成的,最終結果發佈在鏈上。但該成本可能微乎其微,因爲在目前的optimistic rollup中幾乎還沒有什麼挑戰。
4.3 緩慢的最終確定性—更快的執行和混合證明系統
Optimistic rollup有兩種類型的最終確定性——軟確定性和快速確定性。軟確定性是指排序器執行狀態轉換時的初始狀態,與此同時在以太坊上發佈批量交易。此時,交易被認爲是“軟確定性”的,rollup上的用戶和應用程序可以放心地依賴此交易。然而,存在一個挑戰期(通常在7天左右),在此期間任何人都可以提交“欺詐證明”來質疑該批交易的有效性。如果在挑戰期內沒有提交欺詐證明,則該交易包將實現硬確定性,不能被回滾或挑戰。通常,原生橋需要硬確定性來轉移資產。
在構建橋或多鏈dapp時,速度緩慢的軟確定性和硬確定性都可能導致問題。這個問題正在通過更快的執行和混合證明系統來解決。
4.3.1 解決方案1:更快的執行
就軟確定性而言,這一過程涉及到執行狀態轉換並將交易包存儲在以太坊中。由於EVM規範不支持並行執行和數據庫優化,執行過程受到了限制。然而,像MegaETH和Heiko這樣的項目正在構建並行執行環境,使用optimistic證明系統。
此外,rollup正試圖通過更短的區塊時間來更快地存儲交易包。對於Arbitrum來說,通過每250毫秒生成一個區塊,或者在可配置的Orbit鏈上每100毫秒生成一個區塊,Arbitrum確保了快速的交易確認。此外,Arbitrum的設計利用了一種獨特的“排序”模型,而非傳統的“區塊構建”方法,這種獨特的排序模型通過消除交易在內存池中等待的需要,實現了更快的處理速度。同時還可以移除不良MEV。
4.3.2 解決方案2:混合證明系統
混合證明系統,特別是那些結合使用ZK證明與optimistic rollup的混合證明系統,通過減少結論驗證所需的時間,顯著提高了區塊鏈交易的最終確定性。Optimistic rollup(例如在Optimism的OP Stack中使用的那些)本質上依賴於這樣一個假設:除非受到挑戰,否則交易就是有效的。這讓爭議或挑戰窗口必不可少,可以對潛在無效的交易進行爭議處理。然而,這個挑戰期會導致交易確定性的延遲,因爲挑戰期必須足夠長,才能確保可靠驗證並支持任何潛在挑戰。
Zeth是一個建立在RISC Zero zkVM上的ZK區塊prover,它通過提供加密證據來證明交易區塊是正確的,而不會透露關於交易本身的任何細節信息,從而支持對交易進行即時的有效性檢查。這減少了對optimistic rollup所需的長期爭議窗口的依賴,並大大縮短了最終確定時間。
像Zeth這樣的工具確保了交易排序和數據可用性機制得到可靠的維護,並且通過將挑戰期從可能幾天減少到幾小時甚至幾分鐘,提高L2解決方案(如Optimism)的效率。像ZKM這樣的項目也爲Metis開發了混合證明系統。
5、展望未來—Optimistic Rollup會被取代嗎?
在我看來,Optimistic Rollup不會很快被取代。有許多改進正在進行中,並且出於簡潔性它也可能被其他生態系統所採用。在以後的文章中,我將嘗試深入研究“ZK證明系統的狀態”,討論其最近的發展和即將發佈的版本,並與optimistic rollup進行對比。然而,像Arbitrum Orbit和OP-Stack這樣的框架的採用之勢正在加速,我希望每個生態系統中都有更好的基礎設施和工具,它們之間有更好的協調。
我在rollup領域看到的一個問題是就擴容問題。像Sei、Sui和Solana這樣的L1項目正在開發基礎設施,以實現可靠的並行交易執行和數據庫優化,旨在使區塊鏈更容易被大衆使用。當前的rollup可能無法處理像Sui那樣多的交易量並實現快速的最終確定性。然而,隨着像Fuel Network、MegaETH和Heiko這樣的項目使並行執行成爲可能,我們可以期待很快就會在rollup領域看到性能改進。