本文發布于以太坊愛好者,作者:Kai。
設想一種情形:用戶在AMM類型的DEX上做交易,無論設置什么滑點,最終都會在你能接受的最差價格上成交。這可能是個對用戶來說很可怕的場景。
TLDR;
目前的MEV-Geth實現機制改變了原本網絡中預期的交易排序規則,導致諸多細思極恐的公開公正性問題,并且可能已經對生態中的用戶產生利益損害。
以太坊網絡交易池原生規則
當前以太坊網絡中,如果用戶通過原生的方式發送交易,這筆交易會在整個由以太坊全節點組成的點對點網絡傳播,并且交易的內容完全透明,這意味著任何網絡中任一全節點能看到絕大部分交易的交易內容。
由此,以太坊網絡中會出現幾種破壞交易發送者預期和體驗的情況:
1.搶跑,指通過讓特定交易在同個區塊中排在目標交易前而獲利,主要針對清算和套利交易;
2.尾隨,指通過讓特定交易在同個區塊中排在目標交易后而獲利,典型的針對對象是信息輸入機制交易或大單交易;
3.三明治夾擊,上述兩種攻擊形式的結合,讓目標交易恰好夾在兩筆特定構造交易中間,從而獲利。三明治攻擊大大拓寬了可攻擊的范圍,哪怕是一筆普通的AMMDEX交易,都有可能成為針對對象。攻擊者的第一筆構造交易制造更大的交易價格波動,待目標交易執行完之后緊接著執行第二筆構造交易,換回發動攻擊的代幣完成獲益。
以太坊質押協議Rocket Pool推出支持合并的v1.6.0版本:8月25日消息,以太坊質押協議 Rocket Pool Smartnode 堆棧推出支持合并的 v1.6.0 版本,仍在使用 v1.4.x 版本的用戶必須在 8 月 29 日之前升級至支持 Redstone 更新的版本,在使用 v1.5.x 版本的用戶則需要在 9 月 6 日之前升級至支持 Bellatrix 硬分叉的版本。[2022/8/25 12:47:46]
發起攻擊的對象是不確定的。理論上,所有知道了你的交易內容的人都有可能攻擊你,dApp項目方、專業攻擊者、錢包、礦池,都有可能攻擊你。
攻擊的難易程度,與網絡的共識規則和生態中普遍可用的基礎設施有關;例如,如果大家完全遵守當前的交易池規則,僅通過GasPrice競爭來影響出塊者對交易的排序,則三明治攻擊是比較難發動。
目前,由于能夠直接決定自己所打包區塊中的交易的執行順序,礦工-礦池一直被當成是最有可能發動攻擊的參與者,這也是“MEV”這個概念的由來;但實際由于攻擊機會具備一定時效性,可能轉瞬即逝,攻擊者和礦池更多表現為一種分成合作的關系。
這些背景,正是使我對MEV-Geth和其他形式的、礦池直接從事三明治攻擊的現象感到不安的原因。
Pax Treasury在以太坊網絡銷毀超1323萬枚BUSD:金色財經報道,Whale Alert數據顯示,北京時間11月20日22:13,Pax Treasury在以太坊網絡上銷毀13,231,753枚BUSD,銷毀哈希值為:0x40eb20ba9aee71c424b47ae97423937ff203bf29d01d4b4b441387e2dfde531f。[2020/11/21 21:33:01]
當前的MEV-Geth實現
目前MEV-Geth實現的功能僅為,搜索網絡中MEV機會的搜索器,轉發原子交易包到注冊礦池節點,出塊節點允許插隊。構建出僅在注冊礦池和Relay服務器間的簡單網絡。
MEV-Geth是一種特殊定制的以太坊節點客戶端,運行在礦池方,允許通過該客戶端存儲Relay分發的MEVBundle,并將這些特殊的交易打包到區塊中的隊列頭部位置。
使用者可使用MEV-Geth廣播稱為Bundle的交易包;一個Bundle內包含的信息有:一個交易列表,套利計算區塊高度,最小最大超時時間。在單個Bundle上鏈的區塊中,發送者會通過coinbase交易,向出塊者支付ETH作為分傭。
在當前的MEV-Geth實現中,每一個區塊只能存在一筆Bundle,因此出塊者會會選出coinbase支付最大的一筆Bundle上鏈。
以太坊2.0存款合約地址已收到12萬枚ETH,進度22.89%:據歐科云鏈OKLink數據顯示,當前以太坊2.0存款合約地址已收到120000.0ETH,有84個地址完成32ETH的抵押,距離524288枚ETH啟動以太坊2.0創世區塊的最低要求已完成22.89%。[2020/11/20 21:31:33]
這個當前的實現簡化了實施三明治夾擊的難度。一方面,攻擊者可以顯式地聲明夾擊交易的前后關聯;其次,夾擊者沒有了后顧之憂,即使在與其他夾擊者的上鏈競爭中落敗,其交易也只會在MEV-Relay網絡中超時無效,不需要付出Gas費用。
根據Flashbots團隊的公開聲明,他們正在開發允許同一個區塊包含多筆Bundle的方案,或許我們很快會看到區塊中充滿大量零Gas費的三明治夾擊。
找到MEV-Geth交易
根據目前的實現,MEV-Geth交易最顯著的特點就是前后兩筆夾擊交易的GasPrice都為0。
打開區塊瀏覽器網站etherchain.org,查看任一區塊的交易列表,如果在列表開頭出現了三明治夾擊,且夾擊交易的GasPrice為0,則這很有可能是通過MEV-Geth發起的Bundle。
-12200018高度區塊的列表頭部-
聲音 | 以太坊聯合創始人:以太坊2.0將有助于減少硬件浪費:以太坊聯合創始人Joseph Lubin近日在直播活動中表示,以太坊1.0沒有足夠隱私和保密性,也沒有用戶所需的可擴展性。而以太坊2.0為以太坊平臺帶來了更大的容量,大幅度提高系統可伸縮性和每秒處理交易數量。比特幣和以太坊都使用工作證明(PoW),而以太坊2.0將在以太坊的區塊鏈中實現股權證明(PoS),將有助于減少硬件浪費。(Ambcrypto)[2019/10/31]
-某筆被夾擊交易全過程-
網絡已全面部署MEV-Geth
當前MEV的情況可以通過對0gasprice并且gasused大于21000交易查詢獲得,具體見我臨時建立的dunedashboard:
從圖中可看到,不少礦池都已參與,每天有約超過3500筆MEV相關交易,大約一千多次MEV交易產生。按照平均出塊時間在12s來算,每天有7200(60x60x24/12)個區塊,即每天有近1/3的區塊中存在MEV-Geth交易。還有部分礦池未使用MEV-Geth,套利者還未切換到這種新的競爭模式。
不同環境下的博弈
我們可以借助比較幾種交易池運作情形,來了解用戶得到了什么,又失去了什么。
公開博弈狀態
動態 | 以太坊 挖礦難度和算力7日平均值連創新高:據amberdata.io網站數據顯示,距離以太坊君士坦丁堡升級還有1天18小時,當前區塊高度為7069913。當前以太坊網絡上活躍節點為9770個。以太坊算力和挖礦難度在7天圖表上顯示,以太坊算力在1月13日達到低點后,隨后率先反彈,挖礦難度在觸及低點后也開始反彈;以太坊目前7日平均算力為447.59TH,7日挖礦難度平均為2.74PH。[2019/1/15]
如果網絡回歸到原生狀態,而且出塊者恪守行業自律,所有交易全公開,任何人都能通過建立節點或者通過節點服務發現未被打包的交易;那么,如果想夾擊某筆交易,就需要發送兩筆交易,并設置gasprice為被攻擊交易前后來保證夾擊順序,并且在有競爭的情況下還要發送多份拷貝交易提高成功率,最后在任意交易執行失敗時要面臨花出礦工費的懲罰。
從用戶方來看,大家都處于平等公開的環境下,當看到自己交易被夾擊或搶跑時,是有機會有方法加速或取消這筆交易來避免潛在損失的。
而且,最終成型的區塊,不僅能顯示出交易池競爭的勝者,還能真實地反映交易池競爭的實際情形。
隱私交易服務
此處的“隱私交易”指的是礦池開設專門的通道,由該通道進入礦池交易池的交易不對外廣播,但仍根據GasPrice高價優先的形式排序并打包交易。
普通用戶使用隱私交易服務時,其交易對外不公開,因此,除非礦池自身違反保密承諾或參與攻擊,否則用戶不會受到上述攻擊。
再從另外一頭考慮,如果攻擊者通過隱私交易服務攻擊公網可見交易,被攻擊者無法發現事情即將發生,無法做出應對。但是,三明治夾擊仍然受限于交易路由和交易池排序的隨機性,無法輕易實施。
而且,當多人競爭同一個獲利機會時,只要礦池不透露相互競爭的交易,他們便無法了解競爭對手出價,只能盲出價格進入排序隊列,這變相提高攻擊成本和難度。
此外,最終成型的區塊,仍然能真實地反映出交易池競爭的全部情形,外部可以觀測到成功失敗及其原因。
若MEV-Geth成為主流
MEV-Geth出現后,套利者搶跑者會將可套利可夾擊的交易提交到這個網絡中競價,篩選出上交礦池利益最大的Bundle會放到下一個打包的區塊中優先執行,保證被打包交易能達到100%成功率。
在當前,如果你也部署了一個MEV-Geth節點,Bundle內容對你來說是透明的,因此如果有人攻擊你,你也能及時響應。
但如果你并不知道什么是MEV-Geth,你的情形與有人動用隱私交易攻擊你相同;變得更差的是,攻擊者的確定性提升不少,并且攻擊過程的競價也無法得知,因為成型的區塊將只暴露那筆勝出的交易,而不會暴露競爭的過程。
Flashbots認為,這會給網絡帶來一些好處:套利者競爭博弈的過程被移到另外一個網絡,可以緩解以太坊P2P網絡的負擔;只有勝出者占據區塊空間,可以緩解區塊擁堵。在subreddit/EtherMining上有發布報告列出目前區塊中的額外獲利情況,但或許長期不一定能趕上礦工費下降帶來的總收入減少,需要更多長期數據跟蹤研究。
去中心愿景
原本網絡共識預期是,以太坊Defi用戶和搶跑者處于同一規則下,并且競爭的過程和結果也是透明地暴露在區塊中。隨著礦池的介入,事情變得更加復雜,隱私交易和MEV-Geth,都讓網絡底層開始明確介入上層業務。而MEV-Geth似乎用各種好處正當化了對用戶的三明治夾擊,并且讓競價過程在一個外部無法觀測的網絡中發生,網絡運行過程變得變得不友好也不透明。
我這里有幾個問題:
1.礦池為提供算力的礦工獲得利益出發,部署目前這個階段的MEV-Geth去獲取更多利益,這可能無可厚非。但這是否符合去中心和網絡的公開公正呢?
2.Flashbots之前公開承諾里有提到保護以太坊的開放性去中心化,目前MEV-Geth隱私性和公開拍賣競爭問題未解決之前,部署到當前的網絡中是否是合適的時機呢?
3.礦池的排序權引申出來的超級能力,可能在去中心化網絡中無法被去除,也就是MEV是個客觀存在的事物。但對于MEV-Geth出現讓MEV的濫用變得更加便利,甚至成為正當借口去夾擊用戶交易,這是否造成長期不良影響?
社區中也是有不少關于MEV或MEV-Geth實現的爭議,不少聲音是擔心:
康奈爾教授AriJuels在CoinDesk上發表的《Miners,Front-Running-as-a-ServiceIsTheft》
OffchainLab聯合創始人EdFelten發表的《MEVauctionsconsideredharmful》,這篇不是針對這個議題,反對的是拍賣一天排序權的這種方法。Vitalik有一篇對此的回應。
EthererumResearch論壇上網友pmcgoohan發表的《MEVAuctionsWillKillEthereum》
Paramdigm基金合伙人CharlieNoyes發表的《MEVandMe》中也提到“MEVCanHarmUsers,MEVCanHarmEthereum”
如果以太坊想成為支撐整個世界的金融基礎平臺,那么維持用戶資產安全以及交易排序的公平性就非常重要。所有參與方都是按照礦工費競價規則競爭打包隊列位置,執行失敗會失去支付的礦工費。礦池在打包過程中完全忽略交易內容,僅以礦工費高低來為交易排序,網絡驗證人和應用參與方隔離開來,互不干涉影響。
MEV-Geth的全面部署以及礦工對以太坊網絡的應用層逐步侵入,讓我感覺到有些不對勁,周末兩天思考和查閱材料,最后寫下了這篇內容,希望能讓更多人來思考這個可能會對以太坊影響深遠的問題,也感謝這幾天幫助校對內容的朋友們,特別感謝阿劍老師不斷對闡述邏輯和順序向我發問讓文章內容更加完善與邏輯完備。
Tags:MEVETH以太坊GETHmev幣圈啥意思iEthereum以太坊最新價格行情平臺togetherbnb完整攻略圖文
本文來源于Wangarian推特,就職于DeFi投資基金DeFianceCapital,翻譯:盧江飛今天,我想在去中心化交易所這個老瓶里給裝一些新酒.
1900/1/1 0:00:00鏈捕手消息,近日,作為全球隱私計算網絡與分布式經濟體基礎設施的PlatON宣布與ChainX、PolkaWorld達成全方位戰略合作.
1900/1/1 0:00:00本文發布于區塊律動,原文標題:《為什么SushiSwap會像Uniswap一樣成功》,作者:MableJiang,MulticoinCapital合伙人,編譯:QLY去年DeFi大火的時候.
1900/1/1 0:00:00DREP2.0 DREP將完成由無感化區塊鏈區塊鏈工具集,向DeFi信用協議的技術產品升級。DREP2.0是基于Layer?2的去中心化信用數據中間件.
1900/1/1 0:00:00本文發布于Odaily星球日報,作者:秦曉峰,編輯:郝方舟。 如今,IDO打新的熱情持續高漲,前兩期的熱門IDO項目盤點也獲得了讀者的熱烈關注.
1900/1/1 0:00:00鏈捕手消息,據CoinDesk報道,大熱的新型社交網絡BitClout創始人Diamondhands披露了一份BitClout的投資者名單.
1900/1/1 0:00:00