合並:從工作量證明到權益證明
以太坊即將從工作量證明 (PoW) 過渡到權益證明 (PoS) ,這是多年研究和开發的結晶。雖然 PoS 帶來了許多潛在的優勢,但這也意味着以太坊正在放棄中本聰最"長情"的協議——當然也是最簡單、最優雅的共識協議之一,並且已經過去中心化區塊鏈的實战考驗。
以太坊 PoS 共識協議中,一個衆所周知的脆弱組件已被證明是“LMD GHOST”選擇分叉規則,最近發生了多次攻擊和打補丁,其安全性仍未得到證明。
在題爲“PoS 以太坊不再被攻擊 ?”的文章中,我們提出了 Goldfish,它是 PoS 以太坊中 LMD GHOST 選擇分叉規則可證明的、安全的替代品。我們認爲這只是朝着更嚴格的協議設計和分析邁出的第一步,目的是加強以太坊的安全性。
以太坊的權益證明協議
以太坊的權益證明 (PoS) 共識協議比 PoW 復雜得多。
它實際上是兩種不同共識協議的組合:一個“finality gadget”(稱爲 Casper FFG),在 6.4 分鐘長的 epoch 後最終確定區塊,以及在每個 epoch 內管理鏈的選擇分叉規則 fork-choice rule(稱爲“Greedy Heaviest Observed Subtree”,簡稱LMD GHOST)。這兩個組件以復雜的方式相互交互,下面用框圖進行描述:
具體來說,LMD GHOST 指導區塊生產過程,並以 12 秒的時間Slot和驗證者的子抽樣組合運行。因此,它可以被認爲是在 PoS 以太坊區塊獎勵前負責較弱的“短期共識”。一旦就交易账本達成短期共識,它就會被移交給 Casper FFG 進行額外的加固,它在包含 32 個插槽(slots) = 6.4 分鐘的時間尺度上運行,並涉及完整的驗證器集。因此,Casper FFG 負責提供更強大的“長期共識”,提供最終性和負責任的安全性。
不幸的是,這種復雜性伴隨着挑战。特別是,LMD GHOST 組件,以及 LMD GHOST 和 Casper FFG 之間的交互,都存在反反復復的攻擊、打補丁。目前爲 Merge 採用的協議既沒有公开的攻擊,也沒有正式的安全分析/證明。
缺乏安全證明是令人擔憂的原因,但並不是因爲簡單學術模型中的證明必然完美地表明現實世界的安全性。相反,即使在簡化模型中,我們也無法最終解釋爲什么這個協議是安全的,這表明我們實際上並不了解協議,或者它們的後果和交互的全部範圍。
Goldfish
在題爲“PoS 以太坊不再被攻擊 ?”的文章中,我們提供了 PoS 以太坊的 LMD GHOST 分叉選擇規則的替代品。該協議稱爲 Goldfish,類似於 LMD GHOST(因此不需要對當前客戶端實現進行大修),但帶有安全證明。
爲了更好地理解Goldfish,讓我們先預覽下 LMD GHOST 的大致工作原理:
假設我們的簡化網絡模型中消息引起的最大延遲爲已知值 A(如上圖中的△)。在 LMD GHOST 中,相似步驟得到的值爲 2A 。對於每個間隙,從完整的驗證者集中隨機選擇一個提議者和一個小的驗證者委員會。在每個slot开始時,slot的提議者運行 LMD GHOST 分叉選擇規則(有兩個修改,“提議者提升”和“模棱兩可的折扣”,它們是響應兩個早期攻擊的補丁)以確定規範的區塊鏈獎勵和提出一個新的區塊。
在slot進行到一半時,slot的委員會成員還使用相同的分叉選擇規則確定規範的區塊獎勵,並投票支持該獎勵。 LMD GHOST 沒有指定確認規則,而是讓用戶來決定區塊樹的哪些區塊擁有“足夠”的票數以確信他們不會離开規範鏈。
Goldfish 緊密遵循這個一般結構,但爲驗證者引入了一個額外的階段,以同步他們對投票計數的看法,並確認區塊:
在每個slot的开始,slot的提議者根據前一個 slot 的投票運行簡單的 GHOST 分叉選擇規則,以確定在哪裏提議一個塊。進入slot的三分之一時,該時段的委員會成員使用相同的分叉選擇規則,該規則基於前一個時段的投票和提議者轉發的投票,來確定在哪裏投票。 最後,在進入slot的三分之二時,所有驗證者都運行一個明確定義的 T 深度確認規則。
Goldfish 基於兩種關鍵技術,投票緩衝和投票到期,以仔細同步誠實驗證者的觀點:
投票緩衝(也稱爲view merge,最早出現在新的共識協議 Highway 上)。簡而言之,緩衝從網絡收到的選票,以及在每個驗證者的本地視圖中精心定時包含這些選票,保證了在具有誠實提議者的slot中,所有誠實的驗證者都投票支持提議者的提議。這導致了重組彈性:誠實的提議者的提議保證保留在規範鏈中。隨之而來的是安全性(即輸出账本的安全性和活躍性)。
投票到期(也稱爲臨時投票)意味着在每個slot內,只有前一個slot的投票會影響協議的行爲(類似於“健忘”的金魚,Goldfish 協議名稱源於此)。投票到期使投票集很小,這可能會影響誠實驗證者的短期未來行動。因此,在任何時間點,只有少數協議消息需要在誠實驗證者的視圖中進行緩衝和合並。因此,投票到期是投票緩衝效率/可行性的先決條件。投票到期對於支持波動的驗證者參與水平以及支持在每個slot較小的子樣本選民委員會中運行協議,而不是在整個驗證者集中運行協議也至關重要。
最後,Goldfish 的確認規則會確認區塊是否在創建後的一段時間內仍在規範鏈上。分析表明,由此產生的確認翻轉概率在出塊和區塊確認之間的延遲中呈指數級降低。
Goldfish 面臨的挑战:異步(Asynchrony)
Goldfish 很簡單,可以接受嚴格的安全證明。這一分析立即取得了成果:請記住,我們一开始就假設我們的簡化模型中的網絡延遲上限爲 A (上圖中的△表示) 。在證明安全性的過程中,我們必須明確這一假設和其他假設。
如果違反了這個界限,即如果網絡暫時異步,會發生什么?我們可以追蹤安全論證的步驟,看看在沒有假設的情況下會出現什么問題。我們看到,如果實際網絡延遲大於 2A(即當前 PoS 以太坊中的 8 秒),那么 Goldfish 將無法及時獲得slot (t-1)的決定性選票以在slot t 的基礎上進行構建,該協議可能會受到重組的影響。
這樣的重組是不好的。但至少由於嚴格的安全論點,我們可以更好地了解我們系統的安全性關鍵依賴於哪些條件,以及爲什么以及如何。我們可以做出更明智的決定,以確保滿足這些先決條件。例如,雖然在當前的點對點網絡協議中,攻擊者可能更容易引起一些網絡延遲,但最近(也由於與網絡相關的數據可用性採樣挑战)對強化的點對點協議重新產生了興趣,這些協議重新啓用共識層的權益分配來指導對等點的選擇。這樣的協議更加抗攻擊,並且可以合理地緩解延遲問題。此外,確定性/問責制小工具(最終可能會通過“單槽確定性”進一步加速)爲任何重組提供了支持。
還需要做什么
我們提出了 Goldfish 共識協議,旨在作爲 PoS 以太坊信標鏈中 LMD GHOST 的替代品。我們對 Goldfish 本身進行了嚴格的安全分析,並結合了終局/問責制小工具(基於另一個共識協議,例如 HotStuff)。其他 PoS 以太坊共識安全挑战仍然存在,例如,來自分叉選擇和 finality gadget 的交互,我們期待在未來看到 PoS 以太坊在這些方面的進一步共識安全改進。
來源:Paradigm、比推
編譯及整理:比推 Mary Liu
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。
標題:Paradigm 介紹 Goldfish:PoS 以太坊中 LMD GHOST 分叉規則的安全替代品
地址:https://www.torrentbusiness.com/article/15403.html
標籤: