儘管 Vitalik 早在幾年前就認定了zkEVM Rollup 是未來,但 Optimistic Rollup 仍是目前 Rollup 生態的絕對主力,擁有80% Layer2 的市場佔有率以及前十 Layer2 方案的半壁江山。
(背景補充:V神點名:ZK Rollups或成以太坊主要Layer 2方案!比Optimistic快 )
0.為什麼還需要看Optimistic Rollup?
a) OP 還是ZK?
儘管 Vitalik 早在幾年前就認定了 zkEVM Rollup 是未來, 同時各家zkEVM (Scroll, zkSync, Hermez, Consensys) 也如雨後春筍一般冒出來,但Optimistic Rollup 仍是目前 Rollup 生態的絕對主力,擁有80% Layer2 的市場佔有率以及前十 Layer2 方案的半壁江山。
zkEVM Rollup 的終局性擴容方案的存在,會讓 Optimistic Rollup 完全被淘汰嗎?
- Optimistic Rollup 和 zkEVM Rollup 並非水火不容的存在, 而是在長期內( 甚至永久性的時間內) 會是互補的方案。
- 對於 App-rollup 來說,Optimistic 機制在開發與部署上仍然是最簡潔易用的方案。
b) OP 和ZK 未成熟
Optimistic Rollup 的開發進度領先 zkEVM Rollup 兩年左右。但我們 Optimistic Rollup 的標竿Arbitrum 與Optimism 都沒有在主網完全上線開放的正式版 Fraud Proof。
據 Vitalik 所說, 以太坊基金會 PSE 的 zkEVM 電路有 34469 行程式碼。這龐大的程式碼量需要非常漫長的開發和持續的測試來進行打磨。我們在幾年內都無法完全依賴 ZK 系統所帶來的安全性。
c) OP + ZK
早在半年以前,Optimism 的 Kelvin 就開始在推特上頻繁地討論 Optimism 結合 zkVM 的可行性。
他說 Optimism 的 Bedrock 不會只是Optimistic Rollup 的客戶端, 而是 Rollup 客戶端。為了完全保證 Rollup 的整體安全性,客戶端( 或許和 Arbitrum 最近的收購有關係?) 與證明的多樣性(Validity Proof 與Fraud Proof) 才是 Rollup 真正的未來。
Vitalik 則完善了Kelvin 的方案,認為可以通過(OP + ZK) + Governance 的2 + 1 組合來實現可靠的Rollup。
延伸閱讀:Optimism核心開發者:Bedrock 升級使讓Optimistic 和 ZK 間的無縫過渡成為可能
在zkEVM 完全穩定和成熟前, 工作流程如下:
- 發佈區塊
- 等待 24 小時
- a) 如果期間沒有欺詐挑戰,發布 ZKP,完全Finalize 區塊。b) 如果有挑戰,則引入Governance 通過 2 of 3 的模型來裁定最終結果。
在 zkEVM 穩定與成熟後:
- 發佈區塊
- 定期發布 ZKP。
- a) 如果 ZKP 在指定期間正常發布, 則依其為準。b) 如果 ZKP 並未在期間正常發布(Prover failure 或有bug),則先引入Optimistic 機制,,直到 ZK 機制恢復。
這兩種方案都需要 Optimistic 機制的存在, 從而保證整個 Rollup 系統的 liveness 和 safety。
因此 Optimistic 機制的發展仍然是 Rollup 宇宙版圖中的重頭戲。
延伸閱讀:Optimistic的誕生故事:3人、5年、90億美元估值!
1.第二代Optimistic Rollup
第二代 Optimistic Rollup 一詞源於 Arbitrum Nitro 的白皮書標題。略早與 Nitro 發布的 Optimism Bedrock 也算是第二代 Optimistic Rollup。
兩者的整體差異其實不大 (如果你讀 Arbitrum 和 Optimism 的 blog,甚至會覺得是不是一樣的),本質上都是與自己的一個新的 major release。第二代與第一代的差別也無外乎是如下優化:
- 開發者體驗 : 更強的 EVM 等效性和兼容性, L1 互操作性…
- 用戶體驗 : 更高的吞吐量,更低的 gas…
但是在設計細節上仍然有取捨的不同,我們可以在這些差異上看到 Arbitrum 與 Optimism 在構建下一代 Optimistic Rollup 上的推敲。
2.第二代 Optimistic Rollup 設計選型對比
Arbitrum 與 Optimism 的開發人員分別對兩者的架構進行了比較和對比,這裡我們就僅討論與用戶或應用開發者有關的點:
a) 區塊時間
區塊時間設計的選擇主要是兩種 : 固定時間或者可變時間。可以理解成 PoS 和 PoW 的以太坊的區別。
- Optimism: 固定時間 (2 秒 )
固定時間可以保證使用區塊 (block.number) 來作為時間戳的合約的穩定性,比如 Sushiswap 的Masterchef 合約。這些合約不用時間戳可能是考慮到礦工對時間戳有控制權( 算是Selfish mining 或者MEV?)。
第一代的 Optimism 採用了可變時間+ 1 tx/block 的設計,因此由於時間計算的問題,Stargate 的獎勵發放就出現了一些問題。
對於 1tx/block 的老設計,Optimism 認為由於區塊頭的存在,儲存鏈的開銷太大了,除此之外狀態根也需要頻繁更新,成本過高。
- Arbitrum: 可變時間
可變時間設計主要是為了減小 tx 確認的延遲。目前一秒最多可以創建 4 個區塊,如果沒有 tx 則跳過,因此是可變時間。
對於以 block。number 進行計時的合約,Arbitrum 上 block.number 會直接返回以太坊的區塊編號,因此不會有穩定性和適配上的問題。除此之外 Arbitrum 也提供了相應的預編譯來提供 L2 的區塊編號。
b) Geth 的定位
Geth 是以太坊的執行客戶端, 佔據了約 80% 的節點總量。
- Optimism : 作為獨立引擎
將Geth 作為獨立執行引擎,而非庫處理。好處就是可以完全重用之前的基礎設施,同時可以無縫切換到其他執行客戶端。
- Arbitrum: 作為庫
由於 Arbitrum 有更多的 L2 特定狀態,例如 L1 和 L2 的 gas 定價,以及retryable ticket,因此將Geth 作為庫處理,使用 hooks 進行調用。
c) L1-L2 消息inclusion 延遲
- Optimism : ~2 分鐘
Bedrock 的延遲是幾個 L1 塊的長度,最壞的情況是延遲十分鐘。
Bedrock 的架構更像一個 L1,極端情況下可以通過 reorg 自己來應對 L1 的 reorg。
超過 10 分鐘沒被 L2 包含的 tx 就直接被判定為無效了。
- Arbitrum : 10 分鐘
Nitro 延遲十分鐘處理,如果超過十分鐘,可以通過L1 調用來強制包含tx。
Nitro 的目標是為了用戶體驗,讓L2 永遠不需要reorg。
兩者都是在不同角度對用戶體驗進行了取捨。
d) L1-L2 消息重試機制
消息重試機制主要就是為了解決L1-L2 跨鏈過程中, L1 確認了,L2 失敗的問題。
- Optimism: 合約中實現
開發者可以參考 L1 Optimism Portal 的實現,或者在合約內定義自己的重試機制。
- Arbitrum: 節點中實現
重試機制在 ArbOS 節點中實現。
e) L2 費用算法
L2 的gas 計算基本上就是 L2 execution gas + L1 calldata cost。
- Optimism : 重用 EIP-1559
好處就是錢包和其他基礎設施可以無縫接入。
Optimism 對 L2 gas 的計算基本上是將 L2 execution gas 的成本壓到了最低 (99% 都是calldata cost)。
- Arbitrum: 使用定制系統
由於之前提到的可變區塊時間設計,因此gas 定價更加複雜,所以沒有採用 EIP-1559。
f) L1 費用算法
- Optimism:
L1 gas 水平到 L2 的傳輸幾乎是即時的。目前Sequencer 的收益基本完全來源於L1 gas 費用的乘數,EIP-4844 後,它們的收入會來自MEV。
未來會通過 L1-L2 的消息傳遞來傳輸這部分數據,從而保證安全性( 成為協議一部分,且可被挑戰)。
- Arbitrum:
Arbitrum 的 L1 費用算法通過 L1 gas 的平均值來收取費用,且通過自己的控制系統來從實際支付的費用中來獲取回饋,從而保證 L1 gas 收取和支出的穩定。
整體策略中也包括,為了避免 Sequencer 過度收費,因此在gas 價格低時才發布batch。
除此之外,兩者也探討了很多具體架構和技術細節上的區別,但內容過於 domain-specific 且與用戶和應用開發者無關,因此大家可以自行觀看。
3.Rollup 的未來依然是 Optimistic 的
最近 zkEVM Rollup 以及整個ZK 生態的熱度確實非常高 (Devcon Bogota 基本是ZK + MEV + 其他), 以至於大多數以太坊研究者或多或少忽視了 Optimistic Rollup 的發展,以及在第二代中這些有趣的設計細節。
Optimistic 作為 Rollup 的領頭部隊,正在 L2 UX 和 DX 上進行試驗性的開拓和開創性的創新。它們所做的可以為 zkEVM Rollup 鋪好地基。
在未來兩到三年,甚至更長的時間內,zkEVM Rollup 完全可用之前,Rollup 的主導地位仍會是由Optimistic 佔據,且80% 的新 Rollup (App-rollup) 則會採用更為成熟和可用的 Optimistic 機制。
即使是在長期 zkEVM Rollup 成熟後,為了Rollup 的整體 liveness 和 safety,Optimistic 依舊會是整個系統中的重要基石。
Rollup 的未來(仍然)是 Optimistic 的。
📍相關報導📍
Optimism核心開發者:Bedrock 升級使讓Optimistic 和 ZK 間的無縫過渡成為可能