a16z:深入討論PoS Slashing機制的加密經濟學

本文探討了權益證明共識中Slashing (罰沒)機制如何提高賄賂成本從而提高網絡安全性,並討論罰沒機制的缺點和緩解措施。

原文標題:《 The cryptoeconomics of slashing 》

原文作者:Sreeram Kannan,a16z;Soubhik Deb,EigenLayer

原文編譯:DeFi 之道

為權益證明(PoS)協議設計的機制中,沒有哪一種像Slashing(罰沒)一樣具有爭議。罰沒提供了一種方法,以有針對性的方式對不採取協議一致行動的任何特定節點進行經濟懲罰。它通過拿走部分或全部驗證器質押權益來實現這一點,而不會對按照協議行事的其他節點施加外部性。 Slashing(罰沒)是權益證明(PoS)協議所獨有的,因為它需要區塊鏈能夠執行懲罰。這種強制執行在工作量證明(PoW)系統中顯然是不可行的,這類似於燒掉行為不端的節點所使用的挖礦硬件。這種應用懲罰性激勵的能力,在區塊鏈機制設計中開闢了一個新的設計空間,因此值得仔細考慮。

儘管它以「業力」的形式帶來了明顯的好處,但對罰沒的主要反對意見是,由於運行過時的軟件等無心之失,節點可能會被過度罰沒。因此,很多協議都避免採用Slashing(罰沒),而是依賴於所謂的Token毒性(即如果協議被成功攻擊,底層Token 將失去價值)。很多人認為,質押者會將這種毒性視為對損害協議安全性的威脅。在我們的評估中, Token 毒性不足以阻止某些典型場景中的對抗性攻擊。事實上,在這種情況下,對手攻擊和破壞協議所產生的成本(稱為賄賂成本)基本上為零。

在本文中,我們將展示如何將Slashing(罰沒)納入PoS 協議的機制設計中,從而大大增加任何對手可能招致的賄賂成本。在存在賄賂的情況下,對於去中心化協議以及不滿足Token 毒性假設的協議(中心化或去中心化),罰沒保證了高且可衡量的賄賂成本。

可能導致賄賂以及缺乏Token 毒性的情況無處不在。很多PoS 協議通過擁有一個緊密結合的社區來避免落入這兩個類別之一,這只有在規模較小時才可行。

(1)通過依靠強大的領導力引導他們朝著正確的方向前進,將驗證委託給一小部分知名且受法律監管的節點運營商;

(2)或者依靠在一個小組內集中質押Token 。這些解決方案都不能完全令人滿意地發展大型和去中心化的驗證節點社區。如果PoS 協議的特點是只有幾個驗證者(或者,在極端情況下,只有一個驗證者),那麼最好有一種方法來懲罰這些大型驗證者,以防他們參與敵對行為。

在本文的其餘部分,我們:

提出一個模型來分析複雜的賄賂攻擊;

表明沒有罰沒機制的PoS 協議容易受到賄賂攻擊;

表明帶有罰沒機制的PoS 協議對賄賂攻擊具有可量化的安全性;

以及討論了罰沒的一些缺點,並提出了緩解措施;

一、模型

在介紹罰沒案例之前,我們首先需要一個模型,我們將在該模型下進行分析。目前分析PoS 協議的兩個最流行的模型(拜占庭模型和博弈論均衡模型),未能捕捉到一些最具破壞性的真實世界攻擊,而罰沒對這些攻擊起到了強大威懾作用。在本節中,我們將討論這些現有模型以了解它們的缺點,並提出第三個模型(我們稱之為賄賂分析模型)。儘管賄賂分析模型能夠模擬大量攻擊,但它尚未用於分析很多協議。

現有模型

在本節中,我們將簡要描述拜占庭和博弈論均衡模型以及它們的缺點。

拜占庭模型

拜占庭模型規定,至多一定比例()的節點可以偏離協議規定的動作並執行他們選擇的任何動作,而其餘節點仍然遵守協議。證明一個特定的PoS 協議能夠抵抗敵對節點可以採取的拜占庭式行動,這是一個非常重要的問題。

例如,考慮最長鏈的PoS 共識協議,其中活性(liveness)優先於安全性。對最長鏈共識安全性的早期研究,側重於展示針對一種特定攻擊的安全性(即私密雙花攻擊,所有拜占庭節點私下串通構建一條替代鏈,然後在它比最長鏈更長的時候才公開它)。不過,nothing-at-stake 現象提供了一個機會,可以使用相同的質押權益來提議很多區塊,並使用獨立的隨機性來增加構建更長私有鏈的可能性。直到很久以後,人們才進行了廣泛的研究,以表明最長鏈PoS 共識協議的某些結構可以針對某些值來抵御所有攻擊。 (有關更多詳細信息,請參閱《Everything is a Race and Nakamoto Always Wins‌》以及《PoSAT: Proof-of-Work Availability and Unpredictability, Without the Work‌》)

整個拜占庭容錯(BFT)共識協議類別,優先考慮安全性而不是活性。他們還需要假設一個拜占庭模型來證明,對於的上限,這些協議對於任何攻擊都是確定性安全的。 (有關更多詳細信息,請參閱《HotStuff: BFT Consensus in the Lens of Blockchain‌》、《STREAMLET‌》、《Tendermint‌》。)

儘管拜占庭模型很有用,但它沒有考慮任何經濟激勵因素。從行為角度來看,這些節點中的部分在本質上是完全對抗的,而(1-) 部分節點完全符合協議規範。相比之下,PoS 協議中的很大一部分節點可能會受到經濟收益的驅動,並運行有利於自身利益的協議修改版本,而不是簡單地遵守完整的協議規範。舉一個突出的例子,考慮以太坊PoS 協議的情況,今天大多數節點並沒有運行默認的PoS 協議,而是運行MEV-Boost 修改協議,這是因為參與MEV 拍賣市場會產生額外的獎勵,而運行確切的規範協議則沒有這額外的獎勵。

博弈論均衡模型

博弈論均衡模型試圖通過使用納什均衡等解決方案概念,來研究當所有其他節點也遵循相同策略時,理性節點是否具有遵循給定策略的經濟激勵,從而解決拜占庭模型的缺點。更明確地說,假設每個人都是理性的,該模型調查兩個問題:

  • 如果所有其他節點都遵循協議規定的策略,那麼我執行相同的協議規定策略是否會帶來最大的經濟利益?

  • 如果每個其他節點都在執行相同的協議偏離策略,那麼對我來說,仍然遵循協議規定策略是否最具激勵性?

  • 理想情況下,協議的設計應確保兩個問題的答案都為「是」。

博弈論均衡模型的一個固有缺點,是它排除了外生代理可能影響節點行為的場景。例如,外部代理可以設置賄賂來激勵理性節點按照其規定的策略行事。另一個限制是,它假設每個節點都有獨立的機構,可以根據其意識形態或經濟激勵因素,自行決定採取何種策略。但這並沒有涵蓋一組節點勾結形成卡特爾的場景,或者規模經濟鼓勵創建一個基本上控制所有質押節點的中心化實體的場景。

將賄賂成本與賄賂利潤分開

一些研究人員提出了賄賂分析模型來分析任何PoS 協議的安全性,儘管沒有人使用它來進行更深入的分析。該模型首先提出兩個問題:(1) 任何對手成功對協議執行安全或活性攻擊所需的最低成本是多少? (2) 對手能夠從成功執行協議安全或活性攻擊中獲得的最大利潤是多少?

而問題中的對手可能是:

  • 單方面偏離協議規定策略的節點;

  • 一組積極相互合作以破壞協議的節點,或者

  • 試圖通過賄賂等外部行為影響許多節點決策的外部對手;

計算所涉及的成本,需要考慮賄賂產生的任何成本、執行拜占庭策略產生的任何經濟處罰等。同樣,計算利潤是包羅萬象的,包括通過成功攻擊協議獲得的協議內獎勵、從位於PoS 協議之上的DApp 獲取的任何價值,在二級市場上持有與協議相關的衍生品,並從攻擊帶來的波動中獲利,等等。

將任何對手發起攻擊的最低成本(賄賂成本)的下限與對手可以提取的最大利潤(賄賂利潤)的上限進行比較,表明攻擊協議在經濟上是有利可圖的(注:該模型已用於分析Augur 和Kleros),這給了我們一個簡單的等式:

賄賂利潤–賄賂成本=總利潤

如果總利潤是正的,那麼對手就有發動攻擊的動機。在下一節中,我們將考慮如何通過罰沒來增加賄賂成本,減少或消除總利潤。 (請注意,賄賂利潤上限的一個簡單示例,是PoS 協議保護的資產總值。可以建立更複雜的界限,將限制一段時間內資產轉移的斷路器考慮在內。降低和限制賄賂利潤方法的詳細研究,超出了本文的範圍。)

二、罰沒(Slashing)

罰沒是PoS 協議經濟懲罰一個節點或一組節點執行可證明與給定協議規範不同的策略的一種方式。通常,要實施任何形式的罰沒,每個節點必須事先承諾了一定數量的權益來作為抵押品。在深入分析罰沒(Slashing)之前,我們將首先研究具有內生Token 的PoS 系統,這些Token 依賴Token 毒性作為罰沒(Slashing)的替代方案。

我們主要關注安全違規行為的罰沒機制研究,而不是活性違規。我們提出這一限制有兩個原因:(1)安全違規完全可歸因於一些基於BFT 的PoS 協議,但活性違規不可歸因於任何協議,以及(2)安全違規通常比活性違規更嚴重,這會導致用戶資金損失,而不是用戶無法發布交易。

沒有罰沒會有什麼問題?

考慮一個由N 個理性節點(沒有拜占庭或利他節點)組成的PoS 協議。讓我們假設,為了計算簡單,每個節點都存入了等量的質押權益。我們首先探討Token 毒性如何無法保證顯著的賄賂成本。為了在整個文檔中保持一致,我們還假設所使用的PoS 協議是一個具有對手閾值的BFT 協議。

Token 毒性是不夠的

一種普遍的觀點是, Token 毒性可以保護質押協議免受任何對其安全性的攻擊。 Token 毒性暗示這樣一個事實,即如果協議被成功攻擊,那麼用於在協議中質押的基礎Token 將失去價值,從而抑制參與節點攻擊協議。考慮1/3 質押者聯手的場景:這些節點可以合作來破壞協議的安全性。但問題是這樣做是否可以不受懲罰?

如果已存入權益的Token 總估值嚴格取決於協議的安全性,那麼任何對協議安全性的攻擊,都可能將其總估值降至零。當然,在實踐中,它不會直接降至零,而是下降到某個更小的值。但是為了展示Token 毒性的最強大的可能案例,我們將在這裡假設Token 毒性完美地發揮作用。對協議的任何攻擊的賄賂成本,是攻擊系統的理性節點持有的Token ,他們必須願意失去所有這些價值。

我們現在分析在沒有罰沒的的情況下具有Token 毒性的PoS 系統中勾結和賄賂的動機。假設外部對手設置賄賂條件如下:

  • 如果節點按照對手指示的策略執行但對協議的攻擊不成功,則該節點從對手那裡獲得獎勵B1。

  • 如果節點按照對手指示的策略執行並且對協議的攻擊成功,則該節點從對手那裡獲得獎勵B2。

對於存入權益S 的節點,我們可以得出如下收益矩陣,R 是參與PoS 協議的獎勵:

假設對手將賄賂收益設置為B1>R 和B2>0。在這種情況下,無論其他節點採取何種策略(主導策略),從對手處接受賄賂的回報,都高於該節點可以採取的任何其他策略。如果1/3 的其他節點最終接受了賄賂,他們就可以攻擊協議的安全性(這是因為我們假設我們使用的是BFT 協議,其對手閾值為)。現在,即使當前節點不收受賄賂,由於Token 毒性(矩陣中右上角的單元格), Token 無論如何都會失去其價值。因此,節點接受B2 賄賂是激勵相容的。如果只有一小部分節點接受賄賂,則Token 不會失去價值,但節點可以從放棄獎勵R 中獲益,取而代之的是獲得B1(矩陣中的左列)。如果1/3 的節點同意接受賄賂,攻擊成功,則對手支付賄賂的總成本至少為/3 B2,這就是賄賂的代價。然而,B2 的唯一條件是它必須大於零,因此,B2 可以設置為接近於零,這意味著賄賂成本可以忽略不計。這種攻擊被稱為「P+」攻擊‌。

總結這種影響的一種方式是, Token 毒性是不夠的,因為不良行為的影響是社會化的: Token 毒性完全貶值Token 的價值,對好節點和壞節點的影響相同。另一方面,受賄的利益被私有化,並僅限於那些實際受賄的理性節點。對於那些接受賄賂的人來說,沒有一對一的後果,也就是說,這個系統沒有「業力」的有效版本。

Token 毒性是否始終有效?

生態中流行的另一個誤導說法是,每個PoS 協議都可以通過Token 毒性獲得一定程度的保護。但事實上, Token 毒性的外生激勵不能擴展到某些類別的協議,在這些協議中,用作質押面值的Token 估值不取決於安全運行的協議。一個這樣的例子,是像EigenLayer 這樣的重質押(re-staking)協議,其中重新使用以太坊協議使用的ETH 來保證其他協議的經濟安全。考慮使用EigenLayer 重新質押10% 的ETH 以執行新側鏈的驗證。即使EigenLayer 中的所有質押者都通過攻擊側鏈的安全而合作行為不端,ETH 的價格也不太可能下降。因此, Token 毒性不可轉移到重質押服務,這意味著賄賂成本為零。

罰沒有什麼幫助?

在本節中,我們將在兩種情況下解釋罰沒如何顯著增加賄賂成本:

  • 賄賂下的去中心化協議;

  • Token 毒性不可轉移的PoS 協議;

防止賄賂

協議可以使用罰沒來大幅增加嘗試賄賂攻擊的外部對手的腐敗成本。為了更好地解釋這一點,我們考慮了一個基於BFT 的PoS 鏈的示例,它需要鏈原生Token 的質押,並且必須至少破壞總質押的才能對其安全性進行任何成功的攻擊(以雙重簽名的形式)。假設外部對手能夠賄賂至少的總質押權益來執行雙重簽名。雙重簽名的證據可以提交給規範分叉,該分叉會罰沒從對手處接受賄賂並雙重簽名的節點。假設每個節點質押S 個Token 並且所有被罰沒的Token 都被銷毀,我們得到以下收益矩陣:

通過罰沒,如果節點同意接受賄賂並且攻擊不成功,那麼它的質押權益S 在規範分叉(矩陣左下角的單元格)中被罰沒,這與之前沒有罰沒機制的賄賂場景形成了對比。另一方面,即使攻擊成功,節點也不會失去其在規範分叉中的質押權益S(矩陣右上角的單元格)。如果需要的總權益被賄賂才能使攻擊成功,則賄賂成本必須至少為/3 S,這大大高於沒有罰沒機制的賄賂成本。

針對Token 毒性不可轉移情況的保護

在一些Token 估值不受協議安全性影響的PoS 協議中, Token 毒性是不可轉移的。在很多此類系統中,PoS 協議位於另一個基礎協議之上。然後,基礎協議通過在基礎協議上部署爭議解決機制來解決爭議,並賦予基礎協議代理權,以可證明的方式罰沒與PoS 協議相關的節點,從而與PoS 協議共享安全性。

例如,如果PoS 協議中的拜占庭動作在基礎協議中客觀地歸因於敵對節點,那麼它在PoS 協議中的權益將在基礎協議中被罰沒。這種PoS 協議的一個例子是EigenLayer,它的特點是重質押(restaking),使不同的驗證任務能夠從以太坊基礎協議中獲得安全性。如果在EigenLayer 上的驗證任務中,節點重質押採用了拜占庭策略,其中拜占庭行為可以被客觀地歸因,那麼可以證明該節點在以太坊上是敵對的,其質押權益將被罰沒(無論質押有多大)。假設每個節點重質押S, 所有被罰沒的Token 都被銷毀,並從參與中獲得獎勵R,我們構建瞭如下的回報矩陣:

由於我們正在考慮任何拜占庭行為都可以客觀歸因的驗證任務,因此即使節點行為誠實但攻擊成功,該節點也不會在以太坊上被罰沒(矩陣中右上角的單元格)。另一方面,一個同意接受賄賂並表現出敵對行為的節點,將在以太坊上被客觀地罰沒(矩陣中的底部一行)。如果需要的總權益被賄賂才能使攻擊成功,則賄賂成本至少為/3 S。

我們還考慮了極端情況,即PoS 協議的所有質押權益都集中在一個節點手中。這是一個重要的場景,因為它預示著權益最終會集中化。考慮到我們的假設,即對重質押的Token 沒有Token 毒性,如果不存在罰沒,中心化節點可以以拜占庭方式運行而不會受到懲罰。但有了罰沒,這個拜占庭式的中心化節點可以在基礎協議中受到懲罰。

歸因攻擊的罰沒VS 非歸因攻擊的罰沒

對歸因攻擊進行罰沒,與對非歸因攻擊進行罰沒之間存在一個重要的微妙差別。考慮拜占庭容錯協議中出現安全故障的情況。通常,它們源於雙重簽名的拜占庭行為,旨在削弱區塊鏈的安全性——這是歸因攻擊的一個例子,因為我們可以查明哪些節點攻擊了系統的安全性。另一方面,審查交易以削弱區塊鏈活性的拜占庭行為,則是不可歸因攻擊的一個例子。在前一種情況下,通過向區塊鏈的狀態機提供雙重簽名的證據,可以在算法上實現罰沒。

相比之下,由於無法用算法證明節點是否在主動審查,因此無法用算法來完成用於審查交易的罰沒。在這種情況下,協議可能不得不依靠社會共識來執行罰沒。一定比例的節點可以執行硬分叉,以指定對那些被指控參與審查的節點進行罰沒。只有當社會共識出現時,這種硬分叉才會被認為是規範分叉。

我們將賄賂成本定義為執行安全攻擊的最低成本。然而,我們需要PoS 協議的一個屬性,稱為問責制,這意味著如果協議失去安全性,應該有一種方法將責任歸咎於一小部分節點(BFT 協議的節點)。事實證明,對哪些協議負責的分析是微妙的(請參閱關於BFT 協議取證的論文‌)。此外,事實證明,動態可用的最長鏈協議(例如PoSAT‌)是不可問責的(有關動態可用性和問責制之間的權衡,以及解決這些基本權衡的一些方法,請參閱這篇論文‌。)

三、罰沒的陷阱與緩解措施

與任何技術一樣,如果不小心實施,罰沒也會帶來自身的風險:

1、客戶端配置錯誤/密鑰丟失。罰沒的的陷阱之一是無辜的節點可能會因為非故意的錯誤(例如錯誤配置的密鑰或丟失密鑰)而受到不成比例的懲罰。為了解決有關因疏忽錯誤而過度罰沒誠實節點的擔憂,協議可以採用某些罰沒曲線,當只有少量質押權益的行為與協議不一致時,這些罰沒曲線會從輕處罰,但當在與協議衝突的策略上執行的質押權益超過閾值比例時,將予以嚴重處罰。比如以太坊2.0 就採用了這種方法。

2、可信的罰沒威脅作為一種輕量級的替代方案。如果一個PoS 協議沒有實現算法罰沒,它可以轉而依賴社會罰沒威脅,也就是說,在安全故障的情況下,節點將同意指向一個硬分叉,在那裡,行為不端的節點會失去資金。與算法罰沒相比,這確實需要顯著的社會協調,但只要社會罰沒的威脅是可信的,上面提出的博弈論分析就繼續適用於沒有算法罰沒而依賴於承諾的社會罰沒的協議。

3、對活性故障的社會罰沒是脆弱的。社會罰沒對於懲罰不可歸因的攻擊是必要的,例如像審查制這樣的活性故障。雖然理論上可以針對不可歸因的故障實施社會罰沒,但新加入的節點很難驗證這種社會罰沒是出於正確的原因(審查)還是因為該節點被錯誤指控而發生。當對可歸因故障使用社會罰沒時,即使沒有罰沒的軟件實現,也不存在這種歧義。新加入的節點可以繼續驗證這種罰沒是合法的,因為他們可以檢查他們的雙重簽名,即使只是手動的。

四、被罰沒的資金怎麼辦?

有兩種可能的方法來處理被罰沒的資金:銷毀和保險。

1、銷毀:處理被罰沒資金的直接方法是簡單地銷毀它們。假設Token 的總價值沒有因為攻擊而改變,那麼每個Token 的價值都會按比例增加,並且會比以前更有價值。銷毀不會識別因安全故障而受到傷害的各方,並僅對其進行補償,而是不分青紅皂白地惠及所有非攻擊Token 持有者。

2、保險:一種尚未被研究過的更複雜的罰沒資金分配機制涉及針對罰沒發行的保險債券。在區塊鏈上進行交易的客戶可能會事先在區塊鏈中獲得這些保險債券,以保護自己免受潛在的安全攻擊,為其數字資產提供保險。當發生危及安全的攻擊時,對質押者的算法罰沒會產生一筆資金,然後可以按照債券比例分配給保險者。

五、生態中的罰沒現狀

據我們所知,Vitalik 在2014 年的這篇文章‌中首次探討了罰沒的好處。 Cosmos 生態在其BFT 共識協議中構建了第一個有效的罰沒實現,該協議在驗證者不參與提議區塊或對模棱兩可的區塊進行雙重簽名時強制進行罰沒。

以太坊2.0 也在其PoS 協議中加入了罰沒機制,以太坊2.0 中的驗證者可能會因為做出模棱兩可的證明或提出模棱兩可的區塊而受到懲罰。罰沒行為不端的驗證者是以太坊2.0 實現經濟終結性的方式。驗證者也可能由於缺少證明,或者如果它沒有在應該這樣做的時候提出區塊而受到相對溫和的懲罰。

***

沒有罰沒機制的PoS 協議極易受到賄賂攻擊。我們使用一種新模型(賄賂分析模型)來分析複雜的賄賂攻擊,然後用它來說明帶有罰沒機制的PoS 協議具有可量化的反賄賂安全性。雖然將罰沒納入PoS 協議存在缺陷,但我們提出了一些可能的方法來減輕這些缺陷。我們希望PoS 協議將使用此分析來評估罰沒在某些情況下的好處——潛在地提高整個生態系統的安全性。

展開全文打開碳鏈價值APP 查看更多精彩資訊

Total
0
Shares
Related Posts