MEV-Boost,目前用於以太坊中MEV提取的側車協議,嚴重依賴被稱為中繼的中心化參與者。
我們提出了一種替代架構,允許建造者和提議者之間進行直接的、具有密碼學私密性的通信。它基於一種新穎的、非交互式的“無聲”閾值加密形式,可以使用驗證者現有的BLS密鑰對。
從本質上講,我們通過對插槽的一小部分證明人進行閾值加密塊提案來捎帶隱私和數據可用性的證明委員會。它們的證明形成解密金鑰;一旦證明瞭所需的閾值,就可以解密該塊。
我們的構建方案解決了構建者和提案者之間的隱私問題,但並不能單獨保證區塊的有效性。它可以與其他機制結合,完全複製中繼提供的功能,包括隱私和區塊的有效性。例如,像可信執行環境(TEE)證明或零知識(ZK)證明這樣的證明方案,或者用於抵押構建者的加密經濟機制。
通過消除需要中繼提供構建者隱私和確保區塊有效性的需求,我們旨在減少延遲並提高以太坊的去中心化和抗審查性。
MEV-Boost 是一個側載協議,它在區塊生成者和提議者之間進行中介。主要角色中繼的目的是提供兩個保證:
然而,對中繼的依賴帶來了顯著的中心化。大約90%的以太坊區塊通過僅有的幾個中繼傳送。這帶來了一些風險:
取代中繼的主要提案之一是“TEE-Boost“,它依賴於TEE(受信任的執行環境)。請注意,TEE 對我們的計劃不是必需的;使用TEE-Boost作為我們旨在解決的問題的教學示例很有説明。
具體來說,TEE-Boost讓建築商使用TEE來創建證明,向投標人證明其投標的誠實性和區塊的有效性,而無需向投標人透露實際的區塊內容。提議者可以檢查這些證明,而無需在商品硬體上運行TEE本身。
然而,TEE-Boost存在數據可用性問題:建造者只與提議者分享TEE證明和區塊標頭,而不是實際的區塊內容,[1]並且在提案者簽署標頭後,可能選擇不發布區塊內容(例如,如果市場條件不利)。解決該DA問題的建議方法有:
兩種方法都有缺點。 TEE-託管解決方案複製了類似於現有中繼的集中延遲動態。[2]使用外部DA層引入了額外的協議假設,並承擔了該外部協議的延遲動態(這些動態也可能不利)。
從理論上講,如果提議者也能夠存取 TEE,則建構者可以將其區塊加密到由提議者執行的 TEE。提議者的 TEE 只會在簽署後才解密該區塊。然而,我們認為 TEE-Boost 沒有考慮到這個設計,因為這將需要提議者(驗證者)運行 TEE。我們希望驗證者能夠在通用硬體上運行。↩
如果提案者自己將 TEE-Escrow 作為與其驗證器節點並置的 sidecar 運行,則可以避免延遲動態。然而,再次強調,我們不希望驗證器運行 TEEs。↩
我們提出了一個優雅的解決方案來解決TEE-Boost的DA問題: 將閾值加密到審查委員會。具體而言,建造者閾值將該時隙的區塊加密為審查委員會的指定部分。一旦收集到足夠的證明,該區塊就會變得可解密並可用。
核心的啟用技術是靜默閾值加密. 這種加密技術允許閾值加密,而無需交互式分散金鑰生成(DKG)設置階段,而以前的構造需要。 相反,聯合公鑰是從證明者已經存在的BLS公鑰加上一些“提示”(稍後討論)來確定性地計算的。
這實現了建立者和驗證者之間的直接單跳通信,並具有加密隱私。 驗證者無需自行運行 TEE,也無需管理任何新的金鑰材料。
機械:
建構者構建一個區塊並將其加密到審核委員會。
建造者向審核委員會展示了三件事的TEE證明: 出價是誠實的,區塊是有效的,並且加密正確。
建造者將加密區塊的閾值和 TEE 證明(其中包括出價值)傳達給提議者。[3]
提案人簽署中繼節點加密區塊並向驗證器集合傳遞此提案。
一旦指定的分數(例如 n/2 或 2n/3)n-attester委員會對插槽進行證明,該區塊將被解密。
解密的區塊正常進行最終化。
Silent Threshold Encryption的性能特徵相當良好。這裡
n 是我們希望支援的委員會最大大小,t 是解密的閾值。
加密和部分解密都是恆定時間。通過樸素的實現,加密需要 <7 毫秒 - 這可以並行化。部分解密需要 <1 毫秒。
密文大小是一個固定的附加因素,比明文(對於任何n和t)大768字節。
部分解密的聚合(即解密)取決於委員會的大小。當 n=1024 時,一個天真的實現需要<200毫秒。我們預期,當 n=128(每個槽位的證明委員會的大小)時,這將降低10倍,並且該實現可以進一步優化。
重要的是,加密時間是與中繼延遲進行比較的關鍵性能數字。這是建築師必須在區塊生產的“關鍵路徑”中計算的。它比現有的中繼區塊處理延遲要低,並避免了多跳通信。
靜默閾值加密並非完全免費。它需要一個形式為(g,g)的公共參考字符串。τ,gτ2,…,gτn−t),類似於KZG多項式承諾方案所使用的內容。
此外,具有形式為gsk的BLS公鑰的每個驗證人都會發布一組我們稱之為“提示”的群元素:(gsk⋅τ,…,gsk⋅τn−t). 這些提示僅需要聚合公鑰和解密密文。加密只使用固定大小的聚合公鑰。
撰寫本文時,大約有100萬個驗證者。如果我們設置n=128並t=n/2,每個驗證者需要張貼約3 KB的提示。因此,存儲所有驗證者的提示需要3 GB。
這個需求可能會大幅減少。啟動MaxEB,這允許控制>32 ETH的驗證者在相同的密鑰對下持有更大的餘額(而不是將它們分散在多個32 ETH存款中)。將實現的驗證者集減少還有待討論。看起來可能將降至〜1GB左右。
最後,根據以太坊共識架構的未來變化(例如,對驗證者集大小的進一步減少,或者替代的最終性流水線),必須存儲的提示大小可能進一步減小。
以太坊希望即使在不利的網絡條件下也能保持運作。這個計畫的一個問題是可能出現無法解密的區塊,因為委員會的指定比例不在線上。
一种解决方案是允许建筑者决定可接受的委员会解密比例(𝑡)。在隐私(解散和MEV窃取的可能性)和委员会阈值在线的可能性之间存在权衡。对于建筑者来说,获取他们的区块被包含在内而不是被分叉掉是收入最大化的,因此他们应该找出一个优化的阈值设置。[4]
此外,應該自願使用此加密方案。在網絡條件不佳的情況下,如果沒有一致地有足夠大小的委員會可用,提議者和構建者可以退而使用中繼、自我構建或者根據不良環境性質選擇的其他機制。
或者,委員會可能在線上,但建造者可以創造一個情況,使得該區塊在解密時要麼無法解密,要麼解密後無效(例如,使用欺詐性的證明)。
從協議的角度來看,分叉這些區塊是可以接受的。較廣泛的驗證器集合只是無法對其進行驗證,也無法對引用它們的任何區塊進行驗證。處理這種錯誤的最佳方法可能是讓共識客戶端意識到可能性並能夠優雅地失敗。需要進一步研究如何處理。
在達到閾值之前,獲勝的建造者比其他人更早知道區塊的內容,這可能在後續槽位中產生不公平優勢。然而,證明委員會應在下一個槽位結束之前行動,並且大部分區塊價值在槽位結束時,因此這種優勢的影響應該盡可能地減到最少。
長期來看,可能會用零知識(ZK)證明取代TEE證明。目前,ZK證明速度太慢,但在密碼學、軟體和專用硬體(ASICs)方面的進步可能最終會使ZK證明生成在必要的延遲限制內成為可能。值得注意的是,附隨區塊的ZK證明已經是一種以太坊長期路線圖的核心部分.
根據目前的驗證者集大小和增長率,這種方案可能不值得在L1上發布所需的數據量。然而,以太坊已經計劃大幅減少驗證者集的數量,並使用MaxEB。
最好的方法可能是在MaxEB之旁或之后进行升级,在其中共识客户端意识到加密块语义的可能性,并鼓励验证人发布提示。例如,在MaxEB之后,可能需要新进入的验证人发布提示,并且可以为旧验证人提供升级的激励。
一旦足夠一部分驗證者採用該機制,構建者就會開始使用該機制,使其具有足夠的委員會規模(即可接受的隱私和解密的可能性)。
如果我们的方法相对于多跳中继确实具有有利的延迟,市场应该在不需要协议强制使用或确立特定参数化的情况下采纳它。
中繼是以太坊最重要的中央集權來源之一,它創造了機會來尋租,並扭曲了協議的地理去中心化。
我們需要移除中繼並認為這是一種相對優雅的做法。 它需要在共識層進行更改,但驗證者不需要新的硬體或金鑰材料。
缺點是這是共識層的一個複雜變化,對於一個機制來說(如建議的選擇加入),可能會或可能不會被市場採納。然而,許多潛在的 MEV 流程的變化都面臨著類似的採納和收益優化問題(例如,包含清單)。而且可能還有其他未來的使用情形,需要驗證人集合擁有閾值加密基礎設施可用。
MEV-Boost,目前用於以太坊中MEV提取的側車協議,嚴重依賴被稱為中繼的中心化參與者。
我們提出了一種替代架構,允許建造者和提議者之間進行直接的、具有密碼學私密性的通信。它基於一種新穎的、非交互式的“無聲”閾值加密形式,可以使用驗證者現有的BLS密鑰對。
從本質上講,我們通過對插槽的一小部分證明人進行閾值加密塊提案來捎帶隱私和數據可用性的證明委員會。它們的證明形成解密金鑰;一旦證明瞭所需的閾值,就可以解密該塊。
我們的構建方案解決了構建者和提案者之間的隱私問題,但並不能單獨保證區塊的有效性。它可以與其他機制結合,完全複製中繼提供的功能,包括隱私和區塊的有效性。例如,像可信執行環境(TEE)證明或零知識(ZK)證明這樣的證明方案,或者用於抵押構建者的加密經濟機制。
通過消除需要中繼提供構建者隱私和確保區塊有效性的需求,我們旨在減少延遲並提高以太坊的去中心化和抗審查性。
MEV-Boost 是一個側載協議,它在區塊生成者和提議者之間進行中介。主要角色中繼的目的是提供兩個保證:
然而,對中繼的依賴帶來了顯著的中心化。大約90%的以太坊區塊通過僅有的幾個中繼傳送。這帶來了一些風險:
取代中繼的主要提案之一是“TEE-Boost“,它依賴於TEE(受信任的執行環境)。請注意,TEE 對我們的計劃不是必需的;使用TEE-Boost作為我們旨在解決的問題的教學示例很有説明。
具體來說,TEE-Boost讓建築商使用TEE來創建證明,向投標人證明其投標的誠實性和區塊的有效性,而無需向投標人透露實際的區塊內容。提議者可以檢查這些證明,而無需在商品硬體上運行TEE本身。
然而,TEE-Boost存在數據可用性問題:建造者只與提議者分享TEE證明和區塊標頭,而不是實際的區塊內容,[1]並且在提案者簽署標頭後,可能選擇不發布區塊內容(例如,如果市場條件不利)。解決該DA問題的建議方法有:
兩種方法都有缺點。 TEE-託管解決方案複製了類似於現有中繼的集中延遲動態。[2]使用外部DA層引入了額外的協議假設,並承擔了該外部協議的延遲動態(這些動態也可能不利)。
從理論上講,如果提議者也能夠存取 TEE,則建構者可以將其區塊加密到由提議者執行的 TEE。提議者的 TEE 只會在簽署後才解密該區塊。然而,我們認為 TEE-Boost 沒有考慮到這個設計,因為這將需要提議者(驗證者)運行 TEE。我們希望驗證者能夠在通用硬體上運行。↩
如果提案者自己將 TEE-Escrow 作為與其驗證器節點並置的 sidecar 運行,則可以避免延遲動態。然而,再次強調,我們不希望驗證器運行 TEEs。↩
我們提出了一個優雅的解決方案來解決TEE-Boost的DA問題: 將閾值加密到審查委員會。具體而言,建造者閾值將該時隙的區塊加密為審查委員會的指定部分。一旦收集到足夠的證明,該區塊就會變得可解密並可用。
核心的啟用技術是靜默閾值加密. 這種加密技術允許閾值加密,而無需交互式分散金鑰生成(DKG)設置階段,而以前的構造需要。 相反,聯合公鑰是從證明者已經存在的BLS公鑰加上一些“提示”(稍後討論)來確定性地計算的。
這實現了建立者和驗證者之間的直接單跳通信,並具有加密隱私。 驗證者無需自行運行 TEE,也無需管理任何新的金鑰材料。
機械:
建構者構建一個區塊並將其加密到審核委員會。
建造者向審核委員會展示了三件事的TEE證明: 出價是誠實的,區塊是有效的,並且加密正確。
建造者將加密區塊的閾值和 TEE 證明(其中包括出價值)傳達給提議者。[3]
提案人簽署中繼節點加密區塊並向驗證器集合傳遞此提案。
一旦指定的分數(例如 n/2 或 2n/3)n-attester委員會對插槽進行證明,該區塊將被解密。
解密的區塊正常進行最終化。
Silent Threshold Encryption的性能特徵相當良好。這裡
n 是我們希望支援的委員會最大大小,t 是解密的閾值。
加密和部分解密都是恆定時間。通過樸素的實現,加密需要 <7 毫秒 - 這可以並行化。部分解密需要 <1 毫秒。
密文大小是一個固定的附加因素,比明文(對於任何n和t)大768字節。
部分解密的聚合(即解密)取決於委員會的大小。當 n=1024 時,一個天真的實現需要<200毫秒。我們預期,當 n=128(每個槽位的證明委員會的大小)時,這將降低10倍,並且該實現可以進一步優化。
重要的是,加密時間是與中繼延遲進行比較的關鍵性能數字。這是建築師必須在區塊生產的“關鍵路徑”中計算的。它比現有的中繼區塊處理延遲要低,並避免了多跳通信。
靜默閾值加密並非完全免費。它需要一個形式為(g,g)的公共參考字符串。τ,gτ2,…,gτn−t),類似於KZG多項式承諾方案所使用的內容。
此外,具有形式為gsk的BLS公鑰的每個驗證人都會發布一組我們稱之為“提示”的群元素:(gsk⋅τ,…,gsk⋅τn−t). 這些提示僅需要聚合公鑰和解密密文。加密只使用固定大小的聚合公鑰。
撰寫本文時,大約有100萬個驗證者。如果我們設置n=128並t=n/2,每個驗證者需要張貼約3 KB的提示。因此,存儲所有驗證者的提示需要3 GB。
這個需求可能會大幅減少。啟動MaxEB,這允許控制>32 ETH的驗證者在相同的密鑰對下持有更大的餘額(而不是將它們分散在多個32 ETH存款中)。將實現的驗證者集減少還有待討論。看起來可能將降至〜1GB左右。
最後,根據以太坊共識架構的未來變化(例如,對驗證者集大小的進一步減少,或者替代的最終性流水線),必須存儲的提示大小可能進一步減小。
以太坊希望即使在不利的網絡條件下也能保持運作。這個計畫的一個問題是可能出現無法解密的區塊,因為委員會的指定比例不在線上。
一种解决方案是允许建筑者决定可接受的委员会解密比例(𝑡)。在隐私(解散和MEV窃取的可能性)和委员会阈值在线的可能性之间存在权衡。对于建筑者来说,获取他们的区块被包含在内而不是被分叉掉是收入最大化的,因此他们应该找出一个优化的阈值设置。[4]
此外,應該自願使用此加密方案。在網絡條件不佳的情況下,如果沒有一致地有足夠大小的委員會可用,提議者和構建者可以退而使用中繼、自我構建或者根據不良環境性質選擇的其他機制。
或者,委員會可能在線上,但建造者可以創造一個情況,使得該區塊在解密時要麼無法解密,要麼解密後無效(例如,使用欺詐性的證明)。
從協議的角度來看,分叉這些區塊是可以接受的。較廣泛的驗證器集合只是無法對其進行驗證,也無法對引用它們的任何區塊進行驗證。處理這種錯誤的最佳方法可能是讓共識客戶端意識到可能性並能夠優雅地失敗。需要進一步研究如何處理。
在達到閾值之前,獲勝的建造者比其他人更早知道區塊的內容,這可能在後續槽位中產生不公平優勢。然而,證明委員會應在下一個槽位結束之前行動,並且大部分區塊價值在槽位結束時,因此這種優勢的影響應該盡可能地減到最少。
長期來看,可能會用零知識(ZK)證明取代TEE證明。目前,ZK證明速度太慢,但在密碼學、軟體和專用硬體(ASICs)方面的進步可能最終會使ZK證明生成在必要的延遲限制內成為可能。值得注意的是,附隨區塊的ZK證明已經是一種以太坊長期路線圖的核心部分.
根據目前的驗證者集大小和增長率,這種方案可能不值得在L1上發布所需的數據量。然而,以太坊已經計劃大幅減少驗證者集的數量,並使用MaxEB。
最好的方法可能是在MaxEB之旁或之后进行升级,在其中共识客户端意识到加密块语义的可能性,并鼓励验证人发布提示。例如,在MaxEB之后,可能需要新进入的验证人发布提示,并且可以为旧验证人提供升级的激励。
一旦足夠一部分驗證者採用該機制,構建者就會開始使用該機制,使其具有足夠的委員會規模(即可接受的隱私和解密的可能性)。
如果我们的方法相对于多跳中继确实具有有利的延迟,市场应该在不需要协议强制使用或确立特定参数化的情况下采纳它。
中繼是以太坊最重要的中央集權來源之一,它創造了機會來尋租,並扭曲了協議的地理去中心化。
我們需要移除中繼並認為這是一種相對優雅的做法。 它需要在共識層進行更改,但驗證者不需要新的硬體或金鑰材料。
缺點是這是共識層的一個複雜變化,對於一個機制來說(如建議的選擇加入),可能會或可能不會被市場採納。然而,許多潛在的 MEV 流程的變化都面臨著類似的採納和收益優化問題(例如,包含清單)。而且可能還有其他未來的使用情形,需要驗證人集合擁有閾值加密基礎設施可用。