Espresso的HotShot共識機制改為在同一個視圖內完成兩輪投票,以確認區塊。舊機制下,即使區塊已取得法定門檻所需票數,仍須等待後續領導者提案並投票,區塊才會定案。
Espresso Systems於20日公開的技術說明,介紹了去年9月主網升級採用的新共識機制。本站先前報導,該次升級後,交易最終確認時間縮短至1秒以內;這次說明則解析支撐這項速度的共識規則。
視圖是共識運作單位,由領導者提出區塊、驗證者投票;法定門檻則是達成共識所需的最低票數。舊版HotShot採用連鎖提交方式,即使單一視圖已取得法定門檻票數,也不會立即確認區塊。
舊機制會將某一視圖的投票證明放入下一個視圖的提案,再接續傳遞下一個視圖的證明,前一個區塊才會定案。每個視圖都要依序進行一次提案與投票。
因此,區塊能否最終確認,取決於後續視圖是否順利運作。如果後續領導者延遲或離線,已取得法定門檻票數的區塊仍可能需要等待。
新機制中,領導者會先透過擦除編碼將區塊拆成多個片段,再傳送給驗證者。擦除編碼可利用部分片段還原原始資料。
收到區塊片段的驗證者會將第一輪投票傳給其他所有驗證者。第一輪投票達到法定門檻後,任何節點都能產生第一份證明、鎖定區塊,並送出第二輪投票。
第二輪投票也達到法定門檻後,節點會產生第二份證明,並最終確認區塊。兩輪投票都在同一個視圖內完成,因此後續領導者的狀態不再影響該區塊能否定案。
投票傳遞方式也有所改變。舊機制由驗證者把票送給單一領導者,再由領導者產生證明;新機制則讓驗證者彼此傳遞投票。任何確認票數達到法定門檻的節點,都能產生證明。
若驗證者數量為n,訊息複雜度會從舊制的O(n)升至O(n²)。不過,投票彙整不再依賴單一領導者回應,可減少單一節點延遲或故障造成的阻塞。
Espresso Systems表示,目前驗證者約有100名,投票訊息量小,仍可負擔。若驗證者數量增加10倍以上,可能需要採取委員會抽樣、簽章彙整或分階段傳遞投票等措施。
由於驗證者可互相傳遞投票,且任何節點都能產生證明,舊制的視圖同步子流程也不再需要。即使節點漏收部分投票,只要收到其他節點產生的證明,仍能作出決定;若領導者離線或有惡意行為,則會使用逾時證明。
新機制也將資料可用性檢查納入共識投票。舊制在共識投票前,會由獨立的資料可用性委員會接收區塊資料、進行投票並產生證明。
新制則由領導者依驗證者的持幣權重分配區塊片段。只有收到片段的驗證者才能參與第一輪投票;若相當於總持幣權重三分之二的驗證者投票,便能證明已有足夠片段可還原區塊。因此,新制取消了獨立的資料可用性委員會及其投票流程。
CometBFT確認區塊時也會使用兩種投票,但CometBFT以完整區塊作為投票對象;新版HotShot則將經擦除編碼的區塊片段分送出去,並將投票用於資料可用性證明。
Espresso Systems表示,只要惡意驗證者的持幣權重低於三分之一,安全性仍可維持,不會有兩個互相衝突的區塊同時獲得最終確認。Espresso的最終確認代表rollup傳送的資料與交易排序已定案,不代表rollup交易執行完成,也不代表交易已在以太幣(ETH)等底層鏈上結算。
留言 0