當(dāng)前位置:區(qū)塊鏈 >區(qū)塊鏈 > Vitalik 的 PoS 簡化提案:堅(jiān)持在 SSF 之后每個(gè)插槽使用 8192 個(gè)簽名

Vitalik 的 PoS 簡化提案:堅(jiān)持在 SSF 之后每個(gè)插槽使用 8192 個(gè)簽名

更新時(shí)間:2023-12-28 12:15:24 | 作者:佚名
這將使技術(shù)實(shí)施者的工作變得更加容易,以及輕客戶端等輔助基礎(chǔ)設(shè)施的構(gòu)建者。 撰文:VitalikButerin,ethresearch 編譯:松雪, ? 以太坊和大多數(shù)其他(最終確定性)權(quán)益證明系統(tǒng)之間的主要區(qū)別在于,以太坊試圖支持非常多的驗(yàn)證器對象:我們目前有895,000個(gè)驗(yàn)證器對象,簡單的Zipf定律分析表明這對應(yīng)于數(shù)萬個(gè)驗(yàn)證器對象是獨(dú)特的個(gè)人/實(shí)體。...
這將使技術(shù)實(shí)施者的工作變得更加容易,以及輕客戶端等輔助基礎(chǔ)設(shè)施的構(gòu)建者。


撰文:Vitalik Buterin,ethresearch

編譯:松雪,

?

以太坊和大多數(shù)其他(最終確定性)權(quán)益證明系統(tǒng)之間的主要區(qū)別在于,以太坊試圖支持非常多的驗(yàn)證器對象:我們目前有 895,000 個(gè)驗(yàn)證器對象,簡單的 Zipf 定律分析表明這對應(yīng)于數(shù)萬個(gè)驗(yàn)證器對象是獨(dú)特的個(gè)人 / 實(shí)體。 這樣做的目的是支持去中心化,甚至允許普通個(gè)人參與質(zhì)押,而不要求每個(gè)人放棄自己的代理權(quán)并將控制權(quán)交給少數(shù)質(zhì)押池之一。

?

然而,這種方法要求以太坊鏈每個(gè)時(shí)隙處理大量簽名(今天約為 28,000 個(gè);SSF 后為 1,790,000 個(gè)),這是一個(gè)非常高的負(fù)載。 支持此負(fù)載需要做出大量技術(shù)犧牲:

?

  • 這需要一個(gè)復(fù)雜的證明傳播機(jī)制,涉及將證明分割到多個(gè)子網(wǎng)之間,需要對 BLS 簽名操作進(jìn)行超優(yōu)化以驗(yàn)證這些簽名等等。
  • 我們沒有一個(gè)明確的可替代、足夠高效的抗量子的方案。
  • 類似視圖合并的分叉選擇修復(fù)變得更加復(fù)雜,因?yàn)闊o法提取單個(gè)簽名。
  • 對簽名進(jìn)行 SNARK 處理是困難的,因?yàn)樗鼈兊臄?shù)量很大。Helios 需要在一個(gè)專用的額外簽名上操作,稱為同步委員會簽名。
  • 它通過要求一個(gè)時(shí)間槽中有三個(gè)子時(shí)間槽而不是兩個(gè),增加了安全最小時(shí)間槽。

?

簽名聚合系統(tǒng)乍看起來是合理的,但實(shí)際上它創(chuàng)建了系統(tǒng)性復(fù)雜性,這種復(fù)雜性滲透到各個(gè)方面。


更何況,它甚至沒有達(dá)到自己的目的。 質(zhì)押的最低要求仍然是 32 ETH,這對很多人來說是遙不可及的。 而僅僅從邏輯上分析,從長遠(yuǎn)來看,讓每個(gè)人都簽到的系統(tǒng)真正為普通人提供質(zhì)押似乎是不可行的:如果以太坊有 5 億用戶,其中 10% 的用戶進(jìn)行質(zhì)押,那么 這意味著每個(gè)插槽有 1 億個(gè)簽名。 從信息理論上講,此設(shè)計(jì)中的處理削減需要每個(gè)插槽至少 12.5 MB 的數(shù)據(jù)可用空間,大致與完整 daksharding 的目標(biāo)一樣多(!!!)。 也許是可行的,但要求質(zhì)押本身依賴于數(shù)據(jù)可用性采樣會帶來很大的復(fù)雜性增益——即使這只是世界人口質(zhì)押的約 0.6%,而且還沒有開始涉及驗(yàn)證這么多簽名的計(jì)算問題。

?

因此,與其依賴于密碼學(xué)家創(chuàng)造魔法子彈(或魔法防彈衣),以使每個(gè)時(shí)間槽中的簽名數(shù)量不斷增加成為可能,我建議我們進(jìn)行一次哲學(xué)轉(zhuǎn)變:從一開始就放棄對此類期望。這將極大地?cái)U(kuò)展 PoS 設(shè)計(jì)空間,并允許進(jìn)行大量技術(shù)簡化,通過允許 Helios 直接在以太坊共識上進(jìn)行 SNARK 處理,使其更加安全,并通過使即使是像 Winternitz 這樣無聊而存在已久的簽名方案也能夠可行來解決量子抗性問題。

?

為什么不「只用委員會」呢?

?

許多面臨這一確切問題的非以太坊區(qū)塊鏈?zhǔn)褂昧艘环N基于委員會的安全方法。在每個(gè)時(shí)間槽中,它們隨機(jī)選擇 N 個(gè)驗(yàn)證者(例如,N 約等于 1000),這些驗(yàn)證者負(fù)責(zé)完成該時(shí)間槽。值得提醒的是,為什么這種方法不足夠:它缺乏問責(zé)制。

?

為了理解其中的原因,假設(shè)發(fā)生了一次 51% 攻擊。這可能是一次最終性逆轉(zhuǎn)攻擊或?qū)彶楣?。要發(fā)動(dòng)攻擊,仍然需要控制大部分質(zhì)押的經(jīng)濟(jì)參與者同意進(jìn)行攻擊,即運(yùn)行參與攻擊的軟件,與所有最終被選為委員會的驗(yàn)證者一起參與攻擊。隨機(jī)抽樣的數(shù)學(xué)保證了這一點(diǎn)。然而,他們?yōu)檫@樣的攻擊承擔(dān)的懲罰很小,因?yàn)榇蠖鄶?shù)同意攻擊的驗(yàn)證者最終沒有被看到,因?yàn)樗麄儧]有被選為委員會成員。

?

目前,以太坊采取了相反的極端。如果發(fā)生 51% 攻擊,整個(gè)攻擊驗(yàn)證器集合的大部分都會被削減質(zhì)押。目前攻擊的成本約為 900 萬 ETH(約合 200 億美元),并且這假設(shè)網(wǎng)絡(luò)同步以最大程度地有利于攻擊者的方式中斷。

?

我認(rèn)為這是一個(gè)高昂的成本,而且是一個(gè)過高的成本,我們可以在這個(gè)問題上做出一些犧牲。即使攻擊成本為 1-2 百萬 ETH 也完全足夠。此外,以太坊目前存在的主要中心化風(fēng)險(xiǎn)在一個(gè)完全不同的地方:如果最低質(zhì)押金額降低到接近零,大規(guī)模的質(zhì)押池的實(shí)力差異將不會太大。

?

這就是為什么我主張一個(gè)溫和的解決方案:在驗(yàn)證者的問責(zé)制上做出一些犧牲,但仍然保持可削減的 ETH 總量相當(dāng)高,作為交換,它給我們帶來了較小驗(yàn)證者集合的大部分好處。

?

在 SSF 下,每個(gè)時(shí)間槽的 8192 個(gè)簽名會是什么樣子呢?

?

假設(shè)采用傳統(tǒng)的兩輪共識協(xié)議(類似 Tendermint 使用的協(xié)議,以及 SSF 不可避免地會使用的協(xié)議),每個(gè)參與的驗(yàn)證者每個(gè)時(shí)間槽需要兩個(gè)簽名。我們需要繞過這個(gè)現(xiàn)實(shí)。我看到三種主要方法,我們可以這樣做。

?

方法一:全力投入去中心化質(zhì)押池

?

Python 有一句非常關(guān)鍵的話:


應(yīng)該有一種——最好只有一種——明顯的方法來做到這一點(diǎn)。

?

對于質(zhì)押平等化的問題,以太坊目前違反了這一規(guī)則,因?yàn)槲覀兺瑫r(shí)執(zhí)行兩種不同的策略來實(shí)現(xiàn)這一目標(biāo):(i)小規(guī)模單獨(dú)質(zhì)押,以及(ii)使用分布式驗(yàn)證器技術(shù)(DVT)的去中心化質(zhì)押池 。 由于上述原因,(i) 只能支持部分個(gè)人質(zhì)押者; 總會有很多人的最低存款額太大。 然而,以太坊正在為支持(i)付出非常高的技術(shù)負(fù)擔(dān)成本。

?

一種可能的解決方案是放棄(i)并全力投入(ii)。我們可以將最小質(zhì)押金額提高到 4096 ETH,并設(shè)定 4096 個(gè)驗(yàn)證者的總上限(約 1670 萬 ETH)。預(yù)計(jì)小規(guī)模質(zhì)押者將加入 DVT 池:要么通過提供資金,要么成為節(jié)點(diǎn)運(yùn)營商。為了防止攻擊者濫用,節(jié)點(diǎn)運(yùn)營商角色需要以某種方式受到聲望的限制,并且池之間將通過在這方面提供不同的選擇來競爭。提供資金將是無許可的。

?

我們可以通過限制處罰來使該模型中的集合質(zhì)押更加「寬容」,例如。 至所提供質(zhì)押總數(shù)的 1/8。 這將減少對節(jié)點(diǎn)運(yùn)營商的信任,盡管由于此處概述的問題,值得謹(jǐn)慎處理。


方法 二:兩級質(zhì)押

?

我們創(chuàng)建兩層質(zhì)押者:一個(gè)「重型」層,要求 4096 ETH,參與最終化,以及一個(gè)「輕型」層,沒有最低質(zhì)押要求(同時(shí)也沒有存款和提款延遲,以及沒有削減的風(fēng)險(xiǎn)),它增加了另一層的安全性。要使一個(gè)區(qū)塊最終化,既需要重型層最終化它,又需要輕型層在線輕型驗(yàn)證者的>= 50% 對其進(jìn)行證明。


這種異質(zhì)性對于抗審查和抵抗攻擊是有益的,因?yàn)橐构舫晒?,需要同時(shí)腐化重型層和輕型層。如果一層被腐化而另一層沒有,鏈將停止;如果是重型層被腐化,可以對其進(jìn)行懲罰。

?

這種方法的另一個(gè)好處是,輕型層可以包括同時(shí)用作應(yīng)用程序內(nèi)抵押品的 ETH。主要的缺點(diǎn)是,通過確立小規(guī)模質(zhì)押者和大規(guī)模質(zhì)押者之間的分歧,使質(zhì)押變得不太平等。


方法 三:輪流參與(即委員會但負(fù)責(zé))

?

我們采取的方法與這里提出的超級委員會設(shè)計(jì)類似:對于每個(gè)時(shí)隙,我們選擇 4096 個(gè)當(dāng)前活躍的驗(yàn)證者,并且我們在每個(gè)時(shí)隙期間仔細(xì)調(diào)整該集合,以確保我們?nèi)匀话踩?/p>

?

然而,我們做出了一些不同的參數(shù)選擇,以便在此框架內(nèi)獲得「最大的收益」。 特別是,我們允許驗(yàn)證者以任意高的余額參與,如果驗(yàn)證者擁有超過一定數(shù)量 M 的 ETH(必須是浮動(dòng)的),那么他們在每個(gè)時(shí)段都參與委員會。 如果驗(yàn)證者有 N<M ETH,那么他們有 N/M 在任何給定時(shí)間段內(nèi)進(jìn)入委員會的概率。

?

我們這里有一個(gè)有趣的杠桿,是將出于激勵(lì)目的的「權(quán)重」與出于共識目的的「權(quán)重」解耦:委員會內(nèi)每個(gè)驗(yàn)證者的獎(jiǎng)勵(lì)應(yīng)該相同(至少對于≤M ETH 的驗(yàn)證者),以保持平均獎(jiǎng)勵(lì)成比例。我們?nèi)匀豢梢砸?ETH 為權(quán)重,對委員會中的驗(yàn)證者進(jìn)行共識計(jì)數(shù)。 這確保了打破最終性需要 ETH 數(shù)量等于委員會中 ETH 總量的大于三分之一。

?

Zipf 定律分析將按如下方式計(jì)算 ETH 數(shù)量:

?

在總余額的每個(gè)二次方級別,驗(yàn)證者的數(shù)量與該余額級別成反比,并且這些驗(yàn)證者的總余額將相同。

因此,委員會將有來自每個(gè)余額級別的等量 ETH 參與,除了高于障礙 M 的級別(驗(yàn)證者始終在委員會中)。


因此,我們在上述級別的每個(gè) K 驗(yàn)證器中都有 Log2(M)級別,和 K+K/2+……=2K 以上級別的驗(yàn)證者。因此,K=4096/Log2(M)+2。


最大的驗(yàn)證器將有 M*k ETH。我們可以向后推算:如果最大的驗(yàn)證器有 2^18=262144 ETH,這意味著(大致)M = 1024 and k = 256。


質(zhì)押的 ETH 總額為:

?

前 512 名驗(yàn)證者的全部權(quán)益 (2^18*1+2^17*2+……+2^10*2^8=2359296)

?

加上隨機(jī)抽樣的較小賭注(2^8*(2^9+2^8+2^7……)約等于 2^8*2^10=2^18)

?

我們總共獲得了 2621440 個(gè) ETH,或者攻擊成本約為 900k ETH。

?

這種方法的主要缺點(diǎn)在于在協(xié)議內(nèi)部引入了一些更多的復(fù)雜性,以通過一種使我們在委員會更改時(shí)仍然能夠獲得共識安全性的方式隨機(jī)選擇驗(yàn)證者。

?

其主要優(yōu)勢在于它保留了獨(dú)立質(zhì)押的可識別形式,保留了一個(gè)單一的系統(tǒng),并且甚至允許將最小質(zhì)押金額降低到非常低的水平(例如 1 ETH)。

?

總結(jié)

?

如果我們確定在 SSF 協(xié)議之后,我們希望堅(jiān)持使用 8192 個(gè)簽名,這將使技術(shù)實(shí)施者的工作變得更加容易,以及輕客戶端等輔助基礎(chǔ)設(shè)施的構(gòu)建者。對于任何人來說,運(yùn)行一個(gè)共識客戶端都變得更加容易,用戶、質(zhì)押愛好者和其他人可以立即在這一假設(shè)的基礎(chǔ)上進(jìn)行工作。以太坊協(xié)議的未來負(fù)載不再是未知的:它可以通過硬分叉在未來提高,但只有當(dāng)開發(fā)人員確信技術(shù)已經(jīng)足夠改進(jìn),能夠以相同的輕松程度處理更多的簽名每個(gè)時(shí)間槽。

?

剩下的工作將是決定我們想要采取上述三種方法中的哪一種,或者也許是完全不同的方法。這將是一個(gè)關(guān)于我們對哪些權(quán)衡感到舒適的問題,特別是我們?nèi)绾谓鉀Q涉及的問題,比如流動(dòng)質(zhì)押,這可能可以與現(xiàn)在變得更加容易的技術(shù)問題分開解決。

本站提醒:投資有風(fēng)險(xiǎn),入市須謹(jǐn)慎,本內(nèi)容不作為投資理財(cái)建議。