即使是在長期 zkEVM Rollup 成熟後, 為了 Rollup 的整體 liveness 和 safety, Optimistic 依舊會是整個系統中的重要基石。
作者: msfew@Foresight Ventures
原用標題: Foresight Ventures:第二代 Optimistic Rollup
為什麼還需要看 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 .
在 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 Rollup
第二代 Optimistic Rollup 一詞源於 Arbitrum Nitro 的白皮書標題. 略早與 Nitro 發布的 Optimism Bedrock 也算是第二代 Optimistic Rollup.
兩者的整體差異其實不大 (如果你讀 Arbitrum 和 Optimism 的 blog, 甚至會覺得是不是一樣的), 本質上都是與自己的一個新的 major release. 第二代與第一代的差別也無外乎是如下優化:
- 開發者體驗: 更強的 EVM 等效性和兼容性, L1 互操作性…
- 用戶體驗: 更高的吞吐量, 更低的 gas…
但是在設計細節上仍然有取捨的不同, 我們可以在這些差異上看到 Arbitrum 與 Optimism 在構建下一代 Optimistic Rollup 上的推敲.
第二代 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 且與用戶和應用開發者無關, 因此大家可以自行觀看.
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 依舊會是整個系統中的重要基石.
The future of rollup is (still) optimistic .
免責聲明:作為區塊鏈信息平台,本站所發布文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。文章內的信息僅供參考,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。