V神最新思考:兩種途徑解決PoS共識(shí)機(jī)制下的MEV問題
特別感謝Justin Drake以及Flashbots團(tuán)隊(duì)給予的反饋和討論。
威脅共識(shí)網(wǎng)絡(luò)持續(xù)去中心化的一個(gè)主要風(fēng)險(xiǎn)是圍繞礦工可提取價(jià)值(MEV)的經(jīng)濟(jì)學(xué),這是從選擇下一個(gè)區(qū)塊內(nèi)容的能力中獲取利潤的復(fù)雜技巧。列舉一個(gè)簡單的MEV示例:針對(duì)自上一個(gè)區(qū)塊以來發(fā)生的價(jià)格變動(dòng)對(duì)所有鏈上去中心化交易所進(jìn)行套利。雖然一般的PoS獎(jiǎng)勵(lì)是相當(dāng)平等的,因?yàn)閱我或?yàn)證器的回報(bào)率與強(qiáng)大的驗(yàn)證池相同,但在尋找復(fù)雜的MEV提取機(jī)會(huì)方面,存在著顯著的規(guī)模經(jīng)濟(jì)性。
簡單說,一個(gè)規(guī)模大10倍的池子就擁有10倍的機(jī)會(huì)來提取MEV,并且它可以花費(fèi)更多的精力來進(jìn)行優(yōu)化,以從每個(gè)利潤機(jī)會(huì)中提取更多。除了這個(gè)問題之外,MEV 還使得去中心化池復(fù)雜化,因?yàn)樵谌ブ行幕刈又校匀恍枰粋€(gè)實(shí)體來負(fù)責(zé)打包并提出區(qū)塊,并且他們可以輕松地秘密提取MEV,而無需和池子本身分割收入。
最出名的解決方案就是提議者(proposer)/區(qū)塊構(gòu)建者(block-builder)分離。與區(qū)塊提議者試圖自己生產(chǎn)收益最大化的區(qū)塊不同,他們依賴于一個(gè)市場,在這個(gè)市場中,我們稱之為區(qū)塊構(gòu)建者的外部參與者生產(chǎn)包含完整區(qū)塊內(nèi)容和提議者費(fèi)用的bundle包,而提議者選擇最高費(fèi)用的bundle包。提議者的選擇被簡化為選取費(fèi)用最高的bundle包,這種算法非常簡單,以至于在一個(gè)去中心化池子中,它甚至可以在 MPC 內(nèi)完成以防止欺詐。
這篇文章提出了一些關(guān)于如何實(shí)現(xiàn)這一點(diǎn)的設(shè)計(jì)。
另請(qǐng)參閱 2018 年的想法,這些想法與此處的想法密切相關(guān):優(yōu)化提議承諾方案(Optimised proposal commitment scheme)
提議者/構(gòu)建者分離區(qū)塊提議設(shè)計(jì)的所需屬性
我們將重點(diǎn)關(guān)注五個(gè)主要的期望屬性:
- 不受信任的提議者友好性:提議者欺騙區(qū)塊構(gòu)建者的風(fēng)險(xiǎn)很小或沒有風(fēng)險(xiǎn),因此區(qū)塊構(gòu)建者沒有動(dòng)機(jī)選擇具有一定鏈下聲譽(yù)或與構(gòu)建者有個(gè)人關(guān)系的提議者(因?yàn)檫@將有利于大型池子)。
- 不受信任的構(gòu)建者友好性:區(qū)塊構(gòu)建者欺騙提議者的風(fēng)險(xiǎn)很小或沒有風(fēng)險(xiǎn),因此提議者沒有動(dòng)機(jī)選擇具有一定鏈下聲譽(yù)或與提議者有個(gè)人關(guān)系的構(gòu)建者(因?yàn)檫@會(huì)讓新的構(gòu)建者更難進(jìn)入市場)。如果需要存款來實(shí)現(xiàn)這一點(diǎn),則應(yīng)最大限度地降低門檻。
- 弱提議者友好性:該機(jī)制不應(yīng)該要求提議者具有 (i) 高帶寬或其他計(jì)算資源或 (ii) 高技術(shù)復(fù)雜性。
- Bundle包不可竊取:提議者應(yīng)不可接受區(qū)塊構(gòu)建者提出的Bundle包并從中提取交易來制作自己的Bundle包,從而阻止區(qū)塊構(gòu)建者獲利(并可能進(jìn)一步損害他們)。
- 共識(shí)層的簡單性和安全性:從共識(shí)層的角度來看,該機(jī)制應(yīng)該繼續(xù)是安全的,并且最好與現(xiàn)有的區(qū)塊提議機(jī)制進(jìn)行相同的分析。
想法1
- 區(qū)塊構(gòu)建者生成bundle包并發(fā)布它們創(chuàng)建的bundle包的頭(headers),一個(gè)bundle包頭包含對(duì)包主體(bundle body)的commitment承諾(預(yù)期的區(qū)塊內(nèi)容)、對(duì)提議者的付款以及構(gòu)建者的簽名。
- 提議者選擇提供最高付款的bundle包頭(僅考慮構(gòu)建者有足夠余額來實(shí)際支付的bundle包)。他們簽署并發(fā)布包含該包頭(bundle header)的提議。
- 看到簽名的提議后,提供包含包頭(bundle header)的區(qū)塊構(gòu)建者將發(fā)布完整的bundle包。
在這一點(diǎn)上,分叉選擇規(guī)則有能力做出三個(gè)判斷中的一個(gè)(而不是通常的兩個(gè)):
- 區(qū)塊提議不存在
- 區(qū)塊提議存在,但包主體(bundle body)不存在
- 區(qū)塊提議存在,并且包主體(bundle body)存在
請(qǐng)注意,在第二種情況下,proposal仍然成為了鏈的一部分,并且至關(guān)重要的是,區(qū)塊構(gòu)建者向提出者的付款仍在處理(但區(qū)塊構(gòu)建者自己不會(huì)獲得任何費(fèi)用或自己獲取MEV)。
分析
五個(gè)屬性中的三個(gè)很容易滿足:
- 提議者無條件地接受承諾的付款,因此bundle包不能欺騙提議者;
- 三個(gè)步驟都是非常自動(dòng)化和低帶寬的,因此這滿足弱提議者友好性;
- 提議者無法看到他們正在簽署的bundle包的內(nèi)容,因此這滿足bundle包的不可竊取性;
而共識(shí)層屬性,以及不受信任的提議者友好性要更加棘手。這種設(shè)計(jì)確實(shí)改變了分叉選擇的工作方式,將其從2個(gè)選項(xiàng)增加到3個(gè)選項(xiàng),這也意味著提議者不再是游戲中的最后一個(gè)參與者。從理論上講,人們可以推斷,如果分叉選擇能夠做出決定,那么這應(yīng)該是好的,但這仍然是一個(gè)潛在未知的重大變化。
提議者看不到bundle包內(nèi)容,也不能通過bundle包竊取來欺騙區(qū)塊構(gòu)建者,但是他們可以對(duì)區(qū)塊構(gòu)建者使用更微妙的攻擊。他們可以在一個(gè)slot時(shí)間段的末尾發(fā)布他們的提議,確保證明人(可能)按時(shí)看到proposal提議,但不能給區(qū)塊構(gòu)建者足夠的時(shí)間發(fā)布body,因此證明人很有可能沒有按時(shí)看到body。這給區(qū)塊構(gòu)建者帶來了風(fēng)險(xiǎn),并激勵(lì)他們青睞值得信賴的提議者。此外,它還創(chuàng)造了一個(gè)機(jī)會(huì),通過這個(gè)機(jī)會(huì),惡意的大多數(shù)人可以對(duì)自己不喜歡的區(qū)塊構(gòu)建者進(jìn)行重罰。
對(duì)于這一問題,我認(rèn)為有兩種緩解方法:
- 證明人在接受提議的最長時(shí)間和接受一個(gè)body的最長時(shí)間之間有2秒的延遲。如果你信任證明人,這基本上可以解決問題,盡管區(qū)塊構(gòu)建者有損失資金風(fēng)險(xiǎn)的基本問題仍然存在。此外,尚不清楚證明者以這種方式投票是否符合激勵(lì)措施(盡管可通過要求他們證明提案的2 秒長VDF 解決方案來迫使他們等待)。
- 如果一個(gè)body沒有被包含在內(nèi),提議者只會(huì)得到一半的付款(而區(qū)塊構(gòu)建者只支付一半)。這使得提議者惡意破壞的代價(jià)很高,但它仍確保了區(qū)塊構(gòu)建者惡意破壞的代價(jià)仍然很高(在這兩種情況下,代價(jià)都足以讓你相信甚至匿名參與者也不想這么做)。例如,如果一個(gè)bundle包的提議者費(fèi)用為1,區(qū)塊構(gòu)建者利潤為1.05:
(1)誠實(shí)的行為將導(dǎo)致(構(gòu)建者,提議者)回報(bào)為(0.05, 1);
(2)提議者或證明人發(fā)布太晚,導(dǎo)致一個(gè)只有header頭的區(qū)塊被接受,則回報(bào)為 (-0.5, 0.5) ;
想法2
- 區(qū)塊構(gòu)建者制作bundle包并發(fā)布他們創(chuàng)建的bundle包頭。一個(gè)bundle包頭包含對(duì)內(nèi)容的承諾、對(duì)提議者的付款以及來自構(gòu)建者的簽名。
- 提議者選擇并簽署一份聲明,該聲明由他們所看到的bundle包頭列表組成。
- 看到該聲明后,選定的區(qū)塊構(gòu)建者會(huì)發(fā)布其相應(yīng)的包主體(bundle body)。
- 提議者從他們預(yù)先提交的列表中選擇一個(gè)bundle包頭,并用它發(fā)布一個(gè)提議。
有一個(gè)新的罰沒條件,它可以驅(qū)逐和懲罰任何發(fā)布不屬于(相同slot時(shí)間段內(nèi))列表提議的提議者。
還要注意的是,提議者在步驟(2)中提交的bundle包頭列表也可以是包頭的加密哈希列表,其中每個(gè)哈希都加密到該bundle包的構(gòu)建者的公鑰,以便只有構(gòu)建者知道它們是否被接受。這降低了DoS攻擊風(fēng)險(xiǎn)。
分析
同樣,五個(gè)屬性中有三個(gè)很容易滿足:
- 提議者不能竊取bundle包,因?yàn)樗麄冎挥性谝褜⒆约合拗圃谟邢薜默F(xiàn)有bundle包頭集時(shí)才能看到任何bundle包主體。
- 如果不包括完整的body,就不可能發(fā)生構(gòu)建者對(duì)提議者的付款,因此提議者也不能在經(jīng)濟(jì)上欺騙構(gòu)建者。
- 共識(shí)屬性和以前一樣,因?yàn)橄到y(tǒng)仍然是提議者為最后一個(gè)行動(dòng)者的游戲,并且共識(shí)規(guī)則決定的內(nèi)容沒有變化。
在這種情況下要確保的兩個(gè)較難的屬性是,弱提議者友好性和不受信任的區(qū)塊構(gòu)建者友好性。令人擔(dān)憂的是,惡意的區(qū)塊構(gòu)建者可以通過提出大量的提議來攻擊提議者,這些提議都提供了非常高的費(fèi)用,但從不公布其中任何一個(gè)提議的body。如果提議者對(duì)他們接受多少bundle包有上限,那么這種攻擊可以將所有合法bundle包定價(jià),并使提議者沒有可合法包含在其區(qū)塊中的bundle包。如果提議者可接受的bundle包數(shù)量沒有上限,那么這可能導(dǎo)致向提議者發(fā)送無限數(shù)量的全bundle包體(相想每個(gè)500 kb),這是一個(gè)巨大的帶寬需求。
該難題的一個(gè)解決方案是以某種非硬性限制的方式對(duì)bundle包頭提交進(jìn)行速率限制。
- 提交bundle包的費(fèi)用,通過一些類似 EIP-1559 的機(jī)制進(jìn)行調(diào)整以達(dá)到一定的速率(例如每個(gè)slot 8個(gè)bundle包)。
- 作為區(qū)塊建設(shè)者的存款要求,以及一條規(guī)則,即當(dāng)更低價(jià)格的bundle包被包含了,而你發(fā)布的bundle包沒有被包含,那么你就不能為接下來的N個(gè)slot提交bundle包。
費(fèi)用本身也可能僅在你的bundle包未包含,但較低價(jià)格的undle包包含在內(nèi)的情況下收取,因?yàn)檫@是你可能存在惡意行為的具體情況(或提議者是惡意的或網(wǎng)絡(luò)當(dāng)時(shí)是壞的)。
這是有先例的,比如ENS拍賣收取0.5%的失敗者費(fèi)用,以阻止人們?cè)陲@然不會(huì)獲勝的情況下進(jìn)行出價(jià)(只是為了增加獲勝者必須支付的金額)。
然而,這些技術(shù)存在對(duì)提議者引入信任要求的風(fēng)險(xiǎn),因此需要謹(jǐn)慎完成,并且未能將bundle包包含在內(nèi)的懲罰不能太高。
另一種解決方案是允許免費(fèi)和無限制的bundle包主體發(fā)布,但限制網(wǎng)絡(luò)層的主體傳播。一種簡單的算法是:
- 為可以傳播bundle包主體的最小時(shí)間添加一個(gè)輕微的延遲:最高支付bundle包的延遲為0秒,第二高支付bundle包的延遲為0.2秒,第三高支付 bundle包的延遲為0.38秒,第K高支付的bundle包,就延遲
秒。
添加一個(gè)規(guī)則,如果節(jié)點(diǎn)已廣播了一個(gè)更高收入的bundle包主體,則該節(jié)點(diǎn)不會(huì)再廣播一個(gè)bundle包主體。
這兩種技術(shù)可以結(jié)合在一起:你可以收取少量費(fèi)用來將預(yù)期的bundle包數(shù)量減少到(例如)每slot 50個(gè),然后使用這樣的網(wǎng)絡(luò)層機(jī)制進(jìn)一步降低帶寬需求。
結(jié)論
截至目前,我還無法確定上述兩種方法是否是解決問題的唯一途徑,可能還會(huì)有其他的方法。在這兩種方法中,想法 (1) 在概念上更簡單,但它給區(qū)塊構(gòu)建者帶來了風(fēng)險(xiǎn)以及更復(fù)雜的分叉選擇規(guī)則要求。
而從分叉選擇和共識(shí)角度來看,想法 (2)要更簡單,但它在處理惡意區(qū)塊構(gòu)建者DoS攻擊方面存在挑戰(zhàn),并且該問題的任何解決方案也有可能產(chǎn)生其他的問題(盡管可以想象這可以最小化)。到目前為止,我仍然不確定哪個(gè)方案會(huì)更好一些。
注:原文作者是以太坊聯(lián)合創(chuàng)始人Vitalik Buterin。
你可能感興趣的文章
-
Mynt是什么?如何在Monad測(cè)試網(wǎng)上挖礦Mynt?
Mynt是一個(gè)去中心化的穩(wěn)定幣協(xié)議,允許用戶通過存入ETH或MON(Monad 的原生代幣)作為抵押品,鑄造與美元掛鉤的穩(wěn)定幣USDm,通過與 Mynt 進(jìn)行測(cè)試網(wǎng)互動(dòng),用戶可能有機(jī)會(huì)獲…
2025-06-06 -
如何在加密貨幣交易中應(yīng)用Black-Litterman模型?
Black-Litterman模型由Fischer Black和Robert Litterman于1991年在高盛開發(fā),Black-Litterman模型是加密貨幣交易和投資的強(qiáng)大工具,為最優(yōu)投資組合配置提供了穩(wěn)健的框架,那…
2025-06-06 -
加密貨幣交易中的諧波形態(tài):八種常用的諧波形態(tài)指南
諧波形態(tài)是依靠斐波那契比率來預(yù)示價(jià)格趨勢(shì)潛在反轉(zhuǎn)的高級(jí)圖表形態(tài),諧波形態(tài)精確且數(shù)學(xué)定義明確,使其成為重視市場預(yù)測(cè)結(jié)構(gòu)化方法的交易者的最愛,在本指南中,我們將探討諧…
2025-06-06 -
區(qū)塊鏈的多層結(jié)構(gòu)都有那些?L1 與 L2 有什么區(qū)別?新手完整指南
區(qū)塊鏈的多層結(jié)構(gòu)都有那些?區(qū)塊鏈層:完整指南區(qū)塊鏈被稱為革命性的,但其潛力的本質(zhì)在于其多層架構(gòu),這些層決定了信息在分布式網(wǎng)絡(luò)中的傳遞、驗(yàn)證、記錄和訪問方式,從硬件…
2025-06-06 -
什么是空投挖礦?如何在2025年進(jìn)行空投挖礦?
空投挖礦是指積極尋求并參與由各種加密貨幣初創(chuàng)公司或項(xiàng)目的創(chuàng)始人和創(chuàng)始人組織的空投活動(dòng),很多新手投資者還不了解什么是空投挖礦?如何在2025年進(jìn)行空投挖礦?下文將為大…
2025-06-06 -
什么是時(shí)空證明PoSt?有什么優(yōu)勢(shì)?有哪些值得關(guān)注的項(xiàng)目?
Proof-of-Space-Time(PoST)是什么?Proof-of-Space-Time(PoST)有什么優(yōu)勢(shì)?時(shí)空證明PoSt有哪些值得關(guān)注的項(xiàng)目?下面腳本之家小編給大家詳細(xì)介紹下時(shí)空證明PoSt是什么吧…
2025-06-06 -
Solana是什么?它如何運(yùn)作?與其他鏈有何不同?
Solana 是一個(gè)高性能公鏈,以其速度快、費(fèi)用低和可擴(kuò)展性而聞名,它于 2020 年上線,支持智能合約、去中心化應(yīng)用 (dApp) 和數(shù)字資產(chǎn)——與以太坊類似,但速度更快、成本更低…
2025-06-05 -
SUI上排名前五的空投項(xiàng)目有哪些?SUI 上5大最佳空投項(xiàng)目
Sui近期在DEX日交易量上超越了Base,表明盡管發(fā)生了短暫震動(dòng)網(wǎng)絡(luò)的安全事件,但用戶參與度依然強(qiáng)勁,即使在受到協(xié)議層漏洞影響后,生態(tài)系統(tǒng)仍展現(xiàn)出非凡的韌性——用戶并未…
2025-06-05 -
InfoFi與注意力經(jīng)濟(jì)平臺(tái)Kaito是什么?Kaito新手使用教學(xué)
KAITO是AI驅(qū)動(dòng)的Web3一站式資訊平臺(tái),KAITO是Kaito生態(tài)關(guān)鍵代幣,生態(tài)主要交易媒介、能質(zhì)押、能參與項(xiàng)目Launchpad、能分配獎(jiǎng)勵(lì),就像是注意力版本的$BNB代幣之于BNB生態(tài),下…
2025-06-05 -
什么是InfoFi?有哪些InfoFi項(xiàng)目值得關(guān)注?如何利用InfoFi賺錢
一個(gè)新的金融前沿正在形成——信息、注意力和數(shù)字信號(hào)成為寶貴的資產(chǎn),在本文中,我們探討了什么是InfoFi,有哪些InfoFi項(xiàng)目值得關(guān)注以及個(gè)人在這個(gè)新的信息驅(qū)動(dòng)型經(jīng)濟(jì)中如…
2025-06-05