Rollup 系統以「制衡」為基礎,從而保證以太坊的主權鏈地位。而 Rollup 的實際運作方式、呈現形式以及魅力所在則都是需要深入研究的。本文由Mechanism Capital 於 2021 年 6 月 1 日發表¹,作者為 Benjamin Simon,由動區專欄作者 以太坊愛好者 編譯、撰寫及整理。
(前情提要:Layer 2 》Uniswap v3 已部署至 Arbitrum 主網!目前限「白名單開發者」使用)
(背景補充:新手科普|初識 Layer2 第二層網路解決方案,能解決以太坊燃眉之急?)
我們先來打個比方。
想像一下,我們回到了國中數學課堂上。「殘忍」的數學老師給我們每人發了一張考券,上面列了 100 道數字很大的除法題。我們的任務是解出盡可能多的題。但是,這裡面有個陷阱:
我們只能將最終的解和每個計算步驟寫在一張答題紙上。幾分鐘後,我們有了一種不祥之感,越想越覺得這個任務荒謬至極。算完幾道題之後,這張答題紙就已經字亂如麻了。
這個噩夢般的故事與 Rollup 有什麼關係?
在這個故事裡,答題紙就是以太坊區塊,算術題就是智能合約交易。以太坊目前非常擁堵,每個區塊內要包含的交易太多了。更糟糕的是,絕大多數交易都是計算密集型的,例如閃電貸和通過聚合器路由的交易,隨著DeFi 興起,簡單轉帳和支付已經成了過去時。
這就是問題的關鍵所在。就像數學老師要求我們將每個計算步驟都寫在一張答題紙上那樣,以太坊也必須處理並記錄每個事務的每一筆計算。
直到 Rollup 出現。
Rollup 將計算轉移到鏈下,只將最少的事務數據存儲在鏈上。從這個基本意義上來講,Rollup 就是以太坊的草稿紙。Rollup 負責所有複雜的數據處理,讓每個以太坊區塊都能容納(疊卷)成倍多的智能合約事務。
這個比喻不僅直觀呈現了 Rollup 旨在解決的問題(因計算過載而導致的網路擁堵),還讓我們大概了解了Rollup 解決方案需要做到什麼(將計算轉移到鏈下)。但是,Rollup 的實際運作方式、呈現形式以及魅力所在都是我們需要深入研究的。
什麼是Rollup?
Rollup 本質上是一條獨立的區塊鏈,但是進行了一些修改。和以太坊一樣,Rollup 協議也使用「虛擬機」來執行智能合約程式碼。
Rollup 的虛擬機獨立於以太坊自己的虛擬機(EVM)運行,但是由以太坊上的智能合約管理。因此,這種聯繫可以讓 Rollup 和以太坊之間進行通信。Rollup 負責執行事務並處理數據,以太坊負責接收並存儲結果(譯者註:其實以太坊還儲存 Rollup 事務的數據,不僅只儲存結果)。²
從技術層面來說,Rollup 鏈和傳統區塊鏈之間的主要區別在於出塊方式。
通常來說,區塊鏈由一個分佈式參與者網路(礦工或驗證者,具體取決於鏈的類型)維護。這些參與方通過共識創建區塊。簡單來說,參與方通過投票決定如何處理一組交易(如何創建下一個區塊)。獲得多數支持的區塊將被永遠寫到區塊鏈上。
相比之下,Rollup 鏈不按多數原則運行。監控 Rollup 狀態的一方可以將「斷言」發送至以太坊,來說明交易是如何處理的。重要的是,以太坊將決定是否接受這個斷言,無論這個斷言是否獲得了 Rollup上多數參與方的支持。³ 這通常意味著,在 Rollup 上,實際只有一方負責處理交易和生成區塊。⁴(譯者註:這一點也不是絕對的)
等等…… Rollup 是中心化的?
Rollup 之所以能夠如此高效地處理交易,一部分原因就在於它在出塊方面的中心化特性。但是,這也提出了一個令人擔憂的問題:在缺乏多數決共識的情況下,Rollup 如何確保出塊的正確性 —— 如果區塊創建者作惡怎麼辦?
由於密碼學貨幣用戶已經習慣了基於共識的區塊鏈,這種中心化會令他們感到困惑。確實,如果這篇文章到此結束,我們可能會誤以為 Rollup 只是「由單個參與方複製的數據庫」,就像 Avalanche 的聯合創辦人 Kevin Seqniqi 最近在推特上所言。
實際上,我們很快就會明白,與其說人們對 Rollup 的中心化特性的擔憂是錯誤的,不如說是一種邏輯誤導。
通常情況下,缺乏強大共識機制的中心化區塊鏈確實容易遭到破壞和惡意操控。但是,就 Rollup 解決方案而言,缺乏去中心化並不會影響它們的安全性和完整性。5為了弄清楚背後的原因,我們需要更深入理解 Rollup 的原理。
數據可得性的重要性
回想一下文章開頭提到的數學考券。草稿紙就是我們的救命稻草。只要將計算過程寫在草稿紙上,我們就只需在答題紙上寫下問題和解。Rollup 就好比是草稿紙,「將智能合約計算轉移到鏈下,只將最少的事務數據存儲在鏈上」。
事實上,後半句話(將事務數據存儲在鏈上)對於Rollup 的運作方式來說至關重要。就 Rollup 而言,只有計算(數據處理)會被轉移到鏈下。Rollup 所處理的每筆事務的輸入數據(即「調用數據」)仍存儲在以太坊上。
將事務數據保存在鏈上為何如此重要?再拿數學考券的例子來看,我們最後交給老師的答題紙上只有數學題和解。這樣一來,即使我們沒有將每個計算步驟寫上去,老師也可以檢查我們的作業情況。同理,永恆鏈上數據可得性意味著,Rollup 上的任何一個計算都可由以太坊基礎層重複執行(譯者註:吹毛求疵來說,這話是不對的。以太坊單筆事務可執行的計算量是有上限的)。
簡而言之,Rollup 的鏈上數據可得性引入了內置審查流程。在將事務永久寫入帳本之前,以太坊可以再次確認Rollup上處理的事務的完整性——就像是美國最高法院的司法審查權。⁶
局限性優勢
Rollup 的主要優勢就是其局限性。Rollup 只能將交易發送至基礎層,不能強制基礎層接受,因為以太坊可以在必要時推翻任何 Rollup 事務。由於存在審查過程,Rollup 事務不具備真正的終局性。
了解了 Rollup 的局限性後,我們回到上文提出的中心化問題。Rollup 的單方出塊機制確實存在做惡的可能性。然而,一旦出現這種情況,以太坊會在完成審查流程後拒絕相關交易,並懲罰出塊者。⁷
對於 Optimistic Rollup 和 ZK Rollup 來說,「審查流程」 的具體運作方式不同(詳情請參見此處)。然而,無論是哪種 Rollup,審查流程遠比以太坊自己處理交易(不依賴於 Rollup)高效得多。
總之,Rollup 系統以「制衡」為基礎,從而保證以太坊的主權鏈地位。
以太坊的共識是事實的最終仲裁者。請注意,側鏈的情況完全不同。
側鏈不像 Rollup 那樣存在審查流程,而是另有一套獨立的共識機制來處理交易。側鏈可以直接賦予交易終局性,而 Rollup 上的交易要等到以太坊確認後才能獲得終局性。
因此,側鏈需要更多信任假設,因為它們無法從以太坊的去中心化安全性中受益。事實上,我認為側鏈更像是兼容EVM 的 Layer 1 ,而非 Rollup。
結論
總的來說:Rollup 將計算轉移到鏈下,從而釋放更多鏈上空間。鏈上數據可得性很重要,因為它使得以太坊可以復核 Rollup 交易的完整性。反之,審查流程可以檢查 Rollup 出塊,免去對共識機制的需求。
Rollup 最終可以讓以太坊魚和熊掌兼得:在釋放成倍多鏈上空間的同時不破壞網路的去中心化安全性。至少在我看來,這正是我們所期望的優雅的可擴展性方案。
感謝 t11s 和 Hasu 富有見地的評論和建議。
腳註
- 注:我最近開始在 Deribit Insights 上連載關於 Rollup 的系列文章。其中,Part 1 探索了 ZK Rollup 和 Optimistic Rollup 之間的差異。很多讀者希望我能推薦一篇關於 Rollup 的非技術入門文章,因為我的文章需要讀者有一定的背景知識。實際上,確實有一些科普性文章會帶來很大幫助(參見文章1、2、3)。但是,我還沒有看到一篇沒有任何技術術語的針對初學者的全面介紹。我寫這篇文章的目的就是為了填補這一空缺。
- 順便一提,這種聯繫是通過某個叫作「狀態根」的東西在鏈上維護的(狀態根追蹤 Rollup 的內部狀態,包括帳戶餘額、事務和程式碼等等)。關於更多詳細資訊,請閱讀 Vitalik 的介紹。
- 事實上,在 Optimistic Rollup 中,即使其他網路參與者都反對,出塊一方也可以(正確!)處理事務。這就是 Optimistic Rollup 的 1/n 誠實參與者假設(如果你想要深入了解這部分內容,請閱讀這篇文章的“Secuirty Considerations” 一節)。
- Optimistic Rollup 和ZK Rollup 對出塊者的職責要求不同。如果你想要了解更多相關內容,請閱讀這篇文章的“Secuirty Considerations” 一節。
- Haseeb Qureshi 有一篇關於去中心化的文章很發人深省。Qureshi 的論點是,去中心化本身不一定就是好的,中心化本身也不一定就是壞的。雖然 Qureshi 在這篇文章中沒有討論 Rollup,他的論據有很高的相關性。
- 在 1803 年的馬伯利訴麥迪遜案中,馬歇爾法院判定最高法院有權推翻它認為違憲的國會立法,有效地賦予了最高法院對所有立法事項的最終審查權。
- 事實上,ZK Rollup 通過密碼學方式防止其出塊者在處理事務時作惡,因為相關事務的零知識證明本身是無效的。
📍相關報導📍
連 V 神都沒想到「轉型以太坊 2.0 要那麼久」;機構資金正流入ETH,AUM佔比創歷史!
專欄觀點|ETH 2.0 本就是一種形式上的 rollup
歷史最大變革,面對 ETH2.0、EIP-1559、Layer2「以太坊經濟模型」將有何影響?
讓動區 Telegram 新聞頻道再次強大!!立即加入獲得第一手區塊鏈、加密貨幣新聞報導。
LINE 與 Messenger 不定期為大家服務