BTC
ETH
HTX
SOL
BNB
查看行情
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

Eth2 Staking指南:分片化的共識

以太坊爱好者
特邀专栏作者
本文約2308字,閱讀全文需要約4分鐘
把驗證者分配到不同委員會中的設計,讓驗證Eth2 所需付出的工作量降低了幾個數量級。
AI總結
把驗證者分配到不同委員會中的設計,讓驗證Eth2 所需付出的工作量降低了幾個數量級。

編者按:本文來自以太坊愛好者(ID:ethfans)編者按:本文來自

以太坊愛好者(ID:ethfans)

以太坊愛好者(ID:ethfans)

編者按:本文來自

以太坊愛好者(ID:ethfans)

編者按:本文來自

分析

以太坊愛好者(ID:ethfans)

,作者:Carl Beekhuizen,翻譯:阿劍,Odaily經授權轉載。

分析

特別感謝Sacha Yves -Leger 和Joseph Schweitzer 的指正。

不過,在Eth2 中還有一種不那麼為人所知的分片類型,而且從協議設計的角度來看,這個類型可能更為激動人心:分片化的共識(sharded consensus)。

分析

分片化的共識

就像網絡中最慢節點的處理能力限制了網絡的吞吐量,單個驗證者的計算資源也決定了能夠參與共識的驗證者總數量。因為每新增一個驗證者,都會給系統中的所有其他驗證者帶來額外的工作量,那麼隨著驗證者數量的增加,最終會達到一個狀態:資源最少的那個驗證者將不再能夠參與共識(因為它不再能夠全程追踪所有其他驗證者的投票)。那麼Eth2 處理這個問題的方案就是分片化的共識。

  1. 分析

  2. Eth2 的系統中有兩種基本的時間單位,時隙(slot)和時段(epoch)。

一個時段由32 個時隙組成(因此是6.4 分鐘),在一個時段中,信標鏈要執行所有跟鏈的維護相關的計算,包括:合理化及敲定新區塊、給驗證者發放獎勵和懲罰。

我們在本系列的第一篇文章中提到,驗證者會被分配到不同的委員會中執行工作。那麼在任一時刻,都有驗證者同時既是信標鏈委員會成員、也是某一個分片鏈委員會的成員;每個驗證者在一個時段中都要發出見證消息一次—— 為已經提出的信標鏈區塊投票。

舉例而言,如果整個驗證者集合中有33% 的驗證者是惡意的,那麼他們可能就會進入到同一個委員會中。那就完蛋了。

  • 二級標題

  • 所以,我們需要確保事情不至於如此。換句話來說,我們需要保證的是,如果33% 的驗證者是惡意的,那麼在一個委員會中只有約33% 的驗證者是惡意的。

  • 保證驗證者的委員會分配是隨機的

  • 二級標題

組成委員會有數量下限要求

舉個例子,如果單個委員會由128 個隨機選出的驗證者組成,那麼一個控制了全網1/3 驗證者的攻擊者能夠控制單個委員會的2/3 驗證力量的概率是非常非常小的(概率低於2^-40)。

二級標題

綜合

驗證者提交的投票叫做“見證消息”。見證消息由幾個部分組成:

對信標鏈頂端區塊的投票

對合理化信標區塊/確定化信標鏈區塊的投票

把盡可能多的部分都組合到一條見證消息中,系統的整體效率便得以提升,因為,在檢查驗證者的簽名時,不再需要分別驗證對信標鏈區塊的投票和對分片鏈區塊的投票,節點只需基於見證消息做運算,即可得知信標鏈區塊的狀態和每一條分片鏈的狀態。

總結

把驗證者分配到不同委員會中的設計,讓驗證Eth2 所需付出的工作量降低了幾個數量級。

委員會的投票在根本上來說也是易於聚合的,因為這些驗證者都被分配到了同一個分片上,因此分片狀態的投票和對信標鏈區塊的投票很可能是相同的。這就是Eth2 能隨著驗證者數量的增加而擴展吞吐量的機制。通過把驗證者打散到委員會內,驗證者將只需關心自己所在委員會的成員,也只需檢查極少數從其它委員會處傳來的、已經聚合過的見證消息。

總結

把驗證者分配到不同委員會中的設計,讓驗證Eth2 所需付出的工作量降低了幾個數量級。

ETH
歡迎加入Odaily官方社群