實現去中心化區塊構建者的兩種方法和四種設計。

原文:Block Builder Decentralization is coming, but maybe not so soon(BallsyAlchemist's Newsletter)

作者:BallsyAlchemist,分佈式資本研究員

編譯: 0x11,Foresight News

封面: Photo by Shubham Dhage on Unsplash

2022 年初,有一個關於區塊構建潛在中心化以及 MEV 和區塊排序後 PBS(提議者/ 構建者分離)影響的討論。我個人對這種擔憂產生了共鳴,並發表了一篇探討中心化風險的文章。社區對這個問題的看法存在分歧,一些人接受以太坊存在一個去中心化的驗證器網絡和一個更中心化的區塊構建者的想法,正如 Vitalik Buterin 在《Endgame》中所概述的那樣。然而,這些擔憂最終被擱置一旁,並從公眾討論中淡出。不過,上一次 SBC 會議將這些擔憂重新帶回了最前沿,因為 Vitalik 提出了去中心化區塊構建的方法(Jon Charbonneau 寫了一篇現場的精彩報告)。從那時起,我一直在考慮去中心化區塊構建者的潛在設計,並嘗試分享我的想法和去中心化區塊構建所面臨的挑戰。

區塊構建的中心化程度如何,為什麼我們需要去中心化?

以太坊一直在努力成為最抗審查、無需許可和無需信任的區塊鏈,任何類型的中心化因素都可能損害這些屬性。我將列出主要問題,並解釋為什麼有些問題很重要,而有些則不重要。

排他性訂單流: Flashbots 和社區都在積極討論關於排他性訂單流如何導致單個區塊構建者壟斷中標和訂單流。假設構建者提供激勵措施,例如 MEV 共享、私有交易和 MEV backrun 保證,以收集其他人無法訪問的訂單流,從而構建更高價值的區塊,始終如一地贏得拍賣。但是,我認為將導致排他性的所有類型的激勵措施歸於一類問題過於寬泛,因此我將它們分為以下子類別:通過 MEV 再分配的排他性訂單流和通過 MEV backrun 保證、私人交易的排他性訂單流。要注意這些子類別並不相互排斥並且具有不同的含義。

  • MEV 再分配:隨著更多訂單流市場在未來幾年推出,這種擔憂可能會變得不那麼重要。市場競爭加劇,他們將需要通過訂單流拍賣提供更多的 MEV 回扣,以吸引用戶和交易。這種競爭最終將影響用戶選擇在哪裡提交交易。
  • 私人交易和 MEV backrun 保證:這是一些人可能更喜歡的可選功能。但是,如果要大規模增長,使用這種類型的排他性訂單流可能會導致訂單流集中化。為了緩解這種情況,持續提出更高價值區塊的去中心化區塊構建者將是有益的。

審查制度:區塊構建者的去中心化程度不足可能會導致一部分構建者勾結和審查交易。雖然 crList、Geth 的原生區塊構建選項和加密內存池等解決方案旨在減輕這種風險,但它們也帶來了挑戰,例如帳戶抽象的部分體現,需要基礎設施來支持無狀態驗證者的狀態訪問,以及圍繞現有的安全問題啟用隱私的技術。為了更深入地了解當前的區塊構建環境,這裡有一些關於區塊生產的統計數據。根據 2022 年 12 月所有構建者的出塊成功率,排名前 5 的構建者如下:

前五名區塊構建者平均成功率

排名前三的區塊構建者在該月共同控制了成功提交區塊總數的 60%,這表明需要對他們不串通或審查交易的行為給予了極大的信任。為了解決這個問題,實施一個去中心化區塊構建過程的框架將增加串通和審查的成本,從而實現更加去信任的區塊生產系統。

網絡效應導致的中心化:在不完全的市場競爭中,可以認為一個構建者會自然而然地通過構建更高價值的區塊來戰勝其對手,並在不需要直接激勵的情況下吸引更多的訂單,從而導致中心化。然而,現實中並非總是如此。

出塊成功率圖

該圖說明了合併之前和之後一段時間內的出塊成功率。值得注意的是,可以看出 Flashbots(以深藍色表示)出塊成功率已經減少並達到與其他主要區塊構建者相似的平衡點,而不是完全主導區塊生產。這與提議中由於網絡效應導致的集中化相矛盾,這個結果可能有多種解釋。

  • 競爭對手的排他性訂單流:其他競爭的構建者可能擁有獨家訂單流(私人交易等),可以生產更高價值的區塊。
  • 訂單流擁塞:太多訂單希望通過 Flashbots 包含在塊中,導致延遲。這可能會迫使用戶將交易放在多個構建者之間,以增加在一個區塊中提交的機會,尤其是在高流量時。 
  • OFAC 合規性:Flashbots 符合 OFAC 標準,而其他一些則不符合。用戶可能會根據一些監管問題決定選擇構建者。
  • Flashbots 開源構建者和中繼代碼以引來了更多競爭。

上面這些因素在一定程度上緩解了網絡效應對構建者中心化的影響。然而,如上表所示,中心化仍然是一個問題,我認為社區應該給予更多關注和認識。

我們去中心化什麼?

區塊生產的權力是去中心化的關鍵。與其委託一個實體完全控制區塊的構建,不如有一個框架允許多個實體或個人參與該過程。目前,有兩種方法來實現這一點,應該注意的是,這些方法並不相互排斥。 

  • 提議者參與區塊構建
  • 通過新的架構和算法去中心化塊構建者,允許競爭性區塊生產(大量設計空間)

圍繞擬議方法的技術可行性和挑戰仍在討論之中,我想在這里分享我的想法。  

方法一:提議者參與區塊生產

目前有幾種方法可以使提議者參與區塊生產,但我相信 Eigenlayer 方法提供了更清潔的解決方案。在深入研究 Eigenlayer 的具體細節之前,這裡是一個簡短的概述:它是以太坊區塊鏈上的一組智能合約,允許持有 ETH 的驗證者通過對其抵押的 ETH 施加額外的罰沒條件來選擇為新服務提供安全性。如需更全面的了解,您可以閱讀此處

目前在區塊生產過程中構建者如何與提議者交互?提議者構建者分離(PBS)系統已經實施。在這個系統中,構建者可以向中繼器提交一個區塊,然後中繼器將驗證區塊的正確性並將其中繼給提議者。該系統旨在防止提議者進行審查,因為只有在選擇出價最高的區塊並且相應的簽名後的區塊頭被中繼回中繼器後,區塊的內容才會透露給提議者。負責確保已提交塊的數據可用性的託管機構隨後會將數據(交易)透露給提議者,然後提議者將區塊發送到網絡的其餘部分。下圖說明了這個過程。

構建區塊過程圖,來源 Eigenlayer

PBS 系統通過將驗證者的權限限制在更高價值區塊的提議上,增強了以太坊的抗審查能力。然而,Eigenlayer 提出了一個名為 MEV+ 的 MEV 管理框架,它允許區塊提議者在現有區塊之上包含額外的交易。這是通過施加額外的罰沒條件來實現的。 

目前,區塊提議者只受一個罰沒條件的約束,即禁止同一提議者同時提議兩個區塊。使用 MEV-Boost+ 框架,如果提議者在提議添加了「proposer_part」交易的新區塊時修改或未能包含區塊的已提交「builder_part」,也將受到懲罰。這有效地防止了提議者試圖修改或刪除區塊構建者的交易。下圖說明了 MEV-Boost+ 工作過程。

提議者參與出塊示意圖,來源 Eigenlayer

這種機制在與 crList 結合使用時也很有效,crList 是提議者必須包含在區塊中的交易列表。這有助於減少在構建者級別對交易進行審查的可能性。雖然已經提出了其他解決方案,例如對 Merkle 根的預先承諾或 KZG 承諾,以允許提議者參與區塊生產,但 EigenLayer 提供了一種更簡單的替代方案,不需要提議者提供額外的計算資源,並且可以同時參與區塊生產。

總的來說,這種方法很簡單,並且可以通過將提議者引入流程來進一步去中心化區塊生產,從而與更多實體共享區塊的權限。然而,這種方法的影響有限,因為它從根本上仍然依賴於中心化的區塊構建者,並且不能完全防止由構建者中心化引起的審查。因此我們有第二種方法。

方法 2:去中心化區塊構建者

設計去中心化區塊構建者是一個引人入勝的探索領域,像 Flashbots 這樣的團隊已經在嘗試不同的設計。在考慮如何去中心化構建者時,重要的是要意識到以下挑戰:

  • MEV 竊取:構建者可以訪問搜索者提交的捆綁交易中的信息並竊取搜索者的 MEV。為了防止這種情況,提交的捆綁包和交易的隱私應該在設計上得到保護。
  • 次優 MEV:理想情況下,應該在保持最佳 MEV 的同時實現構建者的去中心化。由於去中心化,一些設計可能會導致區塊構建效率低下,並導致區塊的 MEV 減少,進而導致區塊競爭力下降。但也可以爭辯說,只要去中心化的構建者比其他構建者吸引更多的訂單流,次優的區塊生產是可以接受的。
  • 與中心化構建者的競爭:去中心化構建者需要在生產 MEV 方面與中心化構建者競爭。去中心化構建者的目標是聚合盡可能多的訂單流,以與中心化構建者之間集中的訂單流競爭。
  • 延遲:區塊生產是時間敏感的,可能存在嚴重的延遲問題。 
  • 管轄範圍(抗審查):去中心化的構建者應該分佈在多個司法管轄區,這樣他們才能抵制司法審查(如 OFAC)。大多數國家/ 地區的監管仍處於灰色地帶,並且不希望冒著構建者網絡被單個監管實體取締的風險。

考慮到這些挑戰,我想在整個研究社區討論提議的去中心化構建者設計,並深入探討圍繞它們的一些潛在問題。目前,有兩種主要類型的去中心化構建者:

  • 搜索者– 聚合器模型:搜索者提交交易包,聚合器將在不知道關於提交的 bundle 的很多/ 任何信息的情況下構建區塊。 
  • 插槽拍賣模型:區塊空間按順序進行拍賣,區塊由多個構建者逐步構建,沒有聚合器。

以下提議的設計是這兩種方案中任一種的變體。 

設計 1:使用 TEE/TPM 的搜索者– 聚合器模型

這種方法要求聚合器使用可信執行環境 (TEE) 或可信平台模塊 (TPM) 來確保接收到的交易包的隱私,從而防止 MEV 竊取。有關 TEE 和 TPM 之間差異的更多信息,請查看此處。以下是設計說明(TPM 和 TEE 在這種情況下可以互換):

基於 TEE 的區塊構建者示意圖,來源 Vitalik 

Flashbots 發布了一份進度報告,介紹了他們在 SGX 中運行 Geth 的經驗,SGX 是英特爾開發的一種 TEE。雖然存在許多技術挑戰,但他們已經成功地使用 SGX 中的加密交換空間和 Gramine 運行 Geth,Gramine 是為 SGX 設計的庫操作系統之一,具有 500GB RAM、1TB SSD 交換空間和 64GB 受保護內存。以下是該實驗的一些關鍵要點: 

  • 在 SGX 中運行 Geth 是可行的,但資源密集且耗時,需要大量內存和 3 小時的啟動時間來存儲和加密鏈上數據。
  • 加密的交換空間提供了良好的性能,但仍然容易受到側信道攻擊、隱蔽信道攻擊和其他編程錯誤造成的信息洩露。  
  • 需要在性能和資源之間做出權衡。例如,資源密集度較低的方法性能較差,並且可能存在更嚴重的信息洩漏問題。 

此外,使用 SGX 時還需要考慮其他問題:

有一些方法可以減輕信息洩漏問題,但某些方法可能會導致性能下降,需要更多的試驗和錯誤來磨練出性能最好的框架來運行 SGX。

複雜的設置和 SGX 兼容芯片的稀缺性導致進入門檻很高。雲服務商可能會提供 SGX 的可訪問性,並且可以作為一個臨時解決方案,但從長遠來看,雲運營商將是一個重要的中心化因素。

SGX 洩露信息仍然是一個問題。如果人們在 SGX 中發現其他可利用的漏洞,聚合器應立即執行自己的 TCB 恢復(旨在重新實例化 SGX 環境的過程),而不是等待英特爾的響應,這可能需要很長時間。  

與中心化構建者不同,去中心化構建者原則上應該歡迎並鼓勵訂單流的聚合。假設信息洩漏為零,搜索器– 聚合器模型應該具有信任最小化安全性,相信加密和 SGX 完美運行。但是,它可能具有高度可信的活躍性,其中只有少數實體運行聚合器,這是可能的,因為捆綁包自然會聚合到最成功的聚合器。在這種情況下,訂單流/ 捆綁包中不會導致審查問題,但可能會導致活躍度問題。 

如果運行聚合器的實體數量較少,則可能存在地理分佈不足導致管轄範圍傾斜的情況,使網絡更容易受到監管審查。

雖然像 SGX 這樣基於 TEE 的解決方案似乎是目前更實用的構建者去中心化方法,但它仍然面臨許多需要克服的技術挑戰。

設計 2:具有閾值加密和 ZK-SNARK 的搜索者– 聚合器模型

這是另一種搜索者– 聚合器模型,其中加密應用於捆綁包而不是聚合器。這是一個粗略的例子: 

基於 TE 和 ZKP 的區塊生成器示意圖

這種設計可能存在聚合器和提議者之間的串通。閾值加密僅在計算狀態根之前確保捆綁包的隱私,並且計算狀態根的聚合器需要訪問交易信息或狀態更新。這種訪問可以通過追踪相應的交易來實現 MEV 竊取。該設計消除了對 TEE/TPM 的需求,但它無法在不增加額外複雜性的情況下防止這種串通,例如要求提議者在允許計算狀態根的解密之前提交到區塊。以下是此類設計的一些問題:

  • 提議者對區塊的早期承諾可以通過重新抵押基礎設施(如 Eigenlayer)來實現,但會產生額外的運營成本,因為需要充分激勵 ETH 抵押者來平衡相關的罰沒條件。
  • 提議者可能會因為提早提交一個區塊而錯過價值更高的區塊。
  • 增加了生成 ZK-SNARK 和閾值加密的計算開銷和延遲,使得該模型在實踐中可能不可行。
  • 關於誰將是閾值加密包的合格密鑰持有者的問題,如果搜索者持有密鑰,偽裝成搜索者的攻擊者可以阻止解密並延遲區塊生產。相反,聚合器不能持有密鑰,因為它們中的每一個都在競爭區塊生產並且可能被激勵去阻礙其他聚合器。這可能需要第三方,既不是搜索者也不是聚合者,並引入額外的信任假設,這些假設可能會降低作為去中心化構建者的無信任/ 信任最小化屬性。
  • 與第一個設計中提到的管轄範圍相同。

設計 3:基於混沌迭代搜索的插槽拍賣模型

這種設計允許多個區塊構建者參與區塊生產而無需聚合器。下面是一個粗略的插圖:

基於插槽拍賣的區塊構建者示意圖

該設計旨在允許多個塊構建者通過將區塊的最大 gas 劃分為 n 個插槽來參與構建單個塊,給定 x 個構建者,其中 n = f(x) 且 n<MAX_THRESHOLD。網絡中的構建者開始競標劃分區塊空間,出價最高的人填滿該部分區塊,第一個中標者成為區塊的構建者,剩餘位置的投標繼續進行,新的投標人收到在建區塊並在此基礎上進行構建。當沒有更多的投標人或區塊已滿時,投標週期結束。最後持有區塊的構建者將其提交給提議者。這種設計通過在每個插槽執行 MEV 拍賣 (MEVA) 並應用閾值加密來保護隱私,將單個構建者的傳統任務分成更小的部分。這種設計的主要優點是它消除了對中心化聚合器的需求,並允許構建者分佈在全球範圍內,提供分佈式管轄範圍。但是,此設計也存在一些潛在挑戰:

  • 何時公開加密插槽將決定拍賣的效率(出價越接近相應的 MEV,拍賣效率越高,因為 MEV 將是插槽的「真實」價格)。如果加密插槽 N-1 在插槽 N 拍賣之前被公開,那麼拍賣將是有效的,因為構建者能夠根據他們預期的 MEV 進行投標。但是,這在實踐中可能會出現延遲問題,因為插槽的嚴格順序拍賣和解密可能需要一些時間。因此,另一種選擇是讓構建者預先競標所有插槽的區塊構建的權利,並在構建者填充插槽時依次解密塊。由於構建者在投標前不知道插槽的 MEV(需要知道插槽 N-1 中的交易以確定插槽 N 的 MEV),拍賣可能效率低下,由於缺乏已實現的 MEV,構建者甚至可能不小心對插槽出價過高。不過,這個問題可以通過對區塊中給定位置的插槽的歷史投標價格進行統計分析來緩解。
  • 為了防止構建者修改之前插槽中的交易,其他構建者必須充當見證人並提供某種形式的欺詐證明。
  • 當插槽按順序解密時,中心化構建者可以竊取一些 MEV。如果用戶僅通過這個基於插槽拍賣的構建者網絡提交訂單流,那麼 MEV 竊取問題就不會那麼嚴重,但如果通過中心化構建者和這個構建者網絡提交訂單流,那麼 MEV 竊取可能會出現問題。 
  • 惡意攻擊者,如競爭的中心化構建者,可以通過中標而不是構建區塊來破壞網絡,從而暫時停止區塊生產。如果有足夠多的此類攻擊者,這個構建者網絡可能會變得功能失調(無法產生任何區塊)。需要有一種機制來禁止網絡中的惡意構建者,並在未填充的插槽上有一個備份計劃。

設計 4:提議者承諾的順序插槽拍賣

這是另一種使用插槽拍賣模型的方法,類似於不必依賴聚合器的第三種設計。主要區別是該設計通過 Eigenlayer 為每個填充的插槽強制執行提議者承諾。不是在最後將整個區塊提交給提議者,而是每個插槽將由提議者順序提交,並且可以使用 Eigenlayer 來避免對以太坊進行協議級更改。由於提議者的承諾是在插槽顯示之後立即出現的,因此對構建者修改先前插槽中的交易的擔憂較少。然而,除了由於過程中額外的順序提議者承諾導致延遲可能更糟,第三種設計提到的大多數其他問題也適用於這種設計。

對區塊構建前景的看法

去中心化是區塊鏈技術的一個重要方面,確保區塊構建者去中心化是至關重要的。在本文中,我們討論了幾種可能的去中心化區塊構建者的方法。然而,這仍然是一個供研究界探索和合作的開放設計空間。

設計一個具有競爭力的去中心化區塊構建者需要大量的實驗,像 Flashbots 這樣的團隊已經在探索 SGX 和其他支持隱私的技術。然而,要充分發揮這些技術的潛力,還需要更多的創新和研究。

總的來說,去中心化區塊構建者是一項持續的挑戰,需要加密貨幣以外更廣泛的研究社區的合作和專業知識。通過實驗、測試和創新,我們可以努力創建一個去中心化的、有競爭力的區塊構建者,以增強網絡的抗審查能力。

免責聲明:作為區塊鏈信息平台,本站所發布文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。文章內的信息僅供參考,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。