Foresight Ventures:描繪分類支配MEV

相對於Web1 和Web2 ,Web3 應對「MEV」負外部性已經做得很好了。相對於Web1 和Web2 ,Web3 應對「MEV」負外部性已經做得很好了。

撰文:msfew

MEV?

Maximal extractable value (MEV) refers to the maximum value that can be extracted from block production in excess of the standard block reward and gas fees by including, excluding, and changing the order of transactions in a block.

a) MEV 一直都在

以太坊區塊的交易排序自始至終就沒有被確定的規則約束, 而是可以根據礦工的偏好來自由修改。 Geth 客戶端的源碼中, 提供了三種示例:

  • 第一種: 僅根據Nonce 來排序

  • 第二種: 根據gas fee 和Nonce 來排序( 默認選項 )

  • 第三種: 根據owner 排序後, 根據gas fee 和Nonce 來排序

其實排序完全是個開放題, 礦工可以自由進行調整, 從而捕捉更大的利潤, 也就是我們討論的主角, MEV。

在MEV 被稱為MEV 之前, 它的Alpha 就早已被礦工持續挖掘。 flashfish0x 講述了一個MEV 的故事。

在2020 年8 月之前, Compound 的餵價由特殊的預言機tx 來更新, 於是會有礦工監控Mempool, 尋找可以被清算的賬戶, 利用閃電貸等手段進行套利。因只有套利tx 正好在價格更新tx 之後執行才能套利成功, 且普通礦工( 當時) 會隨機排序相同gas fee 的套利tx, 所以套利者會以與預言機價格更新tx 相同的gas fee 來發送交易, 和其他套利者博取一個隨機概率。

2020 年8 月11 日之後, Geth 發布了新版本, 預言機價格更新tx 後到達網絡的第一個tx 將成功套利, 於是獲得tx 信息的速度也被計入了競爭的考量中。

好景不長, 2020 年8 月17 日, Compound 切換到了更去中心化的預言機。於是MEV 捕捉者們的競賽變成了純粹的gas war。他們盡量出到比其他人更高的價格gas, 直到這個清算操作捕捉不到任何利潤, 或者某個人勝出。

區塊鍊網絡從一開始就是這麼個暗流湧動的黑暗森林, 機器人在未知的環境里和看不見的對手爭奪榨取潛在利潤的機會。

b) MEV 無處不在

在正式解讀MEV 的定義之前, 我們可以看看關於MEV 的一些數據, 這樣就能直觀地感受它的存在和影響。

2022 年5 月, Uniswap 上超過一半的交易量是由MEV 機器人貢獻的, 而只有少於20% 的交易量是來自於Uniswap 的前端頁面。

dex.guru 的數據也顯示, 以太坊上AMM 的交易量很大一部分都是MEV 機器人所貢獻。

MEV 機器人在區塊鏈的黑暗森林裡無處不在, 並且始終佔據著主導地位。

c) MEV 供應鏈

那麼一個MEV 活動是如何產生的呢?

一個tx 在危機四伏的區塊鏈中的生命週期如下:

  • 生: 普通用戶根據意圖進行應用交互, 錢包與應用將意圖解釋成tx, 發送到公共tx 池等系統等待處理。

  • 老: MEV 搜索者( 可能會是礦工) 挑出所有有利可圖的機會, 嘗試通過發送交易或對交易刻意排序捕捉MEV。

  • 病: L1 的礦工( 大多數情況下不會是MEV 搜索者) 或者L2 的Sequencer 聚合交易並出塊。

  • 死: 驗證者( 目前還是礦工) 驗證區塊, 交易正式被確認。

MEV 機器人根據它們owner 的旨意進行著鏈上活動, 將tx 包裝好後送給不知情的礦工出塊。從好的角度來看, 它們是保證市場穩定和DApp 活躍度的重要角色; 從不好的角度來看, 它們以自己天生的優勢( 可以監視整個Mempool), 對「普通用戶」進行著不平等的剝削。

d) MEV 的具體定義

MEV 這個詞有兩個官方的解釋, 它全稱可以是:

  • Miner Extractable Value ( 礦工可提取價值 )

  • Maximum Extractable Value ( 最大提取價值 )

當我們把兩個解釋結合在一起, 會得到一個最容易理解的概念: MEV 就是礦工可提取的最大價值, 是對於在一個區塊特定位置插入tx 的incentive。

個人認為, 更全面的MEV 定義指的是礦工/Validator/ 機器人/ 預言機/ 除了普通用戶之外的角色, 利用礦工的不對稱信息, 可提取的最大價值。非普通用戶的角色( 懂代碼, 懂網絡機制, 懂使用MEV), 通過自己的「特權」來額外提取價值, 從而獲利, 其實都可以算是廣義的MEV:

  • 以出塊的礦工為例: 它在看到Mempool 中的交易後, 當輪到出塊時( 非常小的概率), 完全可以對區塊內的交易重新按自己的意願進行排序( 而不是正常的nonce 和gas fee 排序), 並發送新的交易, 從而獲取除了獎勵以外更大的額外利潤。

  • 以懂使用MEV 概念的用戶為例: 使用Flashbots Protect 作為tx 池, 避免被MEV 機器人割且tx 可以得到優先執行等優勢; 通過flashside 或者前文中的Compound 清算例子, 監視Mempool 來對NFT 和鏈上活動進行套利, 以恰到好處的gas fee 來讓不知情的礦工幫他們捕捉MEV; 通過mint。 fun 監視Mempool 來mint 時下最新的NFT 項目。

  • 以最受剝削的普通用戶為例: 早上起床抄底ETH, 結果第一個tx 因為gas 不夠, 超時失敗了; 中午第二個tx 好不容易成功但是被夾子割了; 晚上熬夜, 想mint 個看中很久的free mint NFT, 但交易剛發送出去就被其他人監視到了, 最終沒mint 到。

MEV 提取者的額外利潤源自於區塊內的其他交易( 幾乎就是普通用戶發出的), 且擠占了每個區塊的一部分空間( 儘管gas fee 缺乏彈性需求, 他們的交易通常是區塊內首個, 不會直接影響用戶tx), 因此大多數MEV 通常被視為加在用戶身上的隱性稅收。

1.MEV 交易的分類

以下是0xminion 對MEV 活動的清晰圖解:

以目的來分的話, MEV 操作可以被分為: 各種套利, 單純搶先交易, 夾子攻擊等。

這些操作的大部分都會是套利操作, 基本都是機器人來發起, 這些機器人都為gas 的優化做了非常多的功夫, 比如它們通常在錢包裡會有無數個代幣, 每個都只有一點點數量。這主要是利用了EIP-2200, 當用戶接收ERC-20 代幣時, 如果錢包內有這個代幣, 則比沒有省更多的gas。還有就是讓地址擁有更多的零。當然以上的套利優化操作與MEV 本身關係不大。

MEV 本身主要分為以下六種:

a) Front Running

Front Running 是MEV 機器人支付稍高的gas fee 來搶先在Mempool 的某交易前執行交易, 比如以更低的價格Swap 代幣。

當這類MEV 活動沒有造成後續的「傷亡」時, 可以被算作中性( 不算良性因為主要還是插了隊); 但很多時候通常會讓後續的交易失敗或者執行出更差的效果, 因此會被算作惡性。

目前有很多服務專注於提升這類MEV 的捕捉, 比如bioXroute ( 類似於黑手黨徵收保護費後提供更快更隱私的Mempool, 從而加快tx 的確認效率以及對外部Front Running 的防禦)。

問題的核心主要還是這類MEV 很直接地體現出了MEV 捕捉者和普通用戶的信息不對等。然而, 大家不可能徹底完全公開, 透明, 和統一地對交易排序的方式和算法達成共識。

b) Back Running

Back Running 是機器人在一筆交易造成價格大幅錯位之後嘗試不同的套利, 清算, 或交易。

最典型的例子就是我們之前提到的清算套利操作, 這類MEV 活動整體可以被認為是良性的, 能保證市場的穩定和持續運轉。

在Cosmos 這種多鏈架構的網絡上, 這類MEV 活動尤其做好, 因為網絡非常多, 需要這樣的活動來讓DeFi 應用保證時刻運轉和高效。

c) Sandwich Attack

Sandwich Attack 是前兩種攻擊的結合, 對交易進行前後夾擊。通常被稱為夾子。例如MEV 機器人在交易前放一個買單, 在交易後放一個賣單, 讓用戶的交易在更差的價格執行。

這種攻擊有時候可以非常複雜同時傷害可能會非常大, 下圖是有機器人通過1 億枚DAI 來夾Curve 的用戶:

它可以普遍被認為是惡性的, 但某種程度上像高速公路的測速儀一樣鞭策著用戶使用更合理的滑點, 從而提升網絡整體利益。

d) Time-Bandit Attack

時間盜賊攻擊是在區塊生成之後, 礦工重新挖取區塊導致區塊鏈reorg, 同時在自己挖出的區塊中提取價值。這是最惡性的MEV, 會導致用戶交易無效。同時這雖然微乎其微, 但也有發生的可能性。

中本聰共識下的區塊鍊網絡由於最長鏈原則, 區塊reorg 發生非常頻繁( 延遲也大), 因此這類MEV 很可能被捕獲。而在Tendermint 或者PoS 的以太坊中, 這類MEV 的發生會極大程度上被減少。

關於時間盜賊MEV 很酷的點是: 未來的事件可以影響過去( 將「未來」的交易包含到「過去」的區塊中)。

但在簡單的量化下, 此類攻擊的預期回報率是不高的, 同時會因為蓄意破壞區塊鍊網絡的穩定性受到譴責( 如Reorg-as-a-Service), 所以很少會發生。

e) Clogging

任何NFT, 資產, 和Rollup 交易的有效性其實都是通過購買區塊鍊網絡上某個區塊的某個空間所保證的。以下是區塊鏈區塊空間市場的供需:

Clogging 就是通過連續壟斷區塊全部的空間來贏得例如Fomo3D 遊戲的勝利。

還記得最開頭的Geth 源碼嗎? 由於大約70% 的以太坊礦工都是根據默認的gas fee 排序對交易進行排序, 因此才產生了Clogging。

但是目前來說, 因為基礎設施的完備, 如預言機和Rollup 等都會風雨無阻地進行交易的提交, MEV 機器人在網絡活躍時期進行這樣的活動, 成本會比較高。

f) Non-Broadcast Transactions

前面幾種活動的發起者基本都是MEV 機器人, 而不是出塊礦工本人。

Non-Broadcast Transactions 則是出塊礦工偷偷提交的tx, 也就是在礦工知道自己能出塊的時候, 瞬間去給區塊塞入一些交易, 從而捕捉MEV。

以太坊上大約2% 的交易都是這樣的形式產生的。

2.MEV 是好是壞?

前面的分析中我們探討了不同種類的MEV, 穿插著我們對每種的評價和好壞與否的評判。那麼整體來說, 到底MEV 是好還是壞? 我們該怎麼應對它? 不同的網絡會怎麼以不同的方式應對它?

MEV 的好壞:

  • 好的MEV: 用於套利清算(Back Running), 公開透明市場(Flashbot, MEV Auction), 並沒有影響網絡或者其他用戶。

  • 壞的MEV: 用於在其他用戶身上榨取價值(Sandwich Attack), 私下發送且不廣播(Time-Bandit Attack, Non-Broadcast Transactions), 影響網絡的正常運行(Clogging)。

從分類數量來看MEV 貌似是一個不好不壞的中立角色, 但是當考量了MEV 的本質(incentive to insert tx into block), 這個incentive 過於巨大, 會導致追逐壞的MEV 造成的傷害遠大於好的MEV 的好處。除此之外, MEV 的產生也是源於信息和知識的不對等, 區塊鍊網絡裡只有equality 而沒有equity。

綜上所述, MEV 的黑市原理+ 巨大利益驅使+ 複雜情況和分類= 區塊鍊網絡的負外部性。

MEV 是壞的, 需要削減。

3. MEV 的深入思考與處理

在分類探討針對MEV 的策略之前, 我們需要明確一個點, 就是任何情境下的信息不對稱和外部性都是無法被完全消除的, 我們只能去更好的處理它們。

a) 解決MEV 黑市與其巨大incentive

MEV 是不透明的信息和知識而造成的黑市( 或者說黑暗森林), 這個黑市創造了巨大的利益。我們將通過這個角度來思考針對MEV 的策略。

整個世界的黑市估值大約為1。8 億美元, 且是一種無法消除的必然邪惡。 MEV 的市場也遠比我們所能觀測到的大。

既然這個黑市是必然存在的, 那麼何不讓它暴露在陽光之下, 讓大家都可以自由捕捉和保護自身的MEV, 這樣普通用戶就可以形成合力, 且可以削弱MEV 捕捉者針對用戶的對抗。

Flashbots 提出了以下五種市場方案來限制MEV 的提取, 從而減小MEV 的總體負外部性:

這些MEV 削減方案其實類似, 但相同的缺點就是可能會導致區塊空間被浪費以及出塊的中心化。

b) MEV 的複雜情況: 場景區別

  • 單鏈場景: 本文的大部分筆墨都是在討論單個區塊鍊網絡中的MEV 情況, 而現實中這是過於理想化的分析。

  • 跨鏈場景: 一個區塊鍊網絡= 一個trust zone。實際中會有無數個擁有不同機制和不同MEV 種類的區塊鍊網絡, 這些無數個trust zone 就讓網絡間的套利四處存在。比如就算以太坊完全沒有MEV, 但如果Cosmos 上有套利機會, 那麼橋的驗證者或者跨鏈應用機器人就可以在Cosmos 上捕捉MEV, 最終以太坊也成了這個MEV 的受害者。

  • 多鏈場景: 跨鏈場景的例子可以無縫套用到Cosmos 或者Polkadot 的多鏈架構中, MEV 的存在具有傳染性。

b) MEV 的複雜情況: 網絡架構區別

在我們探索Rollup 網絡的文章中, 我們了解到了單體的Layer1 和在其之上建立的Layer2 Rollup 的區別。

1. Rollup

Rollup 作為一個「加強版的智能合約」以及「中心化的可信區塊鍊網絡」目前均有著中心化的出塊和排序機制, 因此有不同的MEV 表現。目前中心化的Sequencer ( 也就是只有一個節點) 導致所有的MEV 都可以被Rollup 捕捉。隨著越來越多的流動性和鏈上活動轉移到L2, L1 礦工所可以獲得的收入( 包括MEV) 其實就被轉移到了L2 的Sequencer。

當然Rollup 網絡自己也意識到且解決了這個問題, 它們對tx 的公平排序體現了MEV 的處理。不同Rollup 對於MEV 的策略並不相同, 對網絡參與者來說意義也就完全不同:

當L2 步入去中心化且模塊化區塊鏈的實現更加盛行後, MEV 的問題需要更多的研究和思考。例如以太坊與Celestia 的模塊化版圖就會有所不同。目前來說, 以太坊上的Rollup 均為Secured Rollup, 只需構建n 個雙向可信的跨鏈橋( 它們本職就是造這樣的橋), 共同結算在以太坊上, 而Celestia 所鼓勵的Sovereign Rollup 各自為政, DA 很可能各不相同, 可能需要n^2 個橋樑或者類似IBC 或XCM 的協議才可以完全打通。這樣就建立了完全不同的MEV 市場和捕捉機會。

由L2 MEV 的問題, 我們也可以引申出對L1 和L2 價值關係的思考, 本文中不做額外展開。

2. 較中心化的區塊鏈

為了更快, Solana 是沒有公開的Mempool 的, 而是通過一個類似只有預計將出塊的礦工看得到的Gulf Stream 來作為Mempool ( 這也是它宕機的原因…)。這就意味著MEV Bot 是沒辦法捕捉MEV 的, 只有運行一個Validator, 且即將出塊的礦工才在理論上有機會對交易進行排序或者發送新的交易從而捕捉MEV。但結合Solana 的礦工利潤低的情況, 這樣的設計其實就導致了礦工的收入更低。於是現在就有Jito Labs 做類似Flashbot 的mev-geth 的客戶端, 來讓礦工對自己的區塊空間進行拍賣, 讓MEV 形成公開的自由市場。同時Solana 也有QUIC 和per account fee market 的解決方案。

3. 結語

對於MEV 這個話題, 本文僅僅是表層的分析, 有非常多有趣的東西由於篇幅的問題沒有被提及(SGX, PBS 等), 推薦你深入閱讀文末的50 餘個相關鏈接。

在一個理想的網絡裡:

  • 任何人都可以發送交易(no censorship)

  • 沒有垃圾信息(no spam)

  • 費率非常低(low fees)

而MEV 的存在讓魚和熊掌不可兼得:

  • no spam + low fees: Web2 一樣的Censorship 必須存在。

  • no censorship + low fees: MEV Searcher 就會發送垃圾信息讓正常交易受影響。

  • no censorship + no spam: 你就需要一個費率市場來對交易進行排序, 也就需要高昂的gas 來優先執行交易。

不過不用太擔心, Web1 或者Web2 或者現實世界一樣沒有徹底解決「MEV」的負外部性, Web3 的各種方案已經做得非常好。 MEV 一直是個開放問題, 沒有完全正確的解。

那麼Web3 的我們該咋辦?

  • L1/L2: 設計時優先考慮MEV。

  • 礦工: 放心大膽地在不影響生態的情況下捕獲價值, 因為這是網絡博弈論的一個部分。

  • DApp 開發者: 設計應用時考慮MEV, 以及機制是否會傷害普通用戶。

  • 用戶: 理解MEV, 且盡量不要使用MEV 機制設計不足的網絡或應用。

  • 其他人: 鼓勵MEV 的研究, 參與到MEV 的討論中, Front run the crisis。

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

Total
0
Shares
Related Posts