
編譯:Perry Wang
編譯:Perry Wang
編譯:Perry Wang
編譯:Perry Wang
在開始閱讀本文之前,我個人強烈建議先讀一下我們有關礦工可提取價值(MEV )的上一篇文章(鏈聞發表的中文版), 宣告Flashbots 成立的文章以及這一播客,了解Flashbots (Flashbots是一個旨在捍衛MEV 生態系統透明性的組織)生態系統及MEV。文章討論了有關Flashbots、MEV 提取以及它們與以太坊共識之間相互作用的一些更複雜細節。
2021 年6 月29 日,Flashbots Discord 中出現了一個有趣的想法:
危機解除!
圖片描述
與其在未來審查交易,不如去激勵審查/取代過去的交易。
圖片描述
圖片描述
這些帖子之後是一個故事,涉及混亂的Twitter 憤怒、出色的獨立黑客,以及為什麼社會共識與加密貨幣中的算法共識一樣重要的一些最好的例子。
一級標題
一級標題
一級標題
GHOST與穿越時空的叔塊
在目前的狀態下,以太坊是一個使用中本聰共識的工作量證明系統;這意味著保護網絡的礦工之間的網絡共識依賴於原始計算能力。這也意味著交易只有概率最終性;一個交易被包含在一個區塊中的時間越長,該交易被恢復的可能性就越小。因此,通常建議工作量證明區塊鏈上的用戶在考慮“完成”交易之前等待。在以太坊上,假設交易在7 個區塊確認後完成通常是安全的。
在工作量證明系統中,兩個礦工可能同時挖出有效區塊並嘗試將這些區塊傳播到網絡。最終發生的事情是網絡留下了兩個有效區塊,但在下一個挖礦競賽開始之前,只能將一個添加到鏈上。這意味著其中一個人挖出的塊必須變得“陳舊”或被丟棄。這不是很好,原因有兩個。首先,生產陳舊區塊的礦工白白浪費了他們的資源!其次,這使得網絡容易出現中心化風險,因為礦工急於確保他們有足夠的算力以避免生產過時的區塊。有關這方面的更多信息,請查看此內容。
在比特幣網絡上,10 分鐘的區塊時間和分分鐘的傳播時間使得陳舊區塊的概率相當低。然而,在以太坊上,區塊時間要短得多——大約12 到13 秒——產生陳舊區塊的可能性要高得多。這使得上述資源浪費和中心化的問題更加相關。以太坊通過使用GHOST(最貪婪的重觀測子樹)協議的修改版本來解決這個問題。 GHOST 協議是在2013 年設計的,旨在解決快速區塊時間鏈中陳舊區塊的精確問題,基本前提很簡單:礦工接受的“最長”鍊是具有最高累積工作量證明難度的鏈,包括作為當前區塊祖先的後代的陳舊塊。這樣的區塊被稱為“叔塊”。以太坊在GHOST 上使用了一個變體,它使用相同的原則選擇難度最長的鏈,但在難度計算中不包括叔塊。它分配一些區塊獎勵給叔塊,讓這些區塊中的交易可以訪問,但不包括主鏈中的那些交易。採用新的“最長”鏈並忽略陳舊塊的過程稱為鏈重組。
那麼這與MEV 有什麼關係呢?
有兩種主要方式可以激勵網絡用戶利用叔塊和重組。第一個已經在實踐中發生並且威脅性要小得多,它被稱為“叔叔強盜(Uncle Bandits)”,由Flashbots 獨家啟用。截至2021 年7 月中旬,Flashbots 使用其MEV-Geth 客戶端獲得了約86% 的以太坊算力支持;但是,Flashbots 捆綁包仍然有可能包含在叔塊中,從而為Uncle Bandits創造機會。這最初是在羅伯特米勒的一個帖子中詳細介紹的。由於包含在叔塊中的交易不會改變以太坊狀態,但對其他人仍然可見並且是有效交易,精明的MEV 搜索者可以查看叔塊Flashbots 捆綁包並發布一個新捆綁包,其中包含原始捆綁包中的一些交易用自己的交易來捕捉主鏈上的套利機會,僅Uncle Bandits是沒有協議威脅的;最終,它們是捆綁包被概率性地包含在叔塊中的結果,而其他人則抓住了邊緣化的機會。不過,Uncle Bandits的下流大表哥是時間匪徒(time bandit),更讓人擔憂。正如MEV 的開創性研究論文中詳述的那樣,時間匪徒是一種理論攻擊,當來自MEV 的獎勵開始超過區塊獎勵時就會發生。時間匪徒攻擊的前提是,可以訪問大量以太坊算力的礦工可以通過嘗試重新挖掘以前的區塊、捕獲這些區塊中的所有MEV 並重組鏈來使以太坊的時間倒轉。最簡單的方法是租用51% 的算力;在這樣做時,攻擊者將返回一定數量的區塊,獲取現在和過去這些區塊之間的所有MEV 利潤,並使用該利潤來補貼攻擊。
作為MEV 利潤的交易費用的大約百分比。來源:Flashbots
如上圖所示,MEV 的利潤正成為礦工經濟回報的越來越大的一部分,這使得時間匪徒攻擊和重組的威脅越來越大。這也意味著理論上應該可以賄賂礦工來重組鏈。策略是等待其他用戶提交有利可圖的捆綁包,支付礦工重組鏈,然後進行叔叔或時間匪徒攻擊牟利。這就是我們的戲劇開始的地方。
在Nathan 最初提出修改MEV-Geth 的想法後,該想法可以激勵叔叔/時間匪徒的重組,搜索者立即著手開發該軟件,而加密貨幣Twitter 則陷入了激烈的辯論。這個模因準確地總結了社區的大部分情緒:
受歡迎的Twitter用戶MEV Intern 對引入此類沒有工具來防禦它的軟件表示擔憂; 畢竟,雖然這種激勵重組在技術上是在共識範圍內被允許的,但它們也確實破壞了協議的穩定性,並且可能通過創建圍繞礦工行為的安全假設受到挑戰的場景對以太坊進行了過多的壓力測試。
儘管如此,潘多拉的盒子已經打開了。
不久之後,兩位備受矚目的MEV 策略師和研究人員— Edgar Arout 和0xbunnygirl — 發布了他們自己的個人版本,以“請求重組”。
Edgar 的存儲庫是Flashbots 創建的MEV-Geth 客戶端的一個分支。該庫已被私有化,但代碼庫仍在進行中,這將使MEV 搜索者能夠請求重組一定數量的區塊,省略某些交易並添加新的交易,包括向礦工付款。
這反過來又激發了0xbunnygirl 在以太坊上啟動一個智能合約,這將為此提供簡單的支付渠道。 Request for Reorg 合約將使用戶能夠附加一個請求,並為礦工和他們想要重組的區塊提供相關的獎勵。然後,礦工將執行一個時間匪徒並包括使他們能夠在重組中要求獎勵的交易以及所需的省略/包括的交易,並因不誠實的行為而懲罰礦工。當然,這個合約同樣是一個概念驗證; 礦工可以決定不誠實並在回滾狀態時審查懲罰交易,並且沒有在實際合約中包含特定交易或審查另一筆交易的編碼。
然後…
社會共識,而不是算法共識,已經停止了似乎危害以太坊的工具的開發,僅此而已。
一級標題
一級標題
一級標題
我們都會成功的,Anon
雖然圍繞重組請求的所有發展和爭論聲可能最終沒有帶來任何威脅,但問題仍然存在:我們現在和未來有多少時間/叔叔匪徒需要擔心?
好吧,事實證明,也許不多。讓我們看看為什麼。
經濟考慮
MEV 研究員0x9116 對重組可能有意義的地方進行了一些很棒的粗略期望值數學計算。快速回顧該帖子內容,假設30% 的算力(Ethermine 大約佔有這麼多)需要超過總費用的3.3 倍,加上0.58 ETH。
讓我們進一步擴展這個例子。鑑於在工作量證明系統中控制51% 的網絡可以實現整個網絡控制(從而實現最大MEV),讓我們看看當我們剛好低於這個或50% 時微積分如何變化。在這種情況下,我們可以使用與上述線程相同的框架,並進行一些修改。我們沒有像最初假設的那樣假設我們(作為一個尋找時間匪徒的礦工)肯定可以從接下來的兩個區塊中獲取獎勵,而是放寬了假設,並對這些結果進行概率加權。基礎區塊獎勵為2 ETH。
假設存在一個我們尚未挖出的區塊A,我們擁有50% 的算力,並將A 的礦工支付表示為X,將預期的MEV 支付表示為Y。我們希望挖出兩個區塊(要么用於時間匪徒)。如果我們在A 之上挖出接下來的兩個區塊,我們有50% 的機會獨立挖出每個區塊,因此預期收益為0.5 * (4 ETH + 2Y) 或2 ETH + Y。如果我們嘗試一個時間匪徒(並且,正如最初假設的0x9116,如果下一個區塊B 被挖出,則退出):
以0.5 的概率開採下一個區塊B,然後我們才能對A 進行叔叔處理並將其替換為A`。然後我們回到第一個塊,我們只是希望公平地開採接下來的兩個區塊。在這種情況下,預期收益為0.5 * (0.5 * (4 + 2Y)) 或1 + 0.5Y。
以0.5 *0.5 = 0.25 概率A` 被挖掘,但B 在我們可以挖掘B` 之前被挖掘。 A` 成為B 的叔叔,獲得1.75 ETH 獎勵,您希望在B 之後挖掘區塊。在這種情況下,預期收益為0.25 * (1.75 + 0.5 * (2 + Y)) 或0.6875 +0.125Y。
以0.25 的概率,我們挖出A` 和C`。在這種情況下,預期收益為0.25 * (4 + X + Y) 或1 + 0.25X + 0.25Y。
這導致預期收益為2.6875 + 0.875Y + 0.25X,這必然大於誠實挖礦接下來兩個區塊的預期收益。這導致X > 0.5Y — 2.875 ETH 的必要條件。這意味著即使算力接近51%,X 也大於當前區塊中捕獲的MEV 的一半減去2.875 ETH。雖然這種情況偶爾會發生,但截至2021 年7 月中旬,租用51% 的網絡1 小時的成本約為110 萬美元。這意味著租用50% 的算力(在不完全劫持共識的情況下最大化時間匪徒的可能性) ) 將花費大約100 萬美元。因此,重組是值得的,X > 100 萬美元,或者在撰寫本文時,大約550 ETH。如下圖所示,每天提取的MEV 總額通常在幾百萬美元,因此嘗試租用50% 來啟動時間匪徒的成本很可能遠遠超過收益。
當然,這並不是說沒有單個區塊可以證明這種成本是合理的。諸如Justin Sun 在Liquity 的10億美元倉位差點被清算,不得不支付3 億美元以避免失去頭寸的事件將阻止在鏈末端進行重組的機會,該重組的利潤足以補貼租借50% 算力。然而,單個攻擊者也不太可能租到50% 的算力——就目前而言,NiceHash 上任何給定時間可供出租的以太坊算力數量通常低於10%。
如果你想在這裡進行參數化,我製作了一個工具,可以讓你確定誠實挖出兩個區塊的預期收益與在最近的區塊上嘗試時間匪徒攻擊的預期收益,使用可用網絡算力的份額,總的礦工付款是按時間劃分的,以及未來區塊的預期礦工支付:
另一方面,如果有可能在經濟上激勵重組,那麼它也應該同樣可以抑制重組。
開發人員Daniel Goldman將0xbunnygirl 最初的Request for Reorg 合約顛倒了過來; 稱為Deorg,它將允許任何用戶在未來某一區塊中創建向礦工支付的賞金,如果發現他們是惡意的,則會削減獎勵(事實上,Deorg 確實通過要求一個區塊的哈希值對良好行為進行了編碼) 在經過一定數量的確認後,某個高度的區塊是不變的,Daniel 善意地指出了這一點) ,但它確實說明了大多數重組的經濟激勵措施可以重新設計。
另一種降低重組風險的潛在方法是採用一種“費用平滑”的方法(正如Ivan Bogatyy 在MEV.wtf 虛擬峰會上提到的那樣),作為一個誠實的礦工,你向在你之上的挖礦者支付MEV 。這裡的設計空間與激勵重組的空間一樣豐富; 正如Tom在我們上一篇關於MEV 的文章中所說的那樣,“每發現一支腳踏槍,就會有1000 名腳踏槍銷售人員和1000家腳踏槍防彈衣製造商蓬勃發展。”
最後,值得注意的是,重組和自私挖礦可能會演變為遞歸的負和遊戲,這實際上可能會讓礦工付出代價,而不是帶來利潤。如果所有礦工都在等待其他人找到MEV 然後進行重組,那麼網絡可能會陷入困境,導致交易完成時間過長和對抗性來回博弈,隨著礦工繼續嘗試已經被其他礦工抓住的時間匪徒攻擊機會,這會降低自己的利潤。IC3 研究人員的一篇論文使用強化學習(RL) 來模擬比特幣網絡上的自私挖礦並結合進站模型,發現當所有代理都使用自私挖礦策略(時間匪徒,沒有MEV 部分來捕獲區塊獎勵和費用)時,相對獎勵會下降。中的RL 模型模擬的自私挖礦代理的相對獎勵。
一級標題
一級標題
一級標題
權益證明和社會共識
然而,可以說,權益證明對重組的最大抵抗不是2個epoch之後的絕對最終性,而是“身份”的概念。鑑於提議者是已知的,已知有惡意行為的驗證者可能會被參與、Flashbots 網絡等列入黑名單。此外,隨著較大的現有礦工(如Ethermine)從挖礦資產轉向大型交易所和平台(如Lido 和Kraken)進行質押,他們在驗證者領域將佔據主導地位,這些機構越來越有可能不會冒因重組甚至收取MEV 費用(作為社會和監管爭論點)而導致聲譽受損的風險。
一級標題
一級標題
一級標題
MEV殘局