BTC
ETH
HTX
SOL
BNB
查看行情
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

Flashbots:與MEV危機賽跑

以太坊爱好者
特邀专栏作者
2020-12-20 06:51
本文約5891字,閱讀全文需要約9分鐘
Flashbots 是一個研究和開發組織,成立的初衷是緩解由“礦工可抽取價值” 給智能合約平台型區塊鏈帶來的負外部性和生存風險。
AI總結
展開
Flashbots 是一個研究和開發組織,成立的初衷是緩解由“礦工可抽取價值” 給智能合約平台型區塊鏈帶來的負外部性和生存風險。

編者按:本文來自以太坊愛好者(ID:ethfans)編者按:本文來自

以太坊愛好者(ID:ethfans)

以太坊愛好者(ID:ethfans)

編者按:本文來自

以太坊愛好者(ID:ethfans)

以太坊愛好者(ID:ethfans)

編者按:本文來自

以太坊愛好者(ID:ethfans)

以太坊愛好者(ID:ethfans)

Flashbots 是一個研究和開發組織,成立的初衷是緩解由“礦工可抽取價值(miner-extractable value, MEV)” 給智能合約平台型區塊鏈帶來的負外部性和生存風險。我們提議為MEV 的收取設計一種免信任、透明且公平的生態系統,來保衛以太坊的理念。

MEV-Inspect 的工作原理

  • 過去幾個月的以太坊使用量暴漲,使得一些由MEV 帶來的負外部性暴露出來,包括網絡擁堵(即點對點網絡的負擔加大)和鏈擁堵(即區塊空間緊張):我們的初步評估顯示,通過消除無效率的MEV 抽取過程,可以將以太坊的吞吐量提高至少2.4%。此外,當前的MEV 抽取方法的激勵體系,給以太坊的共識安全性帶來了生存風險,因為它使得人們有激勵為了獲得過往區塊的MEV 而發起鏈重組(例如,通過time-bandit attack 14 ),也使人們有激勵為了隱私、低時延和排序控制權等好處而使交易的路由中心化。我們認為這些激勵是有害的,因為它們會破壞以太坊的免准入性和終局性。
  • 雖然這些生存風險和負外部性一直以來都存在,但半年來的一系列事件表明網絡的使用量已到臨界點。我們觀察到,已經有很多人在積極地開發排他性的交易路由設施,也很擔心這一切,因為它有可能侵蝕以太坊今天的中立性、透明性、去中心化和公平性。這些事件也表明,前述的生存危機和負外部性有愈演愈烈的趨勢。
  • 在本文中,我們會講解Flashbots 組織的細節和我們研究路線圖的起步項目,MEV-Inspect 和MEV-Geth。關於我們項目的背景和動機,進一步的討論可見此文。

MEV-Inspect:消除信息不對稱

理解當前的MEV 收集手段所帶來問題的第一步是量化它們的影響。此前也有一些網頁,例如frontrun.me 27,和一些行業指標網站,收錄於MEV 相關的指標,但我們發現需要有一個標準化和可延展的方法,來利用以太坊和其他區塊鏈所產生的此類數據。

MEV-Inspect 的工作原理

MEV-Inspect 是一個區塊鏈爬蟲,它會掃描以太坊區塊鏈並識別MEV 的抽取活動。

爬蟲會遍歷區塊鏈,一條接一條交易地分析,檢查發生在一筆交易內的已知操作,並從這些組合行為中推斷一筆交易中可能發生了什麼。分類清楚之後,統計數據會被打上重要的標籤(供應者、交易類型、成功與否),並放入數據庫中以備製表和分析。

從MEV-Inspect 獲得的初步分析顯示了下列情形:

所分析的44.3 萬個區塊中,至少有1 萬個區塊浪費在了無效率的MEV 抽取過程中

平均而言,機器人(bot)在每個區塊通過套利和清算至少抽取了0.34 ETH 的MEV

機器人獲得的MEV 中至少有18.7% 都變成了gas fee 交給了礦工,這部分手續分佔所有交易手續費的3.7%

  • 為什麼要開發MEV-Inspect?
  • 沒有MEV-Inspect 這樣的工作來幫助我們更好地理解MEV,以太坊的用戶就更難看懂MEV 了。隨著越來越多在安全上至關重要的基礎設施遷移到鏈下,以及鏈上狀態和數據規模的增長,普通人越來越難以獲得密碼學貨幣的初始願景之一:透明性。為用戶維護一個透明的儀錶盤,是我們得以客觀評價MEV 現狀和檢驗Flashbots 活動所造成影響的最佳方法。因此,我們承諾會一直維護這樣的儀錶盤,只要資金和我們組織的資源允許。
  • 增加覆蓋面
  • 通過MEV-Inspect 來理解鏈上的MEV 活動也著實不易。它需要盡最大限度的努力來分析多種多樣機器人的行為,並開發出啟發式的方法來分類機器人對智能合約的使用。這些分類可能永遠不能盡善盡美,但我們的目標是提供有用的評估,並跟踪指標值的演變。 MEV-Inspect 的模塊化架構,正是為允許社區參與而設計的,有了社區的貢獻,我們就能不斷提高工具的覆蓋面和精確度。參見MEV-Inspect 的Github 倉庫。
  • MEV-Geth:概念驗證
  • 我們已經為免許可的MEV 抽取方法設計並實現了一個概念驗證項目,叫做“MEV-Geth”。總的來說,它是一套用於溝通交易排序偏好的區塊空間暗標(sealed-bid)拍賣機制。雖然我們的概念驗證項目在信任模型上是不完備的(incomplete trust guarantees),但我們相信它是對現狀的重大改善。採用MEV-Geth 應能極大地緩解由搶跑(frontrunning)和尾隨(backrunning)機器人所帶來的網絡擁堵和鏈擁堵。

為什麼要開發MEV-Geth?
我們認為,如果不採用中立、公開、開源的基礎設施是實現免准入的MEV 抽取,MEV 就有可能成為一個內部人的過家家。作為一個組織,我們承諾會公平、道德、政治中立的MEV 抽取方法提供參考實現。我們也希望能通過這樣做來防止以太坊被基於信任的暗池或者專門的通道侵蝕,這些都是安全上的薄弱點。我們推出MEV-Geth 有雙重目標,一方面希望為MEV 的抽取創建一個能保護以太坊特性的生態系統,另一方面,系統能圍繞我們的研究和開發路線圖,與社區展開對話。

設計目標

免准入:沒有能夠審查交易的中介
上鍊前隱私性:即交易只有到打包進區塊的一刻才會變成眾人皆知。注意,這種隱私性並不能排除例如交易聚合者/網關/礦工這些能優先知情的參與者。

MEV-Geth 如何工作?

競價失敗交易隱私性:意味著競價失敗的交易永遠不會被曝光(也永遠不會上鍊)。這與“效率” 屬性緊密相關。

完全隱私性:沒有任何人能在交易上鍊前知情,包括交易聚合者/網關/礦工。
終局性:一旦交易打包上鍊,MEV 的抽取就不可逆轉。用於防範time-bandit 鏈重組攻擊。
MEV-Geth 的概念驗證基於一個事實:搜尋人(searcher)可以拒絕來自特定礦工的報價,以此遏制惡意的行為(例如竊取盈利策略)。我們預計完全的隱私性需要一些隱私計算解決方案,例如SGX、ZKP 和MPC,來保證交易的內容在上鍊前對礦工是保密的。 Flashbots 組織的一個核心目標是激勵和生產這個方向的研究。
MEV-Geth 無法提供任何意義上的終局性保證。我們認為,這個問題的解決方案需要通過鏈狀態本身的隱私性來實現交易執行後的隱私性,或者是回滾在經濟上更不可行。設計具備強健終局性的系統是MEV-Geth 研究的第二大目標。

MEV-Geth 如何工作?

MEV-Geth 引入了一些新概念:“搜尋人”、“交易包” 以及“區塊模板”。本質上,MEV-Geth 是為礦工提供了將發現和排序交易的任務外包給第三方(也就是“搜尋人”)的辦法。這些搜尋人會相互競爭,爭相發現利潤最大化的交易排序,並使用一種標準化的模板叫做“交易包” 來競價,讓自己的交易包被打包進下一個區塊。這些交易包會在礦工主持的暗標拍賣中估價,產生一個“區塊模板”,模板中就包含了挖出區塊所需的交易排序信息。

MEV-Geth 兼容所有正式的以太坊客戶端。 Flashbots 的核心開發者正為go-ethereum 客戶端維護一個參考實現。
作為一個搜尋人,如何使用
搜尋人的工作是監控以太坊的狀態和交易池以發現MEV 的機會,然後生產交易包來抽取這些MEV。任何人都能成為搜尋人。實際上,有所抽取並不是生產交易包的必要條件,但我們預計,最有價值的交易包將會抽取一些。一個MEV-Geth 交易包就是一條標準化的信息,由一個有效交易的數組、一個區塊高度和一個可選的時間戳範圍(定義該交易包的有效時間)組成。

signedTransactions 可以是任意有效的以太坊交易。注意,必須按正確的順序放置交易的nonce。

blocknumber 定義了該交易包預計要上鍊的塊高。交易包只會在合適的高度處被估價,如果沒被選中就會立即被拋棄。

minTimestamp 和maxTimestamp 是兩個可選條件,用於進一步地限定交易包的有效時間範圍。

MEV-Geth 礦工會為自己所用的每一單位gas 選出最有利可圖的交易包,並將該交易包放在給定區塊高度的區塊模板的交易列表的開頭。礦工根據下列公式來確定一個交易包的價值。注意,block.coinbase 的餘額變化量即表示通過一個智能合約直接轉移ETH 的數額。
在提交交易包的時候,搜尋人可以使用eth_sendBundle 方法,直接把交易包發給礦工。因為MEV-Geth 要求搜尋人和礦工的直接通信,搜尋人需要可以配置一個目標礦工的列表。

  • 作為礦工,如何使用
  • 礦工只需運行MEV-Geth 來挖MEV 區塊就行,或者也可以實現自己的符合規範的分叉版本。

為從搜尋人處接收交易包,礦工需要發布一個公開的https 端口,來暴露自己的eth_senBundle RPC 接口。

MEV-Geth 由Flashbots 核心開發者團隊維護,源代碼可在這裡找到。

超越概念驗證

  • MEV-Geth 只是我們路上的第一個里程碑。我們希望能與社區探討現在就採用MEV-Geth 的優點。我們的初步研究表明,通過消除搶跑交易和尾隨交易,能使區塊鏈擁堵緩解至少2.4%,並顯著提高挖礦的收益。另外,我們相信,對MEV 生存危機的可持續解決方案,需要完全隱私和終局性,這是我們的概念驗證項目不具備的。我們希望MEV-Geth 走向完善版本的道路上能得到社區的反饋。
  • Flashbots:我們的組織
  • Flashbots 起源於MEV Pi-rate Ship,一個中立、對鏈無偏見的跨學科研究團體,支持MEV 相關的理論和經驗研究。
  • 研究和開發是緊密結合的兩大引擎,推動Flashbots 階段式發展:

我們的研究工作會長期保持。我們會用研究來確定和升級我們的路線圖,界定組織發展的各階段和相關的里程碑;

開發工作則以一個個里程碑為目標。我們會組織以產品為中心的團隊,一邊提供關鍵的基礎設施和生態工具,一邊收集數據並製作其它能反哺研究的工具。
我們的研究需要開放、透明和不斷迭代的集體創造,要從學術研究和應用研究中吸取靈感,也會以以太坊升級提議(EIP)流程為模板。研究可以得到MEV 研究者項目的經濟支持。

  • 公開承諾
  • 用我們的創造來保護以太坊的核心價值:開放性、免准入性、去中心化,迎擊由MEV 導致的危機;
  • 揭秘黑暗森林

開源我們的研究和Flashbots 核心基礎設施的代碼,讓社區的所有人都能參與和從中受益;

  • 通過考慮用戶、礦工、開發者、節點運營者、公共基礎設施運營者及開發者、合約/應用開發者,還有生態系統研究者的需要,在整個生態的關鍵參與者之間建立可持續的聯合;
  • 為MEV 領域的開放性倫理研究問題作貢獻,並且100% 交付公共領域。
  • 研究目標

我們的大目標—— 化解MEV 危機—— 可以分解成三個部分:揭秘,民主化和分配。對每一個部分,我們都列出了我們嘗試回答的問題:

  • 揭秘黑暗森林
  • 如何量化用戶因為MEV 抽取方法而受到的傷害,並為開發者提供工具來減少應用的受波及面?
  • 利益分配

如何為MEV 領域引入更多的透明性,讓社區能為MEV 的提取制定社會規範?

民主化抽取過程
如何能避免導致權力集中的市場機制?
如何能使MEV 抽取過程既高效、又沒有准入門檻?

  • 如何能將MEV 機會平等地向所有人開放?
  • 利益分配
  • 如何才能在礦工、交易者、DeFi 開發者,等等,之間建立可持續的激勵相容模式?

如何能將部分利潤導流到公共品生產(比如以太坊客戶端開發)中,形成良性循環?
如何能將MEV 抽取的負外部性最小化、正外部性最大化?

  • 研究路線圖—— Phase I
  • 我們將研究路線圖拆分成了不同的階段,使後續研究建立在前面的成功和結論之上。 Phase I 包含兩項研究:
  • 論文1:Flashbots 架構
  • 摘要:描述我們正在開發的基礎設施的架構及設計權衡
  • 搜尋人與礦工溝通交易排序偏好時,什麼樣的拍賣機制才是“好的” 機制呢?

這樣“好的” 機制有無正式的數學定義?如何利用已有的拍賣理論文獻來創造交易池拍賣理論?

  • 這些機制在PoW/PoS/無領袖算法,以及有交易排序拍賣的rollup 合約中,表現會不會有所不同?

論文2:Flashbots 倫理學

  • 摘要:討論MEV 和我們所開發的基礎設施相關的倫理學問題

我們是否應該開發一種“好的” 拍賣機制,用於溝通交易排序偏好?

  • 如何最小化爭搶優先的賄賂激勵措施對共識和用戶的傷害?
是否應該允許系統存在MEV?是否應該限制MEV?需要什麼樣的社會規範?

在MEV 抽取中,應該允許何種程度的透明度?
MEV 在司法上如何定性?應該形成什麼樣的行業自律?

开发者
歡迎加入Odaily官方社群