作者:James Prestwich
編譯:Luffy,Foresight News
EIP-1559 之前
很久以前,在EIP-1559 到來之前的加密世界,礦工通過簡單的投票機制來決定區塊大小。每個區塊,礦工都可以將區塊Gas 限制向上或向下移動最多1/1024。因此,當礦工生產區塊時,Gas 限制將向礦工偏好的算力加權平均值移動。這種機制自以太坊誕生以來就已經存在。
隨著EIP-1559 的出現使Gas 限制增加了一倍,但設置限制的方法卻沒有了。從EIP-1559 之後到合併前這段時間,礦工們對Gas 目標進行了投票,Gas 限制被定義為目標的兩倍。例如,如果1559 之前的限制是10mm(注:mm 指100 萬),1559 之後的目標是10mm,那麼1559 之後的限制就是20mm。 1559 提供了有效的區塊大小增加,但帶來了嚴重後果(以基本費用調整的形式)。 1559 制度下的礦工可以對Gas 目標進行投票,這與此前移動1/1024 的調整系統沒什麼不同。
現在1/1024 (0.09%) 可能看起來很小,但是,它意味著每50 個區塊增加約5%,或者每12.5 分鐘增加約5%,又或者每3 小時增加一倍。假設您小睡一下,醒來時突然發現Gas 限制翻倍(或減半)!
簡短的複習
EIP-1559 有2 個輸入並產生2 個輸出:
區塊生產者通過將每個區塊的目標調整1/1024 來設置目標Gas。通過這種方式,間接設置了Gas 限制(目標的2 倍)。區塊生產者通過Gas 目標與實際的Gas 使用量相結合來設定基本費用。當實際> 目標時,基本費用上漲;當實際< 目標時,基本費用下降。這裡有一個複雜的彈性關係。
請務必記住,目標使用情況對實際使用情況沒有影響。事實上,每個區塊生產者都設置目標(通過調整機制)和實際使用情況(通過在構建區塊時包含交易)。實際上,每個區塊生產者控制EIP-1559 的兩個輸入,因此可以控制輸出(針對特定區塊)。任何給定區塊中的目標都是生產者在無限迭代的「設置Gas 目標遊戲」中最新舉動的結果。因此,隨著時間的推移,平均值的行為會收斂到該博弈中均衡值。
EIP-1559 與合併
合併對Gas 限制機制有兩個主要影響:
- 由於出塊時間稍微縮短,Gas 限制增長5% 的周期縮短至10 分鐘。這意味著大約每2.4 小時,Gas 限制就有可能翻倍(或減半)。
- 礦工被「質押者」或「驗證者」或其他人取代。
第一個進一步加快了已經很快的複利過程,但這也許並不重要。
我認為第二個更重要。但並不是孤立的,而是作為更大系統趨勢的一部分。我們稍後再回來討論這個問題。
是什麼阻礙了區塊目標的上升?
你可能會想知道,為什麼區塊目標不上升?難道它不會讓用戶的交易變得更便宜,並且讓驗證者賺更多的錢嗎?如果這些事情看起來不錯,為什麼目標是15mm 而不是15,000,000mmm?為什麼15mm 目標(30mm 限制)是當前的平衡?
主要原因是它一直是根據核心開發人員的建議設置的。人們普遍認為,我們將其設置為我們知道用戶可以在合理時間內處理的水平。巨大的高Gas 區塊會DoS 節點並阻止確認。驗證者(以前的礦工)必須構建區塊,並驗證其他人的區塊。而如果區塊太大,無法在12 秒的出塊週期內可靠地構建或驗證,那麼驗證者在確認失敗時就會賠錢。這也會造成網絡不穩定,因為節點可能無法很好地處理千兆區塊。
EIP-1559 在一個相當簡短的安全部分中提到了這一點,考慮了與區塊大小相關的安全性:
該EIP 將增加最大區塊大小,如果礦工無法足夠快地處理區塊,這可能會帶來問題,因為這將迫使他們挖出空塊。隨著時間的推移,平均區塊大小應保持與沒有此EIP 時大致相同,因此這只是短期容量爆發的問題。一個或多個客戶端可能無法很好地處理短期容量爆發和錯誤(例如內存不足或類似情況),並且客戶端實現應確能夠正確處理最大容量的單個區塊。
我們傾向於認為,驗證者有足夠的盈利動機,可以將區塊限制保持在合理的範圍內,並且考慮到客戶的狀況,15mm 的目標是合理的。
EIP-1559 使用PBS 仍然安全嗎?
MEV-PBS 改變了這些情況。有了PBS,提議者不再直接支付區塊建設成本。他們將整個過程外包給構建者。事實上,常見的MEV-PBS 結構(例如Flashbots 中繼)對驗證者隱藏了區塊直到它承諾提議該區塊。作為構建過程的一部分,驗證者將他們的首選Gas 限制傳達給中繼。
構建者使用專門的、優化的軟件(不是現成的客戶端)來構造一個區塊,然後將該區塊(帶有Gas 限制調整)傳送給中繼。中繼確保構建者的區塊符合提議者的要求。
這帶來了一個有趣的情況。提議者現在被禁止支付區塊構建費用。構建者專門支付這些費用,並且不必太擔心更大的Gas 限制。那麼在MEV-PBS 世界中,為什麼Gas 目標應該保持較低呢?
現在還不安全
提議者總是有動力無限提高Gas 目標,以消除基本費用,但受到這樣做的成本和風險的限制。另一方面,構建者想要確認區塊,並且不鼓勵構建太大而無法在可確認的時間段內驗證的區塊。換句話說,構建者的盈利能力正走在鋼絲繩上。他們需要仔細平衡構建更大的實際區塊來獲得更多的提取與區塊大小對可確認性的影響。如果構建者生成的區塊太大而驗證者無法驗證,他們就有可能失去整個區塊的獎勵。這意味著構建者有強烈的動機將實際區塊大小保持在合理的可驗證大小,無論Gas 目標如何。
另一方面,提議者卻不需要考慮這樣的平衡。他們可以簡單地無限提高協議執行的Gas 目標,並讓構建者找到一個有利可圖的平衡點。這樣做可以消除基本費用,同時保持實際區塊空間受到限制。
通過提高Gas 目標(和協議強制限制),同時將實際區塊大小保持在正常範圍內,提議者不僅能夠通過異常區塊大小提取更多MEV,他們還消除了基本費用,同時人為限制供應。如果構建者保持較小的區塊,那麼用戶將不得不支付Gas 小費,這樣就回到了EIP-1559 之前的費用市場。實際上,他們可以通過「假設」增加區塊空間來修補EIP-1559,然後拒絕讓任何人使用它。
EIP-1559 似乎對提議者和構建者來說是一場明顯的勝利。他們既可以在邊緣情況下為自己提取更多的MEV(通過偶爾構建巨大的區塊),也可以將所有基本費用燃燒轉換為通過人為限制供應來支付的小費。而且,卡特爾是激勵相容的,因為雙方似乎都沒有從偏離中獲利。
這讓我想到了本文的中心問題。
提議者和構建者什麼時候將Gas 目標提高到100mm+?
考慮到可確認性的限制,無論目標大小如何,構建者都應將實際塊大小保持在當前值附近。一些合理的小區塊可以實現利潤最大化。然而,對於提議者來說,一些高得離譜的Gas 目標可以最大化他們的利潤。由於提議者和構建者立場不同,他們可以串通提高Gas 目標同時縮小實際規模來實現利潤最大化。
只要區塊實際Gas 保持在15mm 左右,15000mm Gas 目標不是比15mm Gas 目標更激勵相容嗎?
所以,無論是區塊構建者還是驗證者,推高目標Gas,但保持實際產生的區塊較小,會使得收益更高。