科普:白話解讀“Rollups”

來源 | Mechanism Capital

作者 | Benjamin Simon

日期 | 2021 年 6 月 1 日 [1]

介紹

本文就從一個比喻開始吧。

想象一下我們回到了中學的數學課上。我們的老師,和其他中學數學老師一樣殘忍,給我們列出了一百道長除法問題,每道題的數字都很大。我們的任務是解決儘可能多的問題。但是要注意,我們必須將最終答案和每個計算步驟都寫在一張紙上。幾分鐘內,我們可能就會眉頭一皺,意識到問題並不簡單。一張紙所能容納的,除了所有完全解出的答案之外,不可能再包含計算步驟。

這個卡夫卡式的故事與 Rollups 有什麼關聯呢?

在這個比喻中,這張紙就是一個以太坊區塊,數學問題是智能合約事務。目前的以太坊非常擁擠。每個區塊中需要包含的交易太多了。雪上加霜的是,這些交易中的大多數都需要大量計算,例如閃電貸或經過聚合器路由的交易。前 DeFi 時代的簡單轉賬和支付模式已經是過去時了。

這就是問題的關鍵。正如比喻中的數學老師一樣,要求我們把長除法的每一行都塞在一張紙的空間里,以太坊也必須處理和記錄每筆交易的每一步計算。

直到 Rollups 的出現。

Rollups 將計算移到了鏈下進行,同時只在鏈上存儲最少的交易數據。從這個基本意義來說,Rollups 是以太坊的草稿紙,負責處理所有雜亂的數據,允許在單個以太坊區塊內“匯總”幾何倍數的智能合約交易。

這個比喻有助於釐清 Rollups 旨在解決的問題 (“由於計算過載導致的網絡擁堵”)。它甚至提供了 Rollups 解決方案必備條件的大致概念 (“計算移至鏈下”)。但至於 Rollups 實際的工作方式,它們是什麼模樣,以及為什麼能讓像我這樣的人感到如此興奮——我們還需要深入探討。

什麼是 Rollup?

Rollup 本質上是一條獨立的區塊鏈,但進行了修改。與以太坊一樣,Rollup 協議具有執行智能合約代碼的“虛擬機”。Rollup 的虛擬機獨立於以太坊的虛擬機 (即“EVM”) 運行,但由以太坊智能合約管理。這種連接使得 Rollups 能夠和以太坊進行通信。Rollup 執行交易並處理數據,以太坊接收並存儲結果。[2]

從技術層面來說,Rollup 鏈和其他傳統區塊鏈的關鍵區別在於新區塊的生產方式。

通常來說,區塊鏈是由分佈式網絡中的不同參與者來進行維護 (“礦工”或“驗證者”)。這些參與方通過共識機制來共同生產區塊。簡單來說,參與方投票決定如何處理一組交易,或者說如何構建下一個區塊。獲得大多數支持的區塊就會被永久寫進區塊鏈。

相比之下,Rollup 鏈不遵循“大多數”規則運行。相反,監控 Rollup 狀態的一方可以將所謂的“斷言” (assertion) 發送回以太坊,說明交易應該如何處理。重要的是,以太坊將接受或拒絕此斷言,無論其他 Rollup 參與方的大多數是否支持此斷言[3]。在實踐中,這通常意味着 Rollup 中的單個參與方被指定了處理交易和生成區塊的任務。[4]

等等……Rollup是中心化的?

Rollup 區塊生產的中心化特性是其能夠如此高效處理交易的原因之一。但這也引發了一個顯而易見且令人擔憂的問題:如果沒有大多數共識,Rollup 如何確保區塊生產的正確性?如果區塊生產者碰巧是惡意的,又會發生什麼?

這種中心化不免使習慣了基於共識的區塊鏈用戶感到困惑。事實上,如果故事到此結束,我們可能會 (錯誤地) 得出結論:Rollups 只是“由單個參與方再造的數據庫”,正如 Avalanche 的聯合創始人 Kevin Seqniqi 最近在推特上所說。

實際上,正如我們將看到的,與其說對中心化的指控是錯誤的,不如說是邏輯上的誤導。通常情況下,共識機制不夠強大的中心化區塊鏈很容易遭受賄賂和惡意攻擊的影響。然而,在 Rollups 的特例中,不夠去中心化實際上並不會破壞其安全性和完整性。[5] 要理解其中的原因,我們需要再進一步。

數據可用性的重要性

回想一下我們開頭的數學作業。用來計算的草稿紙是我們的救命稻草,因為它使我們可以在答題紙上只寫問題及其答案。將 Rollups 與草稿紙進行比較,我們則稱其“將智能合約計算移到鏈下,同時僅在鏈上存儲最少的交易數據。”

事實上,鏈上交易數據的存儲對於 Rollups 的運作至關重要。在 Rollups 中,只有計算、數據處理在鏈下,處理的每筆交易仍將其輸入數據 (即“calldata”) 存儲在以太坊區塊鏈上。

為什麼將交易數據保存在鏈上這麼重要?在數學作業的比喻中,我們交給老師的最後一張紙包括長除法問題及其答案。以便老師事後檢查我們的作業,即使我們沒有記錄單獨的計算步驟。同樣,鏈上數據持續的可用性意味着以太坊基礎層可以重複 Rollups 上的任何計算。

簡而言之,Rollups 的鏈上數據可用性允許內置的審驗過程。以太坊可以對 Rollups 鏈上處理的交易的正確性進行雙重檢查,然後再將其永久寫入賬本,類似美國最高法院的司法審查權。[6]

局限性也是一種優勢

因此,Rollups 的關鍵特性在於其局限。Rollups 只是將交易推到基礎層,無法強制區塊鏈接受,因為以太坊可以在有需要時推翻任何 Rollups 交易。因為它們受制於這個審驗過程,所以 Rollup 上的交易被認為缺乏真正的最終確定性。

考慮到 Rollups 的局限性,我們可以再回到其中心化控訴。Rollup 的單個區塊生產者可能會嘗試惡意處理交易。但如果是這樣,以太坊將在審驗過程完成後拒絕該批量交易,並且區塊生產者將受到懲罰。[7]

現在,“審驗過程”究竟如何運作取決於 Rollups 是基於 Optimistic 還是零知識 (點擊此處可了解更多)。但對於兩者而言,審驗過程仍然比沒有 Rollup 的以太坊處理交易的效率要高出幾何級。

總之,Rollup 系統基於“制衡” (checks and balances),確保以太坊仍然是主權鏈;以太坊主鏈的共識是事實的最終仲裁者。但重要的是,側鏈卻不是這種情況。由於缺乏相同的審驗流程,側鏈通過其完全獨立的共識機制處理交易。側鏈交易是“最終確定的”,而 Rollup 中交易則不是 (直到在以太坊上得到確認)。因此,側鏈需要更強大的信任假設,因為它們不能共享以太坊的去中心化安全性。事實上,我認為側鏈更類似於兼容 EVM 的 Layer 1,而不是 Rollups。

結語

概括來說:Rollups 將計算移至鏈下以釋放更多鏈上空間。鏈上數據可用性至關重要,因為它允許以太坊對 Rollup 交易的正確性進行審驗。反過來,此審驗過程可作為對 Rollup 區塊生產的“檢查”,從而無需共識機制。

Rollups 最終讓以太坊獲得了它得蛋糕和好處:它們在不破壞網絡去中心化安全性的情況下成倍地釋放了更多的鏈上容量。至少在我看來,這是我們所能期望的最優雅的擴容解決方案。

[1] 注意:我最近在 Deribit Insights 上開啟了 Rollups 系列文章,其中第一期探討了零知識 Rollups 和 Optimisitic Rollups 之間的一些差異。許多讀者問我是否有非技術性的 Rollup 介紹文章推薦,因為我的文章假設讀者具備了這個主題的基礎知識。事實上,有許多有用的概述 (參閱此處、此處和此處)。但是我還沒找到針對初學者的繞開了技術術語 (至少在可能範圍內) 的全面介紹。以下介紹旨在填補這一空白。

[2] 順便說一句,這種連接是通過稱為“狀態根”的東西在鏈上維護的,它跟蹤 Rollups 的內部狀態——賬戶餘額、交易、代碼等。請參閱 Vitalik 的介紹了解更多細節。

[3] 事實上,在 Optimistic Rollup 中,即使所有其他網絡參與者不同意,一方也可以 (正確!) 處理交易。這是 Optimistic Rollup 的“1 of N”誠實參與者假設,我在這篇 Deribit 文章“Security Considerations”部分中進行了更深入的探討。

[4] 區塊生產者角色在 Optimistic 和零知識 Rollup 中有不同的要求。有關這方面的更多信息,請參閱 Deribit 文章的同一部分(“Security Considerations”)。

[5] Haseeb Qureshi 關於去中心化的文章發人深省。Qureshi 的論點是,去中心化本質上並沒有價值,相反,中心化本質上也不是壞事。雖然 Qureshi 在文章中沒有討論 Rollups,但他的論點仍然非常相關。

[6] 在馬布里訴麥迪遜案 (1803) 中,馬歇爾法院裁定最高法院有權推翻其認為違憲的國會立法,有效地賦予司法部門對所有立法事項的最終決定權。

[7] 事實上,ZK Rollups 中的區塊生產者以密碼學形式禁止欺詐,因為交易的零知識證明本身可能是無效的。

本文鏈接:https://www.8btc.com/article/6651167

轉載請註明文章出處

(0)
上一篇 2021-06-21 14:25
下一篇 2021-06-21 15:02

相关推荐