撰文:rain and coffee
最大可提取價值,或稱MEV,在Crypto 中一直都很熱。 MEV 指的是通過重新排序、插入和審查區塊內的交易,以及從良性的MEV(如套利、清算等)中獲取利潤,從而從用戶身上提取價值。早在2014 年,它就被/u/pmcgoohan 在Ethereum subreddit 上首次提及。
可量化MEV 的最早例子之一是在CryptoKitties 的熱潮中發生的。具體而言,完成CryptoKitties 懷孕(生下一隻新貓),任何人都可以在貓的分娩區塊後通過調用智能合約的giveBirth ()來完成懷孕。隨後,用戶便可以獲得Eth 獎勵。這有可能提前運行,從而產生利潤(MEV)。正如Markus Koch 在2018 年指出的那樣– 在遊戲歷史早期,生育小貓的賬戶只有那麼幾個。而隨著時間的推移,其他賬戶開始調用giveBirth (),因為他們看到利潤可以免費獲得。從數據可以看出,只有少數助產士佔了大部分的出生量。
頂級giveBirth 調用者(助產士)的收入
此外,助產士是通過gas 費用進行競爭的(因為儘管在代碼效率上相對平均,但在實現giveBirth 調用方面,一些助產士表面上比其他助產士更成功、更有利)。當時做出的結論是,分娩費使CryptoKitties 的玩法比不需要該機制時更昂貴。這個例子說明MEV 對終端用戶來說等於交易執行不力,因為它在生育期間激增了gas 費用。
另一個例子是,早在2017 年中後期,Bancor 上的搶跑運行。 2017 年6 月,Phil Daian(Flashbot 聯合創始人)和Emin(Avax 創始人)指出了這種可能性。他們表明,礦工將能夠在Bancor 上提前進行任何交易,因為礦工可以在他們開采的區塊內自由地重新排序交易。同年8 月,Ivan Bogatyy 在這方面更進一步,建立了一個程序,可以作為一個非礦工(只是一個搜索者!)監測和執行Bancor 上的前置交易機會- 因為區塊鍊及其mempools 是公開的。如果你想了解早期的MEV 世界,可以閱讀這本不錯的讀物(鏈接)。
從那時起,MEV 迅速發展,隨著2019 年以來鏈上經濟活動的增加和DeFi 的出現,它已經成為協議設計的一個重要組成部分。而隨著L2、橋接、應用鍊等的興起,研究“模塊化”設計空間可能對MEV 產生的潛在影響是很有意思的。但首先,我們必須概述一下目前MEV 中的參與者。
在MEV 生態系統中,有各種各樣的參與者。其中搜索者通常是最有利可圖的MEV 參與者(從第一原則的角度來看,雖然更多的“一般”價值最終由構建者和驗證者獲得,因為他們聚集了許多搜索者的價值)。讓我們先解釋一下他們是誰。另外還需注意的是,由於協議設計的原因,部分參與者比其他參與者串通得更多。參與者(bar 用戶和錢包)包括搜索者(S)、構建者(B)和驗證者(V)。在MEV 供應鏈中,他們的角色如下:
搜索者:試圖通過不同的方法找到鏈上所有可提取的價值。搜索者與構建者合作,因為搜索者願意支付高額的gas 費用,以使他們的交易包括在內。這很重要,因為許多我們認為理所當然的事情,如套利和清算,都是由搜索者執行的。搜索者將交易捆綁在一起,並將其交給構建者。
構建者:把被捆綁在一起的交易拿出來,並把它們放到區塊中給到發起者。除了搜索者的交易之外,幾個捆綁的交易可以被組合在一起作為一個區塊,另外也有可能包含其他用戶在mempool 中的待定交易,捆綁的交易也可以針對特定的區塊進行包含。
驗證者:驗證者發揮共識作用,對區塊進行驗證。他們向追求利潤的搜索者和構建者出售區塊空間,並反過來得到部分獎勵。請記住,驗證者從發行(發起者、證明人、同步)和執行獎勵(MEV+Tips)中獲得獎勵。
那麼,為什麼有些人說MEV 是有害的,儘管表面上它似乎為生態系統和安全預算提供了價值?因為MEV 通過優先gas 拍賣(PGA)進行競爭。 PGAs 是一種拍賣,費用通過競爭性出價來獲得交易的優先順序。費用估算者使用PGA 膨脹的gas 價格作為參考,導致用戶為其交易支付了更多費用。應該指出的是,這主要是在MEV-Geth/Boost 和Flashbots 之前的運作方式。 MEV- geth 發布後,大部分與MEV 相關的計算都被從鏈下移除,取而代之的是一個無需許可的側中繼,允許MEV 搜索者直接與節點和其他參與者通信。擁堵收費降低。當你對比vanilla 構建者和MEV-Boost 的份額時,這也更容易看出。
在其核心,這個問題源於這樣一個事實:用戶和bots 在同一個池子裡,與他們是否追求MEV 無關。
-
參與者有巨大的動機去敲詐用戶以獲取利潤。
-
參與者有巨大的動機中心化(向驗證者/構建者靠近)。
-
儘管系統是去權限的,但敲詐可以通過協調人的中心化(不管是誰執行共享層的機制,如訂購、結算、安全、流動性、消息傳遞等)而變得可信。
因此,敲詐可以而且會發生(通過中心化)。
此外,參與MEV 的門檻也越來越高,導致了進一步的中心化。這部分是由於搜索者必須對MEV 機器人進行不斷的維護的事實。競爭是粗暴的,代碼也在不斷更新。如果你找到一個優勢,你更有可能不分享它,儘管區塊鍊是開放的賬本,它們最終會被發現。 MEV“市場”,如Flashbots,也是相當中心化的,因為絕大多數區塊都是通過Flashbots 流動的(70%!),儘管MEV-Boost 中繼是去權限的,並且有好幾個終端(根據Flashbots,有11 個終端)。
需要注意的是,他們有計劃將整個MEV 供應鏈去中心化,我們相信Flashbots 團隊很清楚當前實施的細微差別。中心化的Flashbots 中繼器並不直接擁有任何驗證者的權力。 Flashbots 也不能審查與MEV 無關的交易。驗證者仍然可以包括沒有經過Flashbots 中繼的交易。 Flashbots 顯然是一個中心化的力量,但是一個非Flashbots 世界的替代方案肯定感覺會更糟。由於MEV-Boost 的參與者比非參與者的平均收入要高,這也導致了利用它的行為者的進一步中心化。
不過不要害怕,答案一直是“我們將去中心化!”雖然,如果Flashbots 不能就MEV 的問題達成共識(正如最近Phil Daian 的播客中所提到的),那麼更廣泛的社區將如何達成共識?
如果Flashbots 作為一個系統最終成為一個DAO,那麼它本身就有可能去中心化。這與Lido 和這裡的其他協議有著類似之處。為了擺脫中心化,許多協議說它將成為一個去中心化的DAO(最終),就像Flashbots。你可以爭辯說,它只是把中心化改成更多的層次。然而,增加更多的層次有著有限的優點。最終,在大多數情況下,有一點去中心化總比沒有去中心化要好。不過,這也取決於這種去中心化的可攻擊性如何。
那麼,為什麼行為者的參與是如此重要?
驗證者希望收集最多的費用/MEV,以便為其用戶的Eth 提供最高的質押率。這是激勵驗證者挑選由構建者創造的最高價值區塊的一個因素。
構建者將匯總來自用戶、MEV搜索者和他們自己的私人訂單流的交易,以盡可能地製造最高價值的區塊。
-
擁有獨家私人訂單流的構建者應該可以創造最有價值的區塊。
-
一個構建者的區塊被持續納入,會激勵更多的私人訂單流到達這個構建者,因為用戶和搜索者希望他們的交易能迅速被納入。
-
預先出售未來的區塊空間,以便做市商或協議能夠為他們的交易或用戶確保區塊空間。
MEV 區塊生產和交易包容動態在本質上創造了一個不公平的市場。如果不直接干預,市場結構就無法得到改善。協議本身必須控制市場,或者有機制來支持它(正如我們所見)。發起者之間的合作(他們在市場上擁有所有的權力)似乎更令人擔憂,特別是在一個半去權限,半去中心化的定序器設置中。然而,如果在MEV 的提取過程中發生了罰沒,那麼除了交易費用之外,還有什麼理由成為一個定序器?
如果你不為安全性釋放代幣,那麼這一點尤其正確,因為你從基礎層中獲得了安全。因此,人們相信,必須有一個SBV(搜索者- 構建者- 驗證者/定序器)供應鏈。這也可能引致行為者之間的可信社會契約。 MEV 在現實中也可能成為一個“問題”,更多的是在應用方面受到攻擊,讓協議沒有直接的干擾。但是在某些情況下,MEV 可以被看作是增加底層協議的安全預算。
在競爭激烈的區塊市場中,存在對區塊空間的競爭,應用程序最終將轉到“MEV”(如優先gas 費用)。構建者不會在無利可圖的恢復上浪費區塊空間。 MEV 交易的確認速度更快。搜索者將MEV 轉換為優先費,使交易有更高的優先權。因此,應用程序可以將MEV 納入設計,並利用它在特定協議內的區塊空間市場上購買特權地位。
通過使搜索者和獵手能夠輕鬆地尋找導致MEV 的良好的可預測狀態變化,你可以激勵有利的MEV,增加協議的安全性和效率。將這些有利可圖的行動與定序器本身結合起來,他們可以分享這一利潤。這將使價值鏈既落在用戶和定序器手中,又增加了協議本身的安全預算。因此,用戶分享了他們自己創造的價值。你只能隨著一個區塊鏈的成功和採用(成熟度)來擴展它的去中心化。
MEV:有利、有害還是二者並存?
推理MEV 作用的一種方法是通過鏈的經濟安全角度來看待它。一般來說,這被看作是“保護”該鏈的價值,被質押的資產數額,或者在比特幣的情況下,進行51% 的攻擊所需的資金數額。 MEV 是其中的一個重要組成部分,因為它提高了驗證者/礦工的收益,因此允許更大的經濟價值被質押進來。
以下是兩條基本推理路線。其中一條,MEV 被認為是有害的。這裡的推理是,從用戶那裡(不知不覺地)提取的價值對用戶體驗而言是有害的,而成熟的用戶可以從不太成熟的用戶那裡提取價值。因此,出現了無數防止MEV 的解決方案,像門檻加密法對交易的預購進行加密,以及用統一的執行價格進行批量拍賣,都是為了防止或盡量減少MEV 提取。
另一種看法是,MEV 實際上是有幫助的。這裡的推理是,MEV 提取提高了被驗證者/礦工出售的區塊空間的(潛在)價值,因此允許對這些人有更多的收益。由於收益率較高,驗證者/礦工願意投入更多的資產,以獲得這些收益率。這將導致該鏈擁有更多的經濟安全。而實現這種經濟安全的另一種方式是通過人為地提高收益率,發行更多的原生代幣/獎勵。然而,這是以代幣持有人為代價的,因為他們的資產面臨通脹。如果你通過這個觀點來看待MEV,它實際上是一種對代幣持有者有利的力量,因為它使他們能夠從經濟安全中受益,同時面臨較少的通脹。
以太坊上驗證者的每日Gas和收益
歸根結底,就是你想讓疼痛落在哪裡。通過允許提取MEV,你限制了達到一定經濟安全水平所需的通脹,而以用戶體驗為代價。因此,發行(通脹)成為達到某些採用指標所需的效用,這最終將允許你將其降低到微不足道的數額,而MEV 可以為安全預算做出貢獻(並作為協議本身的去中心化)。
然而,通過防止或最小化MEV(如果可能的話),你加強了一般的用戶體驗,犧牲了代幣持有人的利益,因為你需要更多的通脹來維持經濟安全。另一個也許更牽強的理由是,對於一個完全理性的行為者來說,提取最大數額的MEV 可能不是最優的。因為這將成為用戶的負擔,他們將停止在鏈上積極從事經濟活動,從而使能在用戶的整個生命週期中提取的總金額減少。
雖然我們在上一節中通過基礎層的視角來看待MEV,但同樣的論點也可以在應用層面上提出(儘管我們認為這些將與應用鏈交織在一起)。 Mekatek 的研究表明,在DEX 層面上,你要么允許套利並使LP 受益,要么不允許套利並以犧牲代幣持有者的利益用通脹來補償LP。這與我們剛剛介紹的基礎設施協議層面上的動態相似。
那麼,MEV 是好是壞?我們能給出的最公平的答案是,兩者都是,也都不是。從一個角度來看,某些形式的MEV 可以被看作是壞的,但從另一個角度來看,MEV 也有好處。總的來說,我們相信MEV 既不是好的也不是壞的,它就是這樣。
去中心化定序器
當你研究L2 的MEV 時,要優化提取多少價值的話題變得特別重要。這是因為,就目前的情況而言,大多數定序器是中心化的。它們完全負責一個區塊的排序,因此可以決定提取多少價值。然而,就像Crypto 中的任何中心化點一樣,目標是轉成非中心化的定序器,在這一點上,你會遇到與PoS L1 相同的激勵博弈理論。定序器背後的經濟學可以顯示為:
收益= 發行量(通脹)+ 收取的費用總和- DA 和爭端解決的成本
(請記住,在運行硬件的成本方面,也有開銷需要計算)。
通過防止或限制從L2 提取MEV,你減少了收集的費用總和,因此運行一個定序器或參與一個去中心化的定序器網絡的利潤減少。此外,在去中心化定序器組的情況下,你需要考慮各種因素。
需要去中心化定序器的原因很清楚– 它去中心化,並將信任假設從構建rollup 的中心化團隊中移除。目前,rollup 定序器的運作方式是,存在一個單一的定序器(由團隊運行)來執行、分批和最終確定所有交易。在定序器故障的情況下,這顯然是不理想的。此外,它把大量的信任假設放在了控制定序器和允許升級的多簽智能合約的團隊身上,另外也有在欺詐的情況下的故障證明。它們有能力重新排序交易並提取MEV。雖然,目前交易最終確定的方式是在假設定序器不會接觸、提取或敲詐任何MEV 或交易的情況下,這就是給我們提供的軟最終性,允許定序器在收到交易後立即最終確定。在某些情況下,比如ZK rollup,實際的最終性要到10 個小時後才會達到。如果你查看一下以太坊上Starkware 的SHARP stark verifier 合約,就可以發現一個很好的例子,下圖就是ZK 證明(從無數交易中遞歸證明)的最終確定。這通常是每3-10 小時進行一次,從處理該批次的第一筆交易開始,這是相當長的爭議時間。
這樣做是為了降低交易的成本,把盡可能多的交易放在一個證明中,否則,交易的成本會急劇上升。這就是交易在rollup 中被最終確定的方式– 它們得到一個軟最終性的保證,即最終它們會在底層(在這種情況下是以太坊)被最終確定。在Optimistic rollups 的情況下,交易反而是分批進行的,狀態根(與ZKRs 相同)與calldata(交易狀態,這只是ZKRs 的狀態差異)一起被發送到Ethereum 的L2 合約。由於爭議期的要求(回滾欺詐性交易的能力),Optimistic rollup 的交易的實際最終結果要到7 天左右才會發生。這意味著它們的實際軟最終保證會持續相當長的時間,以使觀察者能夠證明任何已經發生的欺詐行為。這些都是我們在去中心化定序器集時需要解決的問題;軟最終性需要得到保證,最終的最終性需要達到,同時允許證明(有效性或欺詐)按預期發揮功能。
下面是一張目前rollups 運作方式的圖片:
請記住,當你依賴L1 的共識時,L2 的最終性並不是最終性。當你把鏈上的共識從rollup 上移到底層的“結算”層時,這部分是你做出的權衡。除非你也在rollup 上處理共識(這將失去衍生的安全性,但可以獲得主權並利用DA 層來保證數據的可用性)。然而,這裡明顯的權衡是你分割了流動性,增加了互操作性的難度。
接下來,讓我們來探討一下去中心化rollup 定序器的一些可能性,以及這對MEV 會有什麼樣的影響。
首先,去中心化的定序器意味著去除我們對單一定序器的信任假設,該定序器由一個有激勵機制的團隊運行,不接觸MEV 也不重新排序交易。這對MEV 有一定的“保護”作用。然而,當談及通過代幣的綁定將定序器集去中心化,便開啟了去許可或半許可的驗證者/定序器集提取價值的可能性,因為他們已經被承諾了rollup 的代幣(如Fuel 代幣模型)。這意味著需要有一個機制來確保區塊排序的正確性和合適的罰沒。這樣做的原因是為了確保定序器集保持有效性,保持公平,不對交易進行推斷。比如重新排序,將自己的交易放在池子的第一位– 即使他們支付的gas 費較少,這通常也需要一個公共的mempool,或者包含保證。
下面是一些例子:
-
PoS 證明領導者選舉。這可能是與Tendermint 的領導選舉(因為我們從基礎層獲得共識),以及一個罰沒模塊(如Cosmos SDK 的模塊)類似。這至少是我與之交談過的大多數rollup 似乎都會採用的方案。然而,也有其他選擇。對於PoS,如果你允許最大的持有者獲得最多的區塊百分比,那麼它將不可避免地導致中心化。或者也可以轉到MEV 拍賣,因為你用機會成本而不是直接付款來進行投標。
-
公平排序(Arbitrum 特別關注這個問題)。為了使其正常運作,你還需要一個可罰沒的債券(為了保持公平的本質,可以對每個人都一樣)。在這種設置中,你“支付”[每区块的机会成本 * 质押的区块数] 以獲得在該期間提取MEV 的權利。為了使公平定序發揮作用,你需要一個公平的定序協議,選擇一個公平的事件序列來最終發布。這通常是通過誠實的多數假設來實現的,比如以優先服務排序的形式,由各個定序器合併的交易列表進行排序。因此,該系統是先來後到的,具有51%-N 的誠實性假設。在不誠實的情況下,系統可以承諾進行社會分叉(如果他們有主權的話)。
第二種選擇的問題尤其在於,它變成了一場爭先恐後的延遲競賽,這很可能導致構建者和搜索者盡可能地靠近有關的定序器(就像我們在Trad Fi 中看到的那樣,甚至在加密世界中也是通過優化網絡延遲來進行的)。這顯然會導致地理集中化。
此外,也有一些圍繞MEV 拍賣(為提取MEV 和提出區塊的權利進行競標)的討論,以獲得排序名額(特別是來自Optimism 陣營)。然而,我們認為,儘管它具有去許可的性質,但它還是推向了中心化,而且它的進入門檻非常高。儘管前面提到的一些方法也會導致“中心化”,但它不那麼明顯,對協議也沒那麼有害。
一般來說,公平排序機制並不能以任何方式“防止”或緩解MEV,而不會增加相當大的負面影響。然而,像閾值加密、時間鎖謎題、批量拍賣和元mempools(將mempool 和區塊構建器的角色與共享的聚合/定序器層解開– 這在跨域MEV 領域可能會變得有用,我們稍後也會觸及)可能在提供此類屬性方面更成功。
現在我們已經看到了定序器目前是如何運作的,以及一些可能去中心化的方法,現在讓我們試著想像一下去中心化的定序器集是怎樣的,以及它需要什麼來保持最終性保證並確保協議按預期發揮功能。
去中心化定序器的公平排序示例
上面是智能合約rollup 中的定序器設置,下面我們將展示通過PoS 領導選舉的主權rollup(DA 層之上的rollup)會是什麼樣子。在公平的排序設置中,沒有太多的動機去購買和押注所需的代幣數量以成為一個定序器,並且定序器集的總加密經濟安全性保持相當低。
去中心化定序器PoS 領導選舉的例子
在這種設置中,其運作方式非常簡單– 當選擇某一輪的定序器時,委員會只需利用基於質押比重的加權循環方法即可。有了這種方法,任何驗證者都可以輕鬆地計算出某一輪的合格發起者。如果你想閱讀Celestia 上的NMTs,請查看我們的數據結構文章。 (請記住,在這種設置下,爭議窗口有可能被降低,因為你不在以太坊這種競爭激烈的區塊空間中)。
此外,也有一些關於領導選舉隨機化的研究和討論(2017 年在Tendermint repo 上),而這也可能是一種方法,以獲得類似於公平排序的設置,但需要有一個隨機的發起者(領導),而不是先到先得的方式。雖然,這不鼓勵定序器購買和質押更多的代幣(加權輪流激勵),但這可能會降低協議的經濟安全性。
兩種不同設置之間的MEV 提取不同,並可能導致MEV 的分配和提取不同。此外還有其他需要注意的問題,比如最終性保證、MEV 的抑制方法,我們將在第二部分中討論模塊化MEV中填充空間的各種參與者,以及如何發生合謀。我們還將研究共享的定序器和元mempool 的設置– 所以請關注未來幾週的另一個部分。
最後,非常感謝Mathijs van Esch 參與了本文的寫作,並感謝Josh Bowen 參與了最初導致這一系列文章的討論。感謝Mekatek 的審閱。