比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

干貨 | Flashbots:關于加速EVM的幾種方法_MEV

Author:

Time:1900/1/1 0:00:00

原文作者:Flashbots團隊XinyuanSun

感謝AlejoSalles、HongboZhang、AlexObadia和KushalBabel對本文的反饋和審閱。

原標題:《關于加速EVM的幾種方法,實現更好的可擴展性和更高效的MEV提取》

借助性能更高的以太坊虛擬機(EVM),我們可以實現更好的網絡可擴展性和更高效的最大可提取價值(MEV)提取。本系列文章分析了幾種加速EVM的方法,重點是并行化和共享數據沖突分析。

出于多種原因,以太坊虛擬機(EVM)的性能至關重要。首先,如果我們有更快的虛擬機,那么以太坊客戶端將能夠更快地處理和驗證交易,從而讓每個人都更容易運行一個完整的節點,并加強網絡的去中心化和安全性。第二,作為以太坊上的MEV提取變得更加突出,我們需要使MEV提取更容易,以便從中獲得的利潤可以更均勻地分配,以防止網絡經濟集中化。性能更高的EVM通過幫助搜索者產生更有利可圖的完整區塊和中繼以具有更好的延遲來實現這一點。這意味著建設者市場將變得更有效率,從而吸引更多的搜索者并使市場更具競爭力,這反過來又使人們更難以進行危及網絡穩定性的重組。

為了通過向后兼容性和對共識規則或存儲實現方式的最小更改來提高EVM性能,我們需要并行性。在本系列的第1部分中,我們認為需要并行EVM,并介紹實現它的一般方法,例如EIP648、EIP2930和推測執行。在第2部分中,我們研究了靜態分析和形式化方法如何使EVM可并行化,具體來說,我們提出了兩種實現并行化的簡單算法。

受BNB價格下跌影響,第二季度Venus資產總價值環比下降12%:7月15日消息,Messari發布2023年第二季度Venus報告,其中指出,Venus連續第四個季度實現利息收入增長,達到1150萬美元,為DAO帶來230萬美元收入,為儲戶帶來920萬美元。在美國證券交易委員會(SEC)指控幣安后,BNB價格下跌,致使Venus總價值環比下降12%;由于利率參數調整,借款利率上升,第二季度的用戶活動有所下降,活躍借款人和活躍存款人數量環比分別下降9%和10%。到第二季度末,攻擊者的頭寸距離清算(可用BNB清算,價格約為220美元)還有約10%。第二季度USDC和USDT貸款利息支出為130萬美元,儲戶收益率約為11,000枚BNB(隨BNB價格貶值)之后形成的。[2023/7/15 10:57:11]

背景

去中心化對區塊鏈安全至關重要:去中心化網絡的參與者很難串通。理想情況下,這是通過盡可能多的單獨方運行節點來驗證正在進行的交易來實現的。然而,擁有個人電腦的普通用戶通常需要3天以上的時間才能在以太坊上啟動一個完整的節點。這種低效率的背后是以太坊的大存儲容量,更具體地說是EVM的存儲設計:

對于節點性能,EVM存儲維護是一大瓶頸,目前占用了超過70%的事務處理時間。而對于另外20%+的實際EVM指令解釋時間,最耗時的操作碼是SLOAD,因為在涉及IO訪問的大型數據庫中,Merkletrie節點的隨機訪問。

幣安:因BTC網絡手續費超出預期,大量提現交易尚未完成:5月8日消息,幣安更新推文稱,“由于我們設定的費用沒有預料到最近BTC網絡手續費激增,因此仍有大量來自幣安的提現交易尚未完成。團隊正在努力加快所有未處理交易的確認。”

據此前報道,幣安發推稱,由于存在大量待確認交易,已暫時關閉BTC提款。團隊目前正在努力解決問題,并將盡快重新開放BTC提款。用戶資金是安全的。[2023/5/8 14:49:21]

那么,要在不影響去中心化的情況下擴展以太坊,我們能做些什么呢?

提出了幾個方向:

無狀態,它在以太坊節點中引入了角色分離,一些節點是“存儲節點”,而另一些是“驗證節點”。驗證者節點將僅在驗證塊時接收部分存儲。通過傳輸其合法性證明來確保存儲的正確性。但這會產生額外的網絡IO開銷。解決方案是為以太坊存儲使用新的數據結構,例如Verkle樹來壓縮存儲驗證證明。RainBlock,也是一個分離節點功能的提議。除了存儲節點和驗證節點之外,它還引入了一個特殊的IO-helper節點。這個提議遇到了同樣的問題,即產生額外的網絡IO開銷,它使用他們稱為DSM-tree的自定義數據結構解決了這個問題。分片類似于節點功能的垂直分離,將計算卸載到不同的網段。這些提議雖然很有希望,但都涉及對基礎客戶端或共識規則的重大改變。

作為正交方向,我們現在可以做的是使EVM并行。這有助于直接增加EVM的吞吐量,因此我們可以提高gas限制并在一個塊中包含更多交易,從而提高每秒交易量(tps)。此外,這還可以橫向幫助現有的可擴展性提議,如分片。

Circle:已將Silvergate持有的一部分USDC儲備轉移到其他銀行合作伙伴:金色財經報道,穩定幣發行商 Circle 官網發文稱,由于Silvergate Bank持續存在不確定性,今天 Circle 已將 Silvergate 持有的一小部分 USDC 儲備存款轉移到我們的其他銀行合作伙伴。所有 USDC 儲備均由幾家資本充足的美國銀行和 Circle Reserve Fund 持有,該基金目前約占 USDC 儲備的 80%。這些儲備金的總和現在由德勤每月審查和證明。

另外,Circle 的客戶服務、運營、風險管理和財務團隊已經將替代方案通知了其余依賴 Silvergate 的客戶。盡管 Silvergate 表示其與存款相關的服務不受影響,但 Circle 正在積極轉移剩余 Silvergate 相關服務。[2023/3/4 12:42:05]

高效的MEV提取

下圖顯示了可用于MEV提取的具有多個相關AMM交易的區塊數量。作者僅在2021年5月之前從三個DeFi協議中對確定性單塊MEV機會進行抽樣,但結果令人震驚。

今天,MEV機會要復雜得多,典型的驗證者在每個區塊中看到超過10個MEV發射交易。

由于區塊構建和捆綁利潤優化是一個NP完全問題,而且我們有太多的MEV捆綁要考慮,因此蠻力是不現實的,區塊構建者很難有效地生產最優的完整區塊提議者建造者分離,巨型捆綁)。

FTX商業主管Amy Wu離職:金色財經報道,The Information援引高管的話報道,FTX Ventures負責人Amy Wu已經辭職。Amy Wu今年1月加入該公司,推出了一個預計規模為20億美元的基金。在辭職的消息傳出之前,與FTX加密交易所有關聯的100多家公司實體申請了第11章破產保護。

Amy Wu上周在里斯本的Breakpoint會議上說,在上一個加密貨幣牛市中,風險投資交易很匆忙,沒有進行適當的盡職調查就進行了。(the block)[2022/11/12 12:53:35]

對EVM并行化的研究可以幫助解決這個日益具有挑戰性的捆綁合并問題。本質上,并行化算法設計的雙重問題是理解沖突是如何在搜索包中發生的:它們都需要知道事務的共享數據訪問信息。此外,并行EVM可以幫助完整的區塊構建者進行更多的模擬,從而產生更有利可圖的捆綁包。

并行化問題的細分

并行化EVM可能并不像看起來那么簡單。像投機并發這樣的幼稚解決方案已經表明,隨著以太坊變得越來越擁擠,樂觀執行的沖突率也會增加。僅就2017年的交易而言,沖突率已經高達35%。

高沖突率表明我們需要設計更精細的并行化算法,這將需要更精確的存儲訪問信息。接下來,我們正式確定這些任務的范圍。

設當前區塊號為k,以太坊區塊鏈的狀態為s/k,順序EVM的狀態轉換函數為δ(tˉ,s),它返回一個新的EVM狀態給定的交易ˉt和狀態s的列表。假設在列表ˉt中有n個事務,從txn_1到txn_n,順序為

MetaMask推出MetaMask Snaps以連接StarkWare等非EVM兼容網絡:6月29日消息,MetaMask宣布將StarkWare集成到ZK-RollupSnap中。MetaMask Snaps允許開發人員擴展MetaMask的功能,包括連接到非EVM網絡,如StarkNet。其為首個實現ZK-rollup支持的Layer2 snap,使用戶能夠更廣泛地訪問無權限的去中心化網絡,以實現快速、低成本的應用程序。此外,除了查看、管理和添加基于StarkNet的代幣外,Consensys還開發了一個Stark Netdapp來安裝snap。密鑰和交易批準將在MetaMask Flask中進行管理。MetaMaskSnaps允許開發人員在MetaMask之上構建并根據他們dapp的需求對其進行自定義。此外,Snaps目前僅在開發版本MetaMask Flask中可用,即僅限于開發者使用。[2022/6/29 1:40:03]

意味著我們只有在完成txni執行后才開始執行txnj?。

我們的目標是設計一個并行的EVM執行狀態轉換函數δp,例如δ(tˉ,sk?1?)=δp?(tˉ,sk?1?)。請注意,δ總是按照它們傳入的順序執行tˉ。而在δp?中,tˉ的執行沒有按順序。例如,在兩個不同CPU內核上運行的兩個事務可以同時完成執行,或者txnj?的執行將在我們開始執行txni?之前完成。

為了讓我們獲得一個好處,我們有兩個作業要做:

1.為每個事務獲取有關可能的共享數據沖突的信息。這意味著如果我們只在事務級別進行并行化,共享數據沖突將只是EVM存儲,因為來自一個事務的信息可以溢出到另一個事務的唯一方式是通過存儲。如果我們在更深層次上并行化,比如EVM操作碼,那么我們得到的信息也將包括EVM堆棧和內存。

形式上,這意味著對于每個txni,我們都有一些關于其共享數據訪問κ(txni?)的信息。此信息可以是任何東西,例如,κ(txni?)可以在交易調用的合約代碼中返回一組存儲位置文字。假設完美信息函數是k_perfect,那么我們推導出的κ是對Kperfect的估計。

2.基于信息的準確性,我們設計了我們的算法δp?(tˉ,sk?1?,κ),它現在將k作為附加參數。我們并行化的確切策略和抽象級別取決于k的精煉程度以及我們容忍沖突的程度。例如,有了關于每個事務的調用數據、堆棧、內存和存儲的完美信息Kperfect?,我們可以設計一個在操作碼級別并行化而沒有沖突的δp?。

為簡單起見,我們在這篇文章中只考慮事務級并行性。也就是說,我們假設κ僅包含有關存儲訪問的信息。我們將更精細的并行化模型留給以后的帖子。

我們意識到這種形式化不同于通常用于實現并行EVM所采用的形式。我們選擇這種形式化的原因是,通過分離κ,我們可以輕松地將算法重新用于優化操作批處理和緩存等優化。

存儲訪問信息

要檢索有關存儲訪問的信息,可以直接從手動輸入中獲取。例如,更改交易的傳遞方式并要求開發人員/用戶列出他們將使用的地址的高估,或者像Solana或其他基于UTXO的鏈一樣,讓每筆交易都包含與之交互的帳戶簽名列表.這似乎是一個簡單的解決方案,因為我們不會為κ的生成產生運行時開銷并且始終可以確保其穩健性。但是這些方法至少需要更改客戶端或在客戶端之前實現一個附加層。此外,它們極大地改變了用戶/開發人員的習慣,因此可能難以實施。

或者,來自Optimism的BenJones在一次演講中提議,我們將工作外包給flashbots搜索者,因為他們需要在想出一個有利可圖的捆綁包時以任何方式模擬交易。這種方法通過提供k=K_perfect來實現最佳精度,但它依賴于搜索者誠實地傳遞附加信息及其捆綁包,并且僅涵蓋使用mev-geth的客戶端。更重要的是,如果不設計一些額外的激勵系統,就很難在像flashbots這樣的無權限系統中執行。

另一個想法是在運行時之前使用推測生成的存儲信息并將其緩存。因為這種方法是推測性的,所以收集到的存儲信息是不健全的,在這種情況下,我們會退回到正常的存儲訪問。如果我們在Rainblock中進行節點功能分離,則此建議效果最佳。但如前所述,假定不存在。

另一個有趣的想法是形式化方法輔助字節碼分析以實現高性能并行化,我們將在下一篇文章中介紹。其中一個例子是Forerunner,它與rawgeth相比實現了8倍的性能提升,也是基于推測執行的思想,并且與我們在第二篇文章中的方法最相似,因為它們也使用形式方法技術來幫助生成的κ。

并行化算法

在這個階段,我們應該已經使用我們選擇的任何方法獲得了必要的共享數據訪問信息κ。現在,出于演示目的,我們使用κ的特定示例。假設我們有兩個事務txn_i<txn_j?都訪問存儲位置σ,我們將它們的訪問信息記錄為元組{(r,w),(r,w。的元組。第一個元組(r,w)表示txn_i的讀/寫操作,第二個元組表示txn_j的元組。例如,寫入{(r),(r,w。表示txn_i?讀取但未寫入σ,而txn_j既讀取又寫入σ。

使用這種形式化,我們可以想到四種簡單的情況:

{(r),(r。:txn_i和txn_j是可并行的,假設\sigmaσ只是這兩個事務的“讀取”集中的一個。

{(r),(w。:txn_i和txn_j必須按照tˉ的順序依次執行。

{(w),(r。:txn_i和txn_j必須按照tˉ的順序依次執行。

{(w),(w。:如果對s'的寫操作是可交換的,那么txn_i和txn_j是可并行的,否則它們必須按照tˉ的順序執行。

但是,txn_i和txn_j不僅訪問σ,還訪問更多位置,因此我們擴展了我們的四個簡單規則,包括每個事務的讀取集和寫入集,并且在搜索要執行的可并行事務時,我們循環遍歷每個事務的存儲訪問信息\kappaκ并應用上述規則。

或者,我們可以使用Vitalik在EIP648中描述的簡單算法:每個事務都包含它訪問的地址的集合β,如果兩個事務txn_i和txn_j滿足β_i∩β_j=?,則并行執行它們,否則不。

最終,這一切都取決于我們的κ有多精細,以及我們希望并行執行有多精細。例如,它可能不僅僅是二次的,這意味著我們的κ不僅包含存儲訪問信息,還包含內存/調用數據上的信息,因為我們也在單個事務中進行并行化。

當然,在這四種情況下,有很多復雜性。例如:{(w),(w。。在這種情況下,我們可能讓txn_i先讀取s'然后更改它,但分配給s'的值始終等于txn_j的分配值,因為智能合約是如何編寫的。所以這有效地減少到{(r),(r。的情況。或者這很容易反其道而行之,簡化為{(w),(r。,{(w),(w。或{(r),(w。。即便如此,也可能是編寫器以某種方式不會更改存儲的值,或者讀取器不會影響EVM中的狀態更改。

這些例子的重點只是說有很多特定類別的情況我們的并行化算法不能以最佳方式工作。所以這意味著根據κ的確切結構,我們有很多長尾優化設計截然不同的并行化算法以獲得最佳性能。我們將在下一篇文章中回到精確的優化。

結論

EVM并行化促進了以太坊的吞吐量增加,而不會影響去中心化或需要對協議進行重大更改。并行EVM研究的采用和開放共享還有助于通過允許更多個人使用更好的捆綁合并和生產來最大限度地減少MEV的經濟中心化。

在這篇文章中,我們探索了以太坊可擴展性解決方案的前景,并討論了為什么當前的并行化技巧不能順利運行。我們還通過將并行化問題分為兩部分來展示我們對并行化問題的形式化:生成共享數據訪問信息和設計利用該信息的并行化算法。

Tags:以太坊MEVASKMETA怎么購買以太坊幣MEV價格BASKBITMETA幣

芝麻開門交易所
富蘭克林鄧普頓CEO:區塊鏈和支付標記化可能會在促進環境、社會和治理相關流程方面發揮關鍵作用_TON

1月15日,“2022全球財富管理論壇?上海蘇河灣峰會”在上海舉行,主題為“全球共同復蘇下的經濟金融新圖景”。富蘭克林鄧普頓總裁兼首席執行官JennyJohnson出席并發表主題演講.

1900/1/1 0:00:00
Meta股價暴跌,微軟也栽了跟頭,大企業在元宇宙項目上折戟?_HOL

原標題:《Meta、微軟在元宇宙上栽了跟頭》元宇宙在2021年吸引了許多人的目光。許多公司都紛紛布局相關的業務,當中以Meta公司最為激進.

1900/1/1 0:00:00
政策疊加效應釋放,區塊鏈發展進入“快車道”,成為驅動數字經濟高質量發展的重要引擎_穩定幣

來源:經濟參考報 記者 張漢青 北京報道 原標題:《政策疊加效應釋放,區塊鏈發展進入“快車道”》近日,國務院印發《“十四五”數字經濟發展規劃》.

1900/1/1 0:00:00
Multicoin Capital為何青睞Ceramic:除金融可組合性,數據可組合性也是一大機會_CER

注:原文作者為MulticoinCapital聯合創始人KyleSamani,以下為全文編譯。幾個月前,在2021年Multicoin峰會上,我做了一個主題演講,強調了可組合性是2022年加密領.

1900/1/1 0:00:00
對話育碧戰略創新實驗室副總裁:玩家對NFT的消極反饋正是我們期待的_ART

原文標題:《Interview:UbisoftrespondstoangryNFTDigitsandQuartzreaction》 原文來源:Finde 原文編譯:微信公眾號:老雅痞 日前.

1900/1/1 0:00:00
第一個將“國家區塊鏈創新應用等試點”寫進省政府工作報告,廣東已經為區塊鏈落地鋪好了快車道_比特幣

來源:財聯社|區塊鏈日報 記者徐賜豪 原標題:《廣東推動國家區塊鏈創新應用試點的底氣在哪里?》近日,廣東省政府工作報告指出,加快建設廣州人工智能與數字經濟試驗區.

1900/1/1 0:00:00
ads