Rollups 是中心化的?可能只是邏輯上的誤解

買賣虛擬貨幣

原標題/《Rollups 是中心化的?》

來源:Benjamin Simon

編輯:南風

前言

讓我們從一個比喻開始。

想象一下我們回到了中學的數學課上。正如中學數學老師往往冷酷的那樣,我們的老師遞給我們一張表單,上面列著一百道長除法題,每一道都有非常大的數字。我們被告知,我們的任務是要計算出儘可能多的題目。但棘手的是,我們必須使用同一張紙來寫出答案和進行每一個計算步驟。僅僅幾分鐘後,我們就不得不正視這項任務的荒謬之處:要將這麼多完整的解題方案擠進這一張紙上簡直是不可能的。

這個噩夢般的故事和 Rollups 什麼關係?

在這個比喻中,這張紙就好比一個以太坊區塊,而這些數學問題就是智慧合約交易。以太坊目前極度擁擠。有太多的交易需要被打包進每個區塊中。更糟糕的是,這些交易中的大多數都是計算密集型的 (也即需要進行大量計算),比如閃電貸 (flash loans) 或透過聚合器進行的交易。過去 (DeFi 之前的) 那種簡單的轉賬和支付的時代已經一去不復返。

這就是問題的關鍵。就像該比喻中的數學老師要求我們把每一行辛苦的長除法都填到一張紙上一樣,以太坊也必須處理和記錄每一筆交易的每一行計算。

直到 Rollups 的到來。

Rollups 將計算轉移至鏈下,而在鏈上只儲存最少的交易資料。從這個基本意義上講,Rollups 就像是以太坊計算的「草稿紙」。Rollups 處理所有凌亂的資料處理,透過對交易進行批次處理 ("捲起") 的方式來實現單個以太坊區塊內包含的智慧合約交易量呈指數增加。

這個比喻有助於描述 Rollups 要解決的問題 (也即"由於計算超負荷造成的網路擁塞"),甚至為我們提供了一個關於 Rollup 解決方案的模糊概念 (也即"將計算轉移至鏈下")。但至於 Rollups 是如何工作的,它們是什麼樣子的,以及為什麼它們讓我們人如此興奮,我們還需要深入研究一下。

什麼是 Rollup?

本質上來說,每個 Rollup 都是一條單獨的區塊鏈,但進行了一些修改。與以太坊一樣,每個 Rollup 協議也有一個執行智慧合約程式碼的“虛擬機器”。Rollup 的虛擬機器獨立於以太坊自己的虛擬機器 EVM 而執行,但它是由某個以太坊智慧合約管理。這種連線性使得 Rollups 能夠與以太坊進行通訊。Rollup 執行交易並處理資料,以太坊接收並儲存結果。

在技術層面上,Rollup 鏈和其他更傳統的區塊鏈之間的關鍵區別在於產生新區塊的方式。

通常,區塊鏈是一個由多方 (即"礦工" 或 "驗證者",取決於區塊鏈的共識型別) 組成的分散式網路維護。這些各方透過共識來共同生產區塊。簡單地說,各方投票決定如何處理一組交易,或者換句話說,如何構建下一個區塊。獲得多數支援的區塊將被永久寫入區塊鏈中。

相比之下,Rollup 鏈並不透過多數決定規則來執行。相反,監控 Rollup 狀態的某個單一方可以向以太坊 (L1基礎層) 傳送所謂的“斷言”,說明某個批次的交易應該如何被處理。重要的是,以太坊將獨立地接受或拒絕這一斷言,不管該 Rollup 的大多數其他方是否支援這一斷言。在實踐中,這通常意味著 Rollup 鏈的某個單一方會被指定處理交易和生產區塊的任務。

等等...Rollups 是中心化的?

Rollup 區塊生產的這一中心化屬性正是 Rollups 能夠如此高效地處理交易的部分原因。但這也提出了一個明顯且令人擔憂的問題:沒有多數人的共識,Rollups 如何確保區塊生產是正確的?如果區塊生產者碰巧是惡意的,會發生什麼?

這種中心化讓習慣於基於共識的區塊鏈的加密使用者感到困惑。事實上,如果故事到此結束,我們可能會 (錯誤地) 得出這樣的結論:Rollups 只是“由單一方複製的資料庫”,正如 Avalanche 聯合創始人 Kevin Seqniqi 最近在推文中 (誤解的) 那樣。

實際上,這個關於 Rollup 中心化的指控與其說是錯誤的,不如說是邏輯上的誤解。通常情況下,沒有健全共識機制的中心化區塊鏈確實容易受到腐敗和敵意接管的影響;然而,在 Rollups 的獨特情況下,這種缺乏去中心化實際上對於它們的安全性或者可靠性並不是一個問題。為了理解為什麼會出現這種情況,我們需要更深入地瞭解。

資料可用性的重要性

回顧一下我們一開始的那個不幸的數學作業。用於計算的「草稿紙」允許我們在主要表單上僅需寫下題目和答案即可;Rollups 就好比是「草稿紙」,它們“將智慧合約計算轉移至鏈下,而在鏈上只儲存了最少的交易資料。”

實際上,這最後一部分,也即 "在鏈上儲存交易資料",對於 Rollups 的運作方式至關重要。在一個 Rollup 鏈中,只有計算 (資料處理) 在鏈下進行,而 Rollup 處理的每一筆交易仍會將其輸入資料 (也即"calldata") 儲存在以太坊上。

在鏈上儲存交易資料的重要性是什麼?在數學作業的比喻中,我們最終交給老師的那張紙包括了長除法題目和它們的答案,這使得老師可以檢查我們的作業,即使我們沒有在上面寫出單獨的計算步驟。類似地,鏈上資料的持久可用性意味著,Rollup上面的任何計算都可以被以太坊基礎層重複計算。

簡而言之,Rollup 的鏈上資料可用性允許一個內建的審查過程。在將交易永久記入賬本之前,以太坊可以對 Rollup 鏈上處理的交易的完整性進行“再次檢查”(double check) ——幾乎就像美國最高法院的司法審查權力一樣。

侷限性是一種優勢

因此,Rollups 的關鍵特性是它們的侷限性。Rollups 僅將交易推送到 (以太坊) 基礎層;它們不能強制基礎層接受,因為如果有必要,以太坊可以推翻任何 Rollup 交易。由於它們受到這個審查過程的制約,因此 Rollup 交易被認為是缺乏真正的確定性(finality)。

考慮到 Rollups 的這種侷限性,我們可以回到上文未解決的有關 Rollups 中心化的指控。Rollup 的某個單一區塊生產者可能會試圖惡意地處理交易,但如果這樣做,以太坊 (基礎層) 將在審查過程完成後直接拒絕該批次的交易,且該區塊生產者將受到懲罰。

當前,“審查過程”的運作方式取決於 Rollup 是 Optimistic Rollup 還是 ZK Rollup。但對於這兩者來說,審查過程的效率都要比以太坊自己處理交易的效率高得多。

總而言之,Rollup 系統基於“制衡”,這確保了以太坊始終保持作為主權鏈:以太坊自己的共識是真理的最終仲裁者。

然而側鏈就不一樣了。由於缺乏相同的審查過程,側鏈透過自己的、完全獨立的共識機制來處理交易。側鏈交易在某種程度上是“最終的”(finality),而 Rollup 交易不是 (直到它們在以太坊上得到確認)。因此,側鏈需要更大的信任假設,因為它們不能從以太坊自己的去中心化安全性中獲益。事實上,我認為側鏈更類似於 EVM 相容的 Layer 1,而不是 Rollup。

總結

概括一下:Rollups 將計算移出鏈下,以釋放更多的鏈上空間。鏈上的資料可用性是至關重要的,因為這允許以太坊對 Rollups 交易的可靠性進行再次檢查。這種審查過程反過來又充當了對 Rollup 區塊塊生產的“檢查”,從而消除了對共識機制的需要。

Rollups 最終讓以太坊既能得到蛋糕又能吃掉它:它們在不破壞網路去中心化安全性的情況下釋放出更多的鏈上容量。至少在我看來,這是我們所希望的最優雅的擴容性解決方案。

感謝 t11s 和 Hasu 的評論和建議。

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读