前言
MEV是MinerExtractableValue的縮寫,即礦工可提取價值。2019年,
智能合約
研究員菲爾·戴安和他的同事們一起撰寫了FlashBoys2.0論文,并創造了"礦工可提取價值"一詞。
現如今,人們將之稱為MaximalExtractableValue--最大可提取價值。
知道創宇區塊鏈
安全
實驗室
本次淺談一下充滿研究意義的MEV。
MEV概念與原理
一、什么是MEV?
MEV是指區塊鏈礦工可以通過重新排序、審查或插入交易而無需許可地提取的總價值。
簡而言之就是礦工對其所在區塊的一切交易的順序有控制權,能夠隨意控制交易的順序,并以此來進行獲取利益。
自2020年1月1日起至今,據官方數據統計,提取的MEV至少價值9億美元。不難發現,提取的MEV正成N倍瘋漲,就如DanRobinson的《EthereumisaDarkForest》一文中提到的那樣,MEV在未來只會更加可怕。
二、為什么會出現MEV問題
我們可以將比特幣、以太坊等區塊鏈網絡比作一本賬本,而“礦工”負責將待處理的交易信息打包成區塊,然后由整個網絡進行驗證,并添加到全球的賬本中,對于交易信息記錄的先后順序完全是由礦工決定的。
V神:ZK-EVM是以太坊Layer 1安全和驗證過程的重要組成部分:金色財經報道,以太坊聯合創始人“V神”Vitalik Buterin在其官方博客上發布文章《以太坊的多客戶端理念將如何與ZK-EVM交互?》(How will Ethereum's multi-client philosophy interact with ZK-EVMs?),其中指出ZK-EVM將在未來發展成為以太坊Layer 1安全和驗證過程的重要組成部分,但關鍵在于如何為零知識證明以太坊區塊的正確性創建一個“多客戶端”生態系統。V神建議采取開放的多個ZK-EVM,因為不同的客戶端有不同的ZK-EVM實現,每個客戶端可以在接受一個區塊為有效之前等待與自己兼容的證明。此外,Vitalik Buterin還對人工智能最近的快速發展大加贊揚,他覺得人工智能的進步可以“加速”證明ZK-EVM實現的發展。“從長遠來看,當然任何事情都有可能發生。也許AI會加強形式驗證,使其可以輕松證明ZK-EVM實現等效并識別導致彼此之間差異的所有錯誤。”[2023/4/2 13:40:23]
由此,礦工們為了獲取更大的利潤,往往會根據gas費用的高低來決定交易順序;礦工根據自己決定交易順序的權利來獲取額外的利益,這種獲得的收益就是MEV。
盡管最初MEV被稱為“礦工可提取價值”,但現在人們更傾向于稱MEV是“最大可提取價值”,因為現如今的大部分MEV行為不是由礦工發起的,而是由
DeFi
區塊鏈開發服務商Protofire已向Evmos部署Gnosis Safe分叉:6月3日消息,區塊鏈開發服務提供商Protofire已向Cosmos生態EVM兼容鏈Evmos部署了一個多簽錢包Gnosis Safe分叉,將使Evmos用戶能夠以多簽形式存儲和傳輸基于EVM的代幣、ERC-20 Cosmos代幣和NFT(ERC-721和ERC-1155),未來Evmos用戶還將能夠通過鏈間賬戶擴展至整個Cosmos生態。[2022/6/3 4:00:46]
交易者和套利機器人替代。
在以太坊內存池中,MEV搜索者用套利機器人監控待處理的交易,并試圖利用它們創造的有利可圖的機會。
技術角度來說,MEV的產生是源
于區塊鏈中交易信息被傳送到網絡與實際交易信息被打包至區塊之間存在延遲。
而處理方式卻是構建一個共享的待處理公開訪問內存池,在該交易被打包至區塊之前,該交易會存放在mempool中,公開的mempool會導致別有用心者可以有意監聽mempool,尋找可以獲利的機會。
其中就包括,插入新交易,重新排序交易序列等手段。而這些都顯示了礦工對交易的打包有著極大的控制權。
MEV的利用和防范
一、典型攻擊手段
1、搶跑
在以太坊內存池中存在一筆訂單交易,攻擊者使用略高于此訂單的gas費進行搶先交易。
Evmos現已支持用戶查詢空投Token數量:3月2日消息,Cosmos EVM Hub Evmos 官方在社交媒體發文宣布,現已支持用戶查詢空投 Token 數量。用戶可上網站連接錢包并查詢自己所獲空投 Token 的具體數量。
此前消息,Evmos 宣布將推遲主網上線時間至北京時間 3 月 3 日 2 時,并向社區額外發放 2000 萬枚 Token 空投(Rektdrop 共 1 億枚,社區池 2000 萬枚,共計占初始發行量的 60%)。[2022/3/2 13:31:39]
此時便能使用比市價更低的價格交易訂單。
例如2021年10月29日,多個MCN-uniswap池遭受黑客攻擊,主要原因是該代幣合約燒幣功能出現權限問題,使得任何人都能夠對池子中的MCN進行燒毀。
攻擊者燒毀池子中大量MCN代幣,導致池子中MCN代幣價格失衡,攻擊者通過將事先換取的MCN代幣換回大量WETH代幣而獲利。
然而該攻擊事件被MEV機器人捕捉到,機器人在攻擊者完成攻擊之前搶先完成交易并獲利17.2萬美元。
(
https:\u002F\u002Fetherscan.io\u002Ftx\u002F0xd091afe6b37256ebb3dd703a9646b27aaf7ce7fe8832778886ba0216361f7f00)
2、尾隨
以太坊擴容方案 Optimism 將升級為 EVM 全兼容:9月18日消息,以太坊擴容方案 Optimism 宣布將升級為 EVM 全兼容,開發者可使用 Solidity 智能合約直接部署,一鍵部署功能將于 10 月推出。團隊表示,Optimism 將建立在現有的以太坊客戶端(Geth)之上,引入對以太坊所做的改進,例如將能夠快速引入主要的硬分叉,在以太坊上運行的工具例如 DappTools、Vyper、Tenderly、Hardhat 將能在二層方案 Optimism 上運行。[2021/9/18 23:33:56]
在以太坊內存池中存在一筆訂單交易,攻擊者提交一筆gas費略低的訂單,當前一訂單交易后,立即跟著交易,以此獲利。
例如搜索者機器人在一個池子中發現有一大筆買入訂單,由于池子中代幣量減少,所以導致代幣價格上漲,此時攻擊者緊跟著賣出代幣到池子中進行獲利。
3、三明治夾擊
三明治夾擊是搶跑和尾隨的一種結合,攻擊者在交易者訂單前后分別安插兩筆交易,在交易者交易前搶先以更低的價格交易,在交易者完成交易后,緊接著將訂單以跟高價格售出而獲利。
二、主要防范策略
MEV表面上看是礦工和搜索者雙雙獲利,皆大歡喜的事情。然而這種獲利可以卻被一些人看作是偷竊,因為此獲利方法是以損失普通交易者的利益而來,通過MEV提取得來的獲利全是取自每一位交易的普通用戶。
此外,MEV還會造成區塊網絡的擁堵和gas費增長問題。隨著越來越多的套利機器人進行gas價格競爭,無形中就消耗著區塊鏈網絡帶寬造成網絡擁堵,gas價格競爭愈演愈烈導致gas價格劇增。
V神:第一批支持EVM的Rollup或將于3月上線:2月19日,V神在社區中表示,第一批支持EVM的Rollup或將于3月上線,上線之后將降低99%的交易費用。同時,V神還表示,Optimism和arbitrum處于領先位置。[2021/2/19 17:31:29]
由gas使用量圖我們不難看出,從2021年五月開始,gas使用量有著明顯減少的趨勢。這正是因為flashbots的MEV-Geth日漸普及,這也是防范MEV的主要措施之一。
FlashbotsAuction概念與使用
一、Flashbots簡介
Flashbots成立于2020年11月,是一個針對MEV的去中心化研究和開發組織,致力于公開化MEV提取細節,使其透明化,民主化。
Flashbots的項目業務分3個大類:flashbotsauction,flashbotsdata,flashbotsprotect。
flashbotsauction在以太坊用戶和礦工之間提供了一個私人通信渠道,用于在一個區塊內有效地傳達首選交易順序,flashbotsdata則是用來掃描以太坊MEV數據并存儲在Postgres中以供查詢和分析。
flashbotsprotect是將flashbotsauction中除去客戶端等復雜部署剔除,抽象出交易捆綁打包等功能,讓Metamask等
錢包
可以集成flashbotauction的MEV保護功能。
flashbots核心項目FlashbotsAuction包括mev-geth,一個位于go-ethereum客戶端之上的補丁,以及mev-relay,一個交易包中繼器。
二、MEV-Geth和MEV-Relay的運作流程
1、使用者可使用MEV-Geth中的交易捆綁,其中包含:交易搜索者和\u002F或其他用戶的內存池中待處理的一個或多個事務。
交易搜索者通過智能合約調用向礦工支付的小費函數。并且,Flashbots捆綁包將始終位于該區塊的頂部。
2、MEV-Relay接收捆綁交易,并將其發送給所有列入白名單的MEV-Geth礦工。
3、礦工從MEV-Relay接收Flashbots捆綁包,并在MEV-Geth中對其進行處理。
4、MEV-Geth從發送的所有捆綁交易中選擇利潤最高的捆綁交易上鏈,將捆綁交易放到一個新的區塊的頂部。
5、然后,MEV-Geth將包含此捆綁包的區塊與不包含任何捆綁包的區塊進行比較。
6、
僅當交易搜尋者的捆綁包包含在一個區塊中時,與他們的捆綁包相關的小費才會被支付。
7、如果區塊沒有包含捆綁交易,該交易沒有上鏈,則交易搜索者和\u002F或其他用戶不會花任何錢,即交易失敗或者取消交易都無需支付Gas費。
FlashbotsAuction架構介紹及演示
FlashbotsAuction架構提出了一個由三個不同方組成的網絡。架構抽象出三方角色構成網絡。代表用戶的
searcher
,代表代理服務的
relay中繼器
,代表礦工的
miner
,三者讓客戶可以使用這些方專門執行維持該通信渠道所需的部分工作。
Searcher
Seacher代表想要利用MEV的以太坊用戶,他們可以使用Flashbots私人交易池,而不是常規的p2p交易池。這些用戶監控著鏈的狀態,并將可套利的交易捆綁包發送至中繼器。
目前生態上的searcher一般有以下幾類:
1、尋求快速、無風險訪問區塊空間的以太坊機器人運營商
2、尋求交易搶先保護的以太坊用戶
3、
具有高級用例的以太坊Dapps,例如帳戶抽象或無氣體交易
Relay
交易打包成bundle后,會通過幾個叫Relay的基礎設施傳播到各個server,并將其轉發給各個minner節點。
當searcher使用flashbots服務,利用relay來發送他們的交易偏好,他們就不需要為失敗的交易出價付費。
由于以太坊節點無法自行處理這種級別的負載,中繼器便承擔了緩
解這種DOS威脅功能。
除此了解決垃圾交易問題,中繼者隱私也是FlashbotsAuction架構必須解決的問題,以便實現完全的去中心化。
目前,Flashbots組織運營一個名為MEV-Relay的中繼器。
下圖則為MEV-Relay入口演示。
所獲得的區塊高度如圖:
中繼服務擁有對捆綁內容的完全訪問權限,可以任意重新排序,插入,審查發送給他們的捆綁包,還可以通過發送無效捆綁包來DOS礦工。所以不建議使用外部中繼器集成,這會產生很大的系統性風險。
Miner
礦工是最終收集所有捆綁包并產生區塊的一方。傳統礦工會使用以太坊客戶端進行區塊的挖掘,而我們的Miner使用flashbots提供的特殊維護的MEV-Geth客戶端,實現捆綁包的接收和交易的排序。
Flashbots包中包含的信息允許searcher向礦工發送他們需要的交易順序以求利益最大化,這樣可以使礦工實現MEV組合獲利,而不是在單一維度上爭奪優先權。礦工可以評估所有收到的捆綁包,并將不沖突的捆綁包組合起來,以盡可能產生最有利可圖的塊。
以下為Minner打包交易的運行結果簡析。
MEV-Geth節點會第一時間評估傳入的捆綁包,并選擇利益最大化的捆綁包放在區塊的頂部。然后該節點將Flashbots塊與普通塊進行比較,并開始挖掘最有利可圖的塊,測試如下。
運行結果如下
Searcher會對針對即將打包至下一個區塊的交易進行監視,會使用更高的gasprice,將可套利的交易捆綁包發送,并讓礦工搶先打包至區塊,Searcher清楚地表達交易偏好是成功拍下區塊的重要原因,這也有效避免了網絡其余部分的負面外部性。
總結
MEV的興起導致了一系列的問題,盡管MEV為礦工帶來了額外的利潤,同時也損失了其他用戶的利益,引起了以太坊環境的變化。
flashbots為MEV問題設置的解決辦法也并非完美,盡管套利者之間的競爭被移到了另一個網絡中,解決了以太坊網絡擁堵和Gas費劇增的問題,從客觀角度來看,MEV-Geth是否違背了去中心化的原則。
新的MEV提取策略不斷被發現和創建,當前對MEV問題的防范措施也可能會過時,對于MEV問題的研究仍需要我們不斷地探索。
本文來自微信公眾號:老雅痞,Odaily星球日報經授權轉載發布。這是"技術交流"月度系列的第一篇,介紹FT頂級評論員與技術領袖、創新者和思想家之間關于該行業最新趨勢的對話.
1900/1/1 0:00:001月10日,LooksRareNFT市場首次亮相,對屢被吐槽的NFT巨頭OpenSea發起吸血鬼攻擊.
1900/1/1 0:00:00NFT數據日報是由Odaily星球日報與NFT數據整合平臺NFTGO.io合作的一檔欄目,旨在向NFT愛好者與投資者展示近24小時的NFT市場整體規模、交易活躍度、子領域市占比.
1900/1/1 0:00:00作者:JoelJohn,LedgerPrime首席翻譯:KayFeng,ApertureDigital創始合伙人,NGCVentures董事總經理,翻譯已獲得授權 關于飛輪的詳細解釋.
1900/1/1 0:00:00經Odaily星球日報不完全統計,1月17日-1月23日當周公布的海內外區塊鏈融資事件共49起,較上周有一定增加;已披露融資總額約為11.62億美元,較上周數據明顯增長.
1900/1/1 0:00:00周一,美國商品期貨交易委員會(CFTC)對去中心化金融公司采取了今年的首次執法,加密預測市場平臺Polymarket因提供基于場外事件的二元期權合約.
1900/1/1 0:00:00