撰文:Ed Felten,Offchain Labs 共同創辦人
編譯:Luffy,Foresight News
Arbitrum 是採用Optimistic Rollup 的以太坊擴容協議。人們經常問我們Arbitrum 為什麼選擇Optimistic,以及我們是否期望Arbitrum 轉向ZK 證明。我以前回答過這個問題,但那是差不多兩年前的事了。這是我目前的個人觀點,其他人可能不同意。
在設計系統時,我堅信實用主義。我們不應該迷戀一種技術方法然後不惜一切代價應用它,而應該問哪種方法最能滿足用戶和開發者的需求。最好的方法可能會隨著時間的推移而改變,如果是這樣,我們也願意做出改變。
我們為Arbitrum 選擇Optimistic 是出於務實的考慮,我相信Optimistic 證明仍然是比ZK 證明更好的選擇,它更能滿足用戶和開發者的需求。簡單來說,Optimistic 比ZK 更便宜、更簡單、更有彈性。我將在下面逐一闡述這些主張。
也就是說,如果情況發生變化並且ZK 成為更好的選擇,我認為Arbitrum 應該改變。但我預計這種情況不會很快發生。
Optimistic 成本較低
Optimistic 證明的美妙之處在於,對於誠實的各方來說,證明成本始終為零。在常見情況下,不需要任何證據,因為只發布真實的聲明,永遠不會受到質疑。如果存在挑戰,解決挑戰就會產生一些成本。但是每個不誠實的一方都會輸掉挑戰,他們將失去質押份額,這些可以用來支付挑戰的成本。
Optimistic 協定依賴多方執行,以便他們可以檢查任何發布的有關執行結果的聲明。換句話說,鏈需要有節點。但任何具有重要用途的鏈都會有大量的普通節點,由用戶或基礎設施提供者運行,以支援鏈的活動。這些節點自然都會充當Optimistic 協定的瞭望塔。
相較之下,ZK 要求為每個發布的聲明產生加密證明,並且證明必須在Layer 1 進行驗證。隨著時間推移,ZK 研究人員已經降低了產生這些證明的成本,但永遠無法降低到零。
事實上,與Optimistic 執行相比,ZK 證明的成本相當高。如果智慧合約執行位元與運算,則Optimistic 系統的每個驗證器只會執行位元與運算。 ZK 證明者需要執行位元與指令,然後執行大量昂貴的密碼操作來證明位元與指令的結果。如果Alice 和Bob 去買水果,Alice 買了一顆葡萄,Bob 買了一顆葡萄和一個西瓜,那麼Alice 的成本永遠低於鮑勃。
在Optimistic Rollup 和ZK Rollup 中,普通節點需要執行每筆交易,以便了解鏈的演化歷史,所以這部分沒有什麼不同。
所以,Optimistic 的成本較低。
Optimistic 更簡單
在軟體工程中,尤其是在安全工程中,越簡單越好。複雜性增加了安全風險,並使一切變得更慢、更困難。
毫無疑問,Optimistic 證明比ZK 證明更簡單。 Optimistic 證明很容易被開發人員理解,而ZK 證明依賴複雜的數學以及深奧而微妙的密碼學定理,而這些定理很少有人理解。即使是教授密碼學的教授也必須努力理解ZK 證明系統。
Optimistic 更靈活
證明對於任何L2 都是必要的。但證明並不是用戶和開發人員想要的唯一。他們想要新功能,而這些功能可以更輕鬆、更快速地建立在Optimistic 系統上。
一個很好的例子是Arbitrum Stylus,它允許開發人員使用Rust 和C++ 等通用語言編寫智能合約,並在WASM 虛擬機中運行這些程序,它們與EVM 合約在同一條鏈上,具有完全的可組合性。像Stylus 這樣的功能建構起來具有挑戰性,需要將兩台虛擬機器整合到一個無縫系統中。
在Optimistic 系統中可以建立此類功能的原因之一是Optimistic 實作可以使用標準程式語言和工具,這使得開發軟體變得更加容易。相較之下,ZK 需要不同的程式設計工具,要么手動建立ZK 電路,要么使用某些中間編譯器將所有內容簡化為電路。客製化工具和程式方法使用起來總是更慢、更麻煩,這意味著整個系統的發展進度更慢。
Optimistic 系統的簡單效能轉化為更大的靈活性以及更快的演化速度。
最終確定時間相同
人們經常詢問Optimistic Rollup 和ZK Rollups 的最終確定時間,答案是它們是相同的。
當交易的結果完全確定且協議中的所有參與者都知道結果時,交易就具有了最終性。 Rollup 鏈,無論是Optimistic 鍊還是ZK 鏈,都分兩個階段運行:首先,排序器發布並記錄已到達鏈的交易序列;其次,執行結算層按順序逐筆計算並證明執行交易的結果。當交易在交易序列中具有最終確定的位置時,最終性就達成了,此時交易的結果完全由最終確定的交易序列決定,並且每個人都知道該結果。
因為最終性是由發佈到以太坊的排序器的輸出決定的(這一點,Optimistic 和ZK 過程相同),而不是證明者,所以Optimistic 和ZK 系統具有完全相同的最終性行為。
跨鏈通訊時間
ZK 具有先天優勢的地方在於跨鏈通訊的延遲,即一條鏈上的合約需要多長時間才能將訊息無需信任地發送到另一條鏈上的合約。
可替代資產(ETH 或代幣)的跨鏈轉移通常透過快速橋接服務進行,其操作不依賴Optimistic 證明與ZK 證明,因此普通用戶不會看到跨鏈資產轉移時間有任何差異。
對於其他類型的跨鏈訊息,ZK 可以更快,因為ZK 鏈可以比Optimistic 鏈更快地將其狀態檢查點(checkpoint)到父鏈(即L2 的以太坊)。這意味著,如果發送鏈使用ZK 證明,則對於資產轉移以外的用例,去信任的跨鏈訊息傳遞將會更快。
目前還不清楚這種差異到底有多重要。如今,絕大多數跨鏈活動都是資產轉移,使用者體驗沒有太大差異。
結論
對我來說,答案很明確:Optimistic 的優勢(低成本、簡單性和靈活性)比ZK 的優勢(非資產轉移跨鏈功能的速度)更為突出。
這就是為什麼Arbitrum 仍在使用Optimistic 證明。