我現在正在肯尼亞參加以太坊開發者互操作會議的最後一天,寫下這段文字。在這次會議上,我們在實施和解決即將到來的重要以太坊改進的技術細節方面取得了大量進展,最顯著的是PeerDAS、Verkle樹過渡和EIP 4444中去中心化存儲歷史的方法。以我個人的觀點來看,以太坊開發的速度以及我們交付對節點操作員和(L1和L2)用戶有意義的重大功能的能力正在增加。
以太坊客戶端團隊正在合作推出Pectra開發網路。鑑於這種更強的技術能力,一個重要的問題是:我們是否在朝着正確的目標前進?一個思考的提示是長期以來的Geth核心開發者Peter Szilagyi最近的一系列不滿推文:
這些擔憂是合理的。以太坊社區中的許多人都表達了這些擔憂,我自己在很多情況下也有同樣的擔憂。然而,我並不認爲情況像Peter的推文所暗示的那樣無望;相反,許多問題已經在進行中的協議功能中得到解決,其他許多問題也可以通過對當前路線圖的非常現實的調整來解決。
爲了看看這在實踐中意味着什麼,讓我們逐一討論Peter提供的三個例子。目標不是專門針對Peter,而是這些擔憂在許多社區成員中普遍存在,解決這些問題很重要。
過去,以太坊區塊是由礦工創建的,他們使用相對簡單的算法來生成區塊。用戶將交易發送到一個通常稱爲“mempool”(或“txpool”)的公共p2p網路。礦工監聽mempool,接受有效且支付費用的交易。他們會包含能容納的交易,如果空間不夠,他們會優先處理手續費最高的交易。
這是一個非常簡單的系統,有利於去中心化:作爲礦工,你可以只運行默認軟件,就能從一個區塊中獲得與專業礦場相同的手續費收入。然而,大約在2020年,人們開始利用所謂的礦工可提取價值(MEV):只有通過執行復雜策略才能獲得的收入,這些策略對各種DeFi協議中的活動有深入了解。
例如,考慮像Uniswap這樣的去中心化交易所。假設在時間T,中心化交易所和Uniswap上的USD/ETH匯率都是3000美元。在時間T+11,中心化交易所的USD/ETH匯率上升到3005美元,但以太坊尚未生成下一個區塊。在時間T+12,以太坊生成了一個區塊。創建這個區塊的人可以將他們的第一個交易設爲一系列Uniswap買單,以3000到3004美元的價格買入所有可用的ETH。這是額外的收入,被稱爲MEV。除了去中心化交易所,其他應用也有類似的問題。2019年發布的《Flash Boys 2.0》論文詳細探討了這一問題。
《Flash Boys 2.0》論文中的一張圖顯示了使用上述方法可捕獲的收入量。
問題在於,這打破了爲什麼挖礦(或2022年後,區塊提議)可以是“公平”的說法:現在,那些有能力優化這些提取算法的大型參與者可以從每個區塊中獲得更高的回報。從那時起,有兩種策略之間的辯論,我稱之爲MEV最小化和MEV隔離。MEV最小化有兩種形式:(i) 積極開發無MEV的替代方案,如Cowswap,(ii) 構建協議內技術,如加密mempools,減少區塊生產者可用的信息,從而減少他們可以捕獲的收入。特別是,加密mempools可以防止諸如三明治攻擊之類的策略,這些策略通過在用戶交易之前和之後放置交易來進行經濟剝削(“搶先交易”)。
MEV隔離的工作原理是接受MEV,但試圖通過將市場分爲兩類參與者來限制其對權益集中化的影響:驗證者負責證明和提議區塊,但選擇區塊內容的任務通過拍賣協議外包給專門的構建者。現在,單個權益持有者不再需要擔心自己優化DeFi套利;他們只需加入拍賣協議,並接受最高出價。這被稱爲提議者/構建者分離(PBS)。這種方法在其他行業中有先例:餐館能夠保持如此分散的一個主要原因是它們通常依賴於相對集中的供應商來進行各種具有規模經濟的運營。到目前爲止,PBS在確保小型驗證者和大型驗證者在MEV方面公平競爭方面已經取得了相當成功。然而,這又帶來了另一個問題:選擇哪些交易被包含的任務變得更加集中。
我對這一問題的看法一直是,MEV最小化是好的,我們應該追求它(我個人經常使用Cowswap!)——盡管加密mempools有很多挑戰,但MEV最小化可能還不夠;MEV不會降到零,甚至接近零。因此,我們也需要某種形式的MEV隔離。這創造了一個有趣的任務:我們如何使“MEV隔離箱”盡可能小?我們如何賦予構建者最少的權力,同時仍讓他們能夠承擔優化套利和其他形式MEV收集的角色?
如果構建者有權力完全排除區塊中的交易,則可能會出現非常容易的攻擊。假設你在一個DeFi協議中有一個以快速下跌的資產爲擔保的抵押債務頭寸(CDP)。你想要增加抵押品或退出CDP。惡意構建者可能會嘗試串通拒絕包含你的交易,延遲到價格下降到足以強制清算你的CDP。如果發生這種情況,你將不得不支付大筆罰金,而構建者將獲得其中的大部分。所以我們如何防止構建者排除交易並進行這些類型的攻擊?
這就是包含列表的作用。
來源: 這個 ethresearch.ch 帖子。
包含列表允許區塊提議者(即權益持有者)選擇必須包含在區塊中的交易。構建者仍然可以重新排序交易或插入他們自己的交易,但他們必須包含提議者的交易。最終,包含列表被修改爲約束下一個區塊而不是當前區塊。無論哪種情況,這都剝奪了構建者將交易完全排除在區塊之外的能力。
以上是復雜背景的深入探討。但MEV是一個復雜的問題,即使上述描述也遺漏了許多重要的細微差別。正如老話所說,“你可能沒有尋找MEV,但MEV在尋找你。”以太坊研究人員已經在“最小化隔離箱”這一目標上達成了一致,盡可能減少構建者可能造成的傷害(例如,通過排除或延遲交易來攻擊特定應用)。
話雖如此,我認爲我們可以做得更好。歷史上,包含列表通常被視爲“旁邊的特例功能”:通常你不會考慮它們,但如果惡意構建者開始做出瘋狂的事情,它們給你提供了一條“第二路徑”。這種態度反映在當前的設計決策中:在當前的EIP中,包含列表的gas限制約爲210萬。但我們可以在思維方式上進行哲學性的轉變:把包含列表視爲區塊,而把構建者的角色視爲一種附帶功能,增加一些交易來收集MEV。如果構建者的gas限制是210萬呢。
我認爲這種方向的想法——真正將隔離箱盡可能縮小——非常有趣,我贊成朝這個方向發展。這是從“2021年哲學”到新的哲學的轉變:在2021年的哲學中,我們對現在有構建者的想法更加熱情,我們可以“超載”他們的功能,讓他們以更復雜的方式爲用戶服務,例如通過支持ERC-4337費用市場。在這種新哲學中,ERC-4337的交易驗證部分將必須被納入協議中。幸運的是,ERC-4337團隊@yoav/AA-roadmap-May-2024#Native-AA---a-modular-roadmap">已經越來越接受這個方向。
總結:MEV的思考已經回到賦權區塊生產者的方向,包括賦予區塊生產者直接確保用戶交易包含的權力。帳戶抽象提案也已經在減少對中心化中繼器,甚至捆綁器的依賴。然而,有充分的理由認爲我們還不夠,我認爲推動開發過程進一步朝這個方向發展的壓力是非常受歡迎的。
如今,單獨質押者在以太坊質押總量中佔比相對較小,大多數質押是由各種提供者完成的——一些是中心化運營商,另一些是去中心化自治組織(DAO),如Lido和RocketPool。
我自己做了一些研究——通過各種投票[1] [2]、調查、面對面的對話,問了“爲什麼是你——特別是你——今天不進行單獨質押?”對我來說,一個強健的單獨質押生態系統是以太坊質押的最理想結果之一,而以太坊最棒的事情之一就是我們實際上在努力支持一個強健的單獨質押生態系統,而不是僅僅屈服於委托質押。然而,我們離這個目標還很遠。在我的投票和調查中,有一些一致的趨勢:
根據Farcaster的投票,人們不進行單獨質押的主要原因有兩個。
解決這些擔憂的關鍵問題有兩個:
許多正在進行的研究和開發項目正是在解決這些問題:
然而,我們仍然可以做得更多。從理論上講,我們可以讓驗證者更快地撤回質押:即使每次確定性(即每個紀元)時驗證者集合發生了幾個百分點的變化,Casper FFG仍然是安全的。因此,如果我們付出努力,我們可以進一步縮短撤回期限。如果我們想大大降低最低存款額,我們可以做出艱難的決定,以其他方向進行權衡,例如,如果我們將最終確定性時間增加4倍,那麼就可以將@VitalikButerin/parametrizing-casper-the-decentralization-finality-time-overhead-tradeoff-3f2011672735">最低存款額減少4倍。單插槽確定性後續會通過完全擺脫“每個質押者在每個紀元中都參與”模型來清理這一點。
在這整個問題中的另一個重要部分是質押的經濟學。一個關鍵問題是:我們想要質押成爲一個相對小衆的活動,還是我們想要每個人或幾乎每個人都將他們所有的ETH進行質押?如果每個人都在質押,那麼我們希望每個人承擔什麼責任呢?如果人們最終只是因爲懶惰而將這一責任委托出去,那可能最終導致中心化。在這裏涉及了重要而深刻的哲學問題。錯誤的答案可能會導致以太坊走向中心化和“在傳統金融系統中增加額外步驟”的道路;正確的答案可以創建一個成功生態系統的光輝典範,其中包括廣泛和多樣化的單獨質押者和高度分散的質押池。這些問題涉及到核心的以太坊經濟學和價值觀,因此我們需要更多的多樣化參與。
以太坊去中心化中的許多關鍵問題最終都歸結爲一個問題,這個問題已經定義了區塊鏈政治達十年之久:我們希望使運行節點變得多麼容易,以及如何做到這一點?
如今,運行一個節點是困難的。大多數人都不這樣做。在我用來撰寫這篇帖子的筆記本電腦上,我有一個reth節點,它佔用了2.1 TB的空間——這已經是英勇的軟件工程和優化的結果。我需要去購買一個額外的4 TB硬盤來放入我的筆記本電腦,以存儲這個節點。我們都希望運行節點變得更容易。在我理想的世界裏,人們將能夠在他們的手機上運行節點。
正如我之前所寫的,EIP-4444和Verkle樹是讓我們更接近這個理想的兩個關鍵技術。如果兩者都實施了,節點的硬件要求可能最終會降至不到一百GB,甚至在完全消除歷史存儲責任的情況下可能接近零(也許僅適用於非質押節點)。Type 1 ZK-EVM將消除自行運行EVM計算的需要,因爲您可以簡單地驗證執行是否正確的證明。在我理想的世界裏,我們將所有這些技術堆疊在一起,甚至以太坊瀏覽器擴展錢包(例如Metamask,Rabby)都將內置一個節點來驗證這些證明,進行數據可用性抽樣,並確信鏈是正確的。
上述描述的願景通常被稱爲“The Verge”。
這一切都是已知的,也被理解,即使是那些對以太坊節點大小提出擔憂的人也是如此。然而,有一個重要的擔憂:如果我們轉移了維護狀態和提供證明的責任,那麼這不是一個中心化的向量嗎?即使它們不能通過提供無效數據來欺騙,這是否仍然違背了以太坊的原則,過於依賴它們呢?
這個擔憂的一個非常近期的版本是很多人對EIP-4444感到不安:如果普通的以太坊節點不再需要存儲舊的歷史記錄,那麼誰需要呢?一個常見的回答是:肯定有足夠多的大型參與者(例如區塊瀏覽器、交易所、第二層網路),他們有動力來保存這些數據,而且與Wayback Machine存儲的100 PB相比,以太坊鏈是微不足道的。因此,認爲任何歷史都會真的丟失是荒謬的。
然而,這種論點依賴於對少數大型參與者的依賴。在我對信任模型的分類中,這是一個1對N的假設,但N相當小。這有其尾部風險。我們可以做的另一件事是將舊的歷史存儲在一個點對點網路中,每個節點只存儲數據的一小部分。這種網路仍然會進行足夠的復制以確保穩健性:每個數據片段將有數千份拷貝,而且在未來,我們可以使用糾刪碼(現實中,通過將歷史記錄放入EIP-4844式的數據塊中,這些塊已經內置了糾刪碼)來進一步提高穩健性。
數據塊內部和數據塊之間都有糾刪碼。對於以太坊所有歷史記錄的超穩健存儲來說,最簡單的方法可能是將信標塊和執行塊放入數據塊中。圖片來源:codex.storage
長期以來,這項工作一直在後臺進行;Portal Network存在,但實際上它並沒有得到與其在以太坊未來重要性相稱的關注。幸運的是,現在有了強烈的興趣和動力,向着將更多資源投入到一個以分布式存儲和歷史記錄的可訪問性爲重點的最小化版本的Portal。我們應該利用這一勢頭,並且應該共同努力盡快實施EIP-4444,配合一個健壯的去中心化的點對點網路,用於存儲和檢索舊的歷史記錄。
對於狀態和ZK-EVMs,這種分布式方法更加困難。要構建一個高效的區塊,你必須擁有完整的狀態。在這種情況下,我個人傾向於採取務實的方法:我們定義並堅持一定水平的硬件要求,以擁有一個“全功能節點”,這個要求要高於(理想情況下不斷減少的)簡單驗證鏈的成本,但仍然低到可以承受的程度。我們依賴於一個1對N的假設,確保N相當大。例如,這可以是一臺高端消費級筆記本電腦。
ZK-EVM證明可能是最棘手的部分,實時ZK-EVM證明可能需要比存檔節點更強大的硬件,即使有像Binius這樣的先進技術,以及多維度gas的最壞情況邊界。我們可以努力構建一個分布式證明網路,其中每個節點承擔證明一個區塊執行的責任的一部分,然後區塊生產者只需要在最後匯總這百分之百的證明。證明聚合樹可能進一步提高效率。但如果這樣做效果不佳,另一個妥協方案就是允許證明的硬件要求提高,但確保“全功能節點”可以直接驗證以太坊區塊(無需證明),以便足夠快速地有效參與網路。
我認爲事實上,2021年的以太坊思維確實變得過於習慣於將責任轉移給少數大型參與者,只要存在某種市場機制或零知識證明系統來迫使這些中心化參與者誠實行事。這樣的系統在一般情況下通常運作良好,但在最壞情況下可能會產生災難性後果。
我們不會這樣做。
與此同時,我認爲強調當前以太坊協議提案已經明顯遠離了那種模式,並且更加認真地對待了對一個真正去中心化網路的需求是很重要的。關於無狀態節點、MEV緩解、單槽確定性等概念的想法已經在這個方向上有了很大進展。一年前,通過利用中心化節點作爲半中心化節點來進行數據可用性抽樣的想法曾經被認真考慮過。今年,我們已經超越了需要這樣做的必要性,PeerDAS取得了令人驚訝的強大進展。
但是,我們可以在這個方向上做很多事情,包括我上面提到的三個方面,以及許多其他重要的方面。Helios在爲以太坊提供了一個“實際的輕節點”方面取得了巨大進展。現在,我們需要將其默認包含在以太坊錢包中,並讓RPC提供者在結果中提供證明,以便驗證,還需要將輕節點技術擴展到第二層協議。如果以太坊通過一個以Rollup爲中心的路線圖進行擴展,第二層需要獲得與第一層相同的安全性和去中心化保證。在以Rollup爲中心的世界中,有許多其他事情我們應該更加認真地對待;去中心化和高效的跨第二層橋梁是其中的一個例子。許多Dapp通過中心化協議獲取其日志,因爲以太坊的本地日志掃描已經變得太慢。我們可以通過一個專門的去中心化子協議來改進這一點;這是我提出的一個如何實現的方案。
有無數個區塊鏈項目都在瞄準“我們可以非常快速,我們會考慮去中心化問題”的這個利基。我不認爲以太坊應該成爲這些項目之一。以太坊L1可以而且確實應該成爲第二層項目的強大基礎,這些項目採用超級規模方法,將以太坊作爲去中心化和安全的支柱。即使採取以第二層爲中心的方法,第一層本身也需要具有足夠的可擴展性來處理大量的操作。但是,我們應該對使以太坊獨特的屬性保持深刻的尊重,並繼續努力維護和改進這些屬性,以太坊擴展。
我現在正在肯尼亞參加以太坊開發者互操作會議的最後一天,寫下這段文字。在這次會議上,我們在實施和解決即將到來的重要以太坊改進的技術細節方面取得了大量進展,最顯著的是PeerDAS、Verkle樹過渡和EIP 4444中去中心化存儲歷史的方法。以我個人的觀點來看,以太坊開發的速度以及我們交付對節點操作員和(L1和L2)用戶有意義的重大功能的能力正在增加。
以太坊客戶端團隊正在合作推出Pectra開發網路。鑑於這種更強的技術能力,一個重要的問題是:我們是否在朝着正確的目標前進?一個思考的提示是長期以來的Geth核心開發者Peter Szilagyi最近的一系列不滿推文:
這些擔憂是合理的。以太坊社區中的許多人都表達了這些擔憂,我自己在很多情況下也有同樣的擔憂。然而,我並不認爲情況像Peter的推文所暗示的那樣無望;相反,許多問題已經在進行中的協議功能中得到解決,其他許多問題也可以通過對當前路線圖的非常現實的調整來解決。
爲了看看這在實踐中意味着什麼,讓我們逐一討論Peter提供的三個例子。目標不是專門針對Peter,而是這些擔憂在許多社區成員中普遍存在,解決這些問題很重要。
過去,以太坊區塊是由礦工創建的,他們使用相對簡單的算法來生成區塊。用戶將交易發送到一個通常稱爲“mempool”(或“txpool”)的公共p2p網路。礦工監聽mempool,接受有效且支付費用的交易。他們會包含能容納的交易,如果空間不夠,他們會優先處理手續費最高的交易。
這是一個非常簡單的系統,有利於去中心化:作爲礦工,你可以只運行默認軟件,就能從一個區塊中獲得與專業礦場相同的手續費收入。然而,大約在2020年,人們開始利用所謂的礦工可提取價值(MEV):只有通過執行復雜策略才能獲得的收入,這些策略對各種DeFi協議中的活動有深入了解。
例如,考慮像Uniswap這樣的去中心化交易所。假設在時間T,中心化交易所和Uniswap上的USD/ETH匯率都是3000美元。在時間T+11,中心化交易所的USD/ETH匯率上升到3005美元,但以太坊尚未生成下一個區塊。在時間T+12,以太坊生成了一個區塊。創建這個區塊的人可以將他們的第一個交易設爲一系列Uniswap買單,以3000到3004美元的價格買入所有可用的ETH。這是額外的收入,被稱爲MEV。除了去中心化交易所,其他應用也有類似的問題。2019年發布的《Flash Boys 2.0》論文詳細探討了這一問題。
《Flash Boys 2.0》論文中的一張圖顯示了使用上述方法可捕獲的收入量。
問題在於,這打破了爲什麼挖礦(或2022年後,區塊提議)可以是“公平”的說法:現在,那些有能力優化這些提取算法的大型參與者可以從每個區塊中獲得更高的回報。從那時起,有兩種策略之間的辯論,我稱之爲MEV最小化和MEV隔離。MEV最小化有兩種形式:(i) 積極開發無MEV的替代方案,如Cowswap,(ii) 構建協議內技術,如加密mempools,減少區塊生產者可用的信息,從而減少他們可以捕獲的收入。特別是,加密mempools可以防止諸如三明治攻擊之類的策略,這些策略通過在用戶交易之前和之後放置交易來進行經濟剝削(“搶先交易”)。
MEV隔離的工作原理是接受MEV,但試圖通過將市場分爲兩類參與者來限制其對權益集中化的影響:驗證者負責證明和提議區塊,但選擇區塊內容的任務通過拍賣協議外包給專門的構建者。現在,單個權益持有者不再需要擔心自己優化DeFi套利;他們只需加入拍賣協議,並接受最高出價。這被稱爲提議者/構建者分離(PBS)。這種方法在其他行業中有先例:餐館能夠保持如此分散的一個主要原因是它們通常依賴於相對集中的供應商來進行各種具有規模經濟的運營。到目前爲止,PBS在確保小型驗證者和大型驗證者在MEV方面公平競爭方面已經取得了相當成功。然而,這又帶來了另一個問題:選擇哪些交易被包含的任務變得更加集中。
我對這一問題的看法一直是,MEV最小化是好的,我們應該追求它(我個人經常使用Cowswap!)——盡管加密mempools有很多挑戰,但MEV最小化可能還不夠;MEV不會降到零,甚至接近零。因此,我們也需要某種形式的MEV隔離。這創造了一個有趣的任務:我們如何使“MEV隔離箱”盡可能小?我們如何賦予構建者最少的權力,同時仍讓他們能夠承擔優化套利和其他形式MEV收集的角色?
如果構建者有權力完全排除區塊中的交易,則可能會出現非常容易的攻擊。假設你在一個DeFi協議中有一個以快速下跌的資產爲擔保的抵押債務頭寸(CDP)。你想要增加抵押品或退出CDP。惡意構建者可能會嘗試串通拒絕包含你的交易,延遲到價格下降到足以強制清算你的CDP。如果發生這種情況,你將不得不支付大筆罰金,而構建者將獲得其中的大部分。所以我們如何防止構建者排除交易並進行這些類型的攻擊?
這就是包含列表的作用。
來源: 這個 ethresearch.ch 帖子。
包含列表允許區塊提議者(即權益持有者)選擇必須包含在區塊中的交易。構建者仍然可以重新排序交易或插入他們自己的交易,但他們必須包含提議者的交易。最終,包含列表被修改爲約束下一個區塊而不是當前區塊。無論哪種情況,這都剝奪了構建者將交易完全排除在區塊之外的能力。
以上是復雜背景的深入探討。但MEV是一個復雜的問題,即使上述描述也遺漏了許多重要的細微差別。正如老話所說,“你可能沒有尋找MEV,但MEV在尋找你。”以太坊研究人員已經在“最小化隔離箱”這一目標上達成了一致,盡可能減少構建者可能造成的傷害(例如,通過排除或延遲交易來攻擊特定應用)。
話雖如此,我認爲我們可以做得更好。歷史上,包含列表通常被視爲“旁邊的特例功能”:通常你不會考慮它們,但如果惡意構建者開始做出瘋狂的事情,它們給你提供了一條“第二路徑”。這種態度反映在當前的設計決策中:在當前的EIP中,包含列表的gas限制約爲210萬。但我們可以在思維方式上進行哲學性的轉變:把包含列表視爲區塊,而把構建者的角色視爲一種附帶功能,增加一些交易來收集MEV。如果構建者的gas限制是210萬呢。
我認爲這種方向的想法——真正將隔離箱盡可能縮小——非常有趣,我贊成朝這個方向發展。這是從“2021年哲學”到新的哲學的轉變:在2021年的哲學中,我們對現在有構建者的想法更加熱情,我們可以“超載”他們的功能,讓他們以更復雜的方式爲用戶服務,例如通過支持ERC-4337費用市場。在這種新哲學中,ERC-4337的交易驗證部分將必須被納入協議中。幸運的是,ERC-4337團隊@yoav/AA-roadmap-May-2024#Native-AA---a-modular-roadmap">已經越來越接受這個方向。
總結:MEV的思考已經回到賦權區塊生產者的方向,包括賦予區塊生產者直接確保用戶交易包含的權力。帳戶抽象提案也已經在減少對中心化中繼器,甚至捆綁器的依賴。然而,有充分的理由認爲我們還不夠,我認爲推動開發過程進一步朝這個方向發展的壓力是非常受歡迎的。
如今,單獨質押者在以太坊質押總量中佔比相對較小,大多數質押是由各種提供者完成的——一些是中心化運營商,另一些是去中心化自治組織(DAO),如Lido和RocketPool。
我自己做了一些研究——通過各種投票[1] [2]、調查、面對面的對話,問了“爲什麼是你——特別是你——今天不進行單獨質押?”對我來說,一個強健的單獨質押生態系統是以太坊質押的最理想結果之一,而以太坊最棒的事情之一就是我們實際上在努力支持一個強健的單獨質押生態系統,而不是僅僅屈服於委托質押。然而,我們離這個目標還很遠。在我的投票和調查中,有一些一致的趨勢:
根據Farcaster的投票,人們不進行單獨質押的主要原因有兩個。
解決這些擔憂的關鍵問題有兩個:
許多正在進行的研究和開發項目正是在解決這些問題:
然而,我們仍然可以做得更多。從理論上講,我們可以讓驗證者更快地撤回質押:即使每次確定性(即每個紀元)時驗證者集合發生了幾個百分點的變化,Casper FFG仍然是安全的。因此,如果我們付出努力,我們可以進一步縮短撤回期限。如果我們想大大降低最低存款額,我們可以做出艱難的決定,以其他方向進行權衡,例如,如果我們將最終確定性時間增加4倍,那麼就可以將@VitalikButerin/parametrizing-casper-the-decentralization-finality-time-overhead-tradeoff-3f2011672735">最低存款額減少4倍。單插槽確定性後續會通過完全擺脫“每個質押者在每個紀元中都參與”模型來清理這一點。
在這整個問題中的另一個重要部分是質押的經濟學。一個關鍵問題是:我們想要質押成爲一個相對小衆的活動,還是我們想要每個人或幾乎每個人都將他們所有的ETH進行質押?如果每個人都在質押,那麼我們希望每個人承擔什麼責任呢?如果人們最終只是因爲懶惰而將這一責任委托出去,那可能最終導致中心化。在這裏涉及了重要而深刻的哲學問題。錯誤的答案可能會導致以太坊走向中心化和“在傳統金融系統中增加額外步驟”的道路;正確的答案可以創建一個成功生態系統的光輝典範,其中包括廣泛和多樣化的單獨質押者和高度分散的質押池。這些問題涉及到核心的以太坊經濟學和價值觀,因此我們需要更多的多樣化參與。
以太坊去中心化中的許多關鍵問題最終都歸結爲一個問題,這個問題已經定義了區塊鏈政治達十年之久:我們希望使運行節點變得多麼容易,以及如何做到這一點?
如今,運行一個節點是困難的。大多數人都不這樣做。在我用來撰寫這篇帖子的筆記本電腦上,我有一個reth節點,它佔用了2.1 TB的空間——這已經是英勇的軟件工程和優化的結果。我需要去購買一個額外的4 TB硬盤來放入我的筆記本電腦,以存儲這個節點。我們都希望運行節點變得更容易。在我理想的世界裏,人們將能夠在他們的手機上運行節點。
正如我之前所寫的,EIP-4444和Verkle樹是讓我們更接近這個理想的兩個關鍵技術。如果兩者都實施了,節點的硬件要求可能最終會降至不到一百GB,甚至在完全消除歷史存儲責任的情況下可能接近零(也許僅適用於非質押節點)。Type 1 ZK-EVM將消除自行運行EVM計算的需要,因爲您可以簡單地驗證執行是否正確的證明。在我理想的世界裏,我們將所有這些技術堆疊在一起,甚至以太坊瀏覽器擴展錢包(例如Metamask,Rabby)都將內置一個節點來驗證這些證明,進行數據可用性抽樣,並確信鏈是正確的。
上述描述的願景通常被稱爲“The Verge”。
這一切都是已知的,也被理解,即使是那些對以太坊節點大小提出擔憂的人也是如此。然而,有一個重要的擔憂:如果我們轉移了維護狀態和提供證明的責任,那麼這不是一個中心化的向量嗎?即使它們不能通過提供無效數據來欺騙,這是否仍然違背了以太坊的原則,過於依賴它們呢?
這個擔憂的一個非常近期的版本是很多人對EIP-4444感到不安:如果普通的以太坊節點不再需要存儲舊的歷史記錄,那麼誰需要呢?一個常見的回答是:肯定有足夠多的大型參與者(例如區塊瀏覽器、交易所、第二層網路),他們有動力來保存這些數據,而且與Wayback Machine存儲的100 PB相比,以太坊鏈是微不足道的。因此,認爲任何歷史都會真的丟失是荒謬的。
然而,這種論點依賴於對少數大型參與者的依賴。在我對信任模型的分類中,這是一個1對N的假設,但N相當小。這有其尾部風險。我們可以做的另一件事是將舊的歷史存儲在一個點對點網路中,每個節點只存儲數據的一小部分。這種網路仍然會進行足夠的復制以確保穩健性:每個數據片段將有數千份拷貝,而且在未來,我們可以使用糾刪碼(現實中,通過將歷史記錄放入EIP-4844式的數據塊中,這些塊已經內置了糾刪碼)來進一步提高穩健性。
數據塊內部和數據塊之間都有糾刪碼。對於以太坊所有歷史記錄的超穩健存儲來說,最簡單的方法可能是將信標塊和執行塊放入數據塊中。圖片來源:codex.storage
長期以來,這項工作一直在後臺進行;Portal Network存在,但實際上它並沒有得到與其在以太坊未來重要性相稱的關注。幸運的是,現在有了強烈的興趣和動力,向着將更多資源投入到一個以分布式存儲和歷史記錄的可訪問性爲重點的最小化版本的Portal。我們應該利用這一勢頭,並且應該共同努力盡快實施EIP-4444,配合一個健壯的去中心化的點對點網路,用於存儲和檢索舊的歷史記錄。
對於狀態和ZK-EVMs,這種分布式方法更加困難。要構建一個高效的區塊,你必須擁有完整的狀態。在這種情況下,我個人傾向於採取務實的方法:我們定義並堅持一定水平的硬件要求,以擁有一個“全功能節點”,這個要求要高於(理想情況下不斷減少的)簡單驗證鏈的成本,但仍然低到可以承受的程度。我們依賴於一個1對N的假設,確保N相當大。例如,這可以是一臺高端消費級筆記本電腦。
ZK-EVM證明可能是最棘手的部分,實時ZK-EVM證明可能需要比存檔節點更強大的硬件,即使有像Binius這樣的先進技術,以及多維度gas的最壞情況邊界。我們可以努力構建一個分布式證明網路,其中每個節點承擔證明一個區塊執行的責任的一部分,然後區塊生產者只需要在最後匯總這百分之百的證明。證明聚合樹可能進一步提高效率。但如果這樣做效果不佳,另一個妥協方案就是允許證明的硬件要求提高,但確保“全功能節點”可以直接驗證以太坊區塊(無需證明),以便足夠快速地有效參與網路。
我認爲事實上,2021年的以太坊思維確實變得過於習慣於將責任轉移給少數大型參與者,只要存在某種市場機制或零知識證明系統來迫使這些中心化參與者誠實行事。這樣的系統在一般情況下通常運作良好,但在最壞情況下可能會產生災難性後果。
我們不會這樣做。
與此同時,我認爲強調當前以太坊協議提案已經明顯遠離了那種模式,並且更加認真地對待了對一個真正去中心化網路的需求是很重要的。關於無狀態節點、MEV緩解、單槽確定性等概念的想法已經在這個方向上有了很大進展。一年前,通過利用中心化節點作爲半中心化節點來進行數據可用性抽樣的想法曾經被認真考慮過。今年,我們已經超越了需要這樣做的必要性,PeerDAS取得了令人驚訝的強大進展。
但是,我們可以在這個方向上做很多事情,包括我上面提到的三個方面,以及許多其他重要的方面。Helios在爲以太坊提供了一個“實際的輕節點”方面取得了巨大進展。現在,我們需要將其默認包含在以太坊錢包中,並讓RPC提供者在結果中提供證明,以便驗證,還需要將輕節點技術擴展到第二層協議。如果以太坊通過一個以Rollup爲中心的路線圖進行擴展,第二層需要獲得與第一層相同的安全性和去中心化保證。在以Rollup爲中心的世界中,有許多其他事情我們應該更加認真地對待;去中心化和高效的跨第二層橋梁是其中的一個例子。許多Dapp通過中心化協議獲取其日志,因爲以太坊的本地日志掃描已經變得太慢。我們可以通過一個專門的去中心化子協議來改進這一點;這是我提出的一個如何實現的方案。
有無數個區塊鏈項目都在瞄準“我們可以非常快速,我們會考慮去中心化問題”的這個利基。我不認爲以太坊應該成爲這些項目之一。以太坊L1可以而且確實應該成爲第二層項目的強大基礎,這些項目採用超級規模方法,將以太坊作爲去中心化和安全的支柱。即使採取以第二層爲中心的方法,第一層本身也需要具有足夠的可擴展性來處理大量的操作。但是,我們應該對使以太坊獨特的屬性保持深刻的尊重,並繼續努力維護和改進這些屬性,以太坊擴展。