觀點:ETH 2.0本就是一種形式的Rollup
編者按:本文來自以太坊愛好者(ID:ethfans)編者按:本文來自
以太坊愛好者(ID:ethfans)
以太坊愛好者(ID:ethfans)
以太坊愛好者(ID:ethfans)
以太坊愛好者(ID:ethfans)
一級標題
,作者:lightclient,翻譯&校對:閔敏& 阿劍,Odaily經授權轉載。
一級標題
當我們向一種新的擴容範式轉變時,回顧被拋棄的舊範式是一種很好的做法。
這篇文章旨在讓讀者相信,“以rollup 為中心” 的方法並不會背離分片,並且有望構建對整個(假設性)系統更直觀的理解。
Optimistic Rollup 的定義
將所有交易數據提交到鏈上
一些節點負責驗證ORU 的狀態轉換
二級標題
二級標題
正文
正文
正文
二級標題
請注意,我們可以通過調整委員會的規模來按比例放大或縮小該參數,從而達到理想的安全級別。
二級標題
正文
由於選出惡意委員會的概率極低,以及對不作為驗證者的反向激勵,該分片系統理應繼承其非分片協調系統(it's non-sharded coordinator)的安全性和活性保障。但是,就像現實世界中的大多數係統那樣,實現這一點並非易事。由於委員會成員是提前選好的,惡意參與者就有機會賄賂理性參與者。如果可以輕而易舉地創建從驗證者公鑰到IP 地址的映射,就會出現更多行賄現象。此外,在免許可型系統中,可驗証投票從本質上來說無法防止行賄。綜上,分片的實際安全性相比理論上來說低至少一個數量級。
二級標題
與Plasma 一樣,分片同樣存在數據可用性問題
假設有一條簡單分片的區塊鏈B,上面有X 和Y 兩條分片鏈。區塊鏈B 在兩個委員會中運行傳統的拜占庭容錯共識算法來幫助運行分片X 和Y,分別是Cx 和Cy。 B 上的每個區塊都包含兩個門限簽名,即,Cx 和Cy 兩個委員會中2/3 的成員對各自分片鏈的當前區塊的狀態根的見證。
假設每條分片鏈的每秒數據和交易處理量與非分片系統相同,那麼引入分片鏈應該能提供大約兩倍的吞吐量。在樂觀情況下,事實確實如此。
Cx 中剩餘的1/3 - 1 位成員可以在B 上發出數據不可用警報。遺憾的是,這不是一個可明確歸屬方的錯誤(譯者註:即無法確定到底是攻擊方扣住了區塊,還是某些人網絡不好沒收到,甚至收到了也咬他人一口),因此B 無法確定是哪一方在作惡。 (如果魯莽地懲罰某些成員)懷有惡意的少數派有可能會藉此發起零成本的DDOS 攻擊。
一級標題
由整個社區來發現錯誤,並主動介入將B 回滾到最新的有效狀態。這種處理模式顯然是糟糕的。
一級標題
就像Plasma 一樣,這裡真正的問題是數據可用性。
希望上述分析能讓你明白一個道理:我們首先應該將關注點放在擴展基礎層的數據可用性上。否則,系統仍將遭受數據不可用攻擊。
一級標題
一級標題
一級標題
ETH 2.0 的分片設計模糊了它們是信標鏈的ORU 這樣一個事實。如果將重點從分佈式處理轉向有序的數據可用性層,就變得一目了然了。
如上圖所示,驗證者集起到以下4 種作用:
驗證並執行信標鏈
正文
正文
正文
二級標題
提交關於無效狀態轉換的欺詐證明
二級標題
正文
我們已經作了兩個假設:i) 數據具有可用性,ii)區塊鏈會從最近一個具有數據可用性的區塊開始進行分叉。則要么人們可以構建欺詐證明,要么系統將缺乏數據可用性歸咎於簽署該區塊的分片委員會,並回滾狀態轉換。
二級標題
從定義上來說,ETH 2.0 是一種ORU
這時,考慮到我們之前對ORU 的定義,我們應該能夠證明分片實際上就是rollup:
1. 所有交易數據都提交到鏈上
分片區塊數據被集中到數據可用性層上,在一定概率上會由全網進行驗證。
2. 狀態根被提交到鏈上
3. 狀態根被假定為有效的
信標鏈在沒有進行額外驗證的情況下,假定分片委員會的證明是有效的
分片委員會驗證分片的狀態轉換。
二級標題
信標鏈支持分片狀態轉換欺詐證明。
解構ETH 2.0
既然我們已經解釋了ETH 2.0 和ORU 系統之間不可思議的相似性,我們能夠如何利用這一信息來更好地理解整個系統的設計?讓我們通過ORU 系統的角度來探索ETH 2.0 的一些設計決定:
數據吞吐量
二級標題
二級標題
例如,ETH 2.0 可以提供64 個數據中心和一個在信標鏈上的ORU 合約,以此代替分片鏈。 ORU 合約可以讓rollup 決定領導者選舉機制,它們想要將數據發送到多少個數據中心上,以及它們是否想與其它rollup 綁定(例如,如果一個rollup 發生回滾,與之綁定的rollup 也會發生回滾)。使用的數據中心越多,驗證rollup 所需的硬件要求就越高。
二級標題
一級標題
在簡單的ORU 中,當選的領導者有權提交無效狀態轉換。雖然這不會影響系統的安全性,因為無效狀態轉換是可以通過欺詐證明撤銷的,但這確實會破壞rollup 的進程。單獨來看,這種破壞對作惡者來說通常是不划算的。然而,在ETH 2.0 中,跨分片通信讓這個問題變得特別棘手。處於slot N 的分片預期自己可以獲得其它分片在slot N-1 時的狀態。假設分片Si 提交了一個無效的狀態轉換,除了單方面發起回滾之外沒有其它合理的方法來撤銷該狀態對分片Sj(0≤j≤64;i≠j)的負面影響。
一級標題


