Vitalik近期演講頻繁提到的「無狀態」是什么?

2023-09-18 16:09:20

原文編譯 :GaryMa 吳說區塊鏈

Vitalik 在近期的韓國區塊鏈周、新加坡演講甚至是以太坊執行層核心开發者會議 (ACDE) 上,都共同提及過一個話題:狀態(State),而隨之左右的則是與其相關的各種解決方案概念,如無狀態、狀態過期(State Expiry)、歷史數據過期(History Expiry,EIP-4444)、Verkle 樹、甚至是地址空間的擴展\壓縮(Address Space Expand\Compression)。當然,這其實也不是什么新的路线圖調整規劃,在 Vitalik 去年 11 月發布的以太坊的最新路线圖中,這些主要歸屬於 The Verge 和 The Purge 關鍵路线。

本文便結合這兩大關鍵路线以及一些新的思路挑战,一起回顧一下 Vitalik 心中的狀態解決路线。

狀態(State)

以太坊中的狀態指的是一個包括所有外部擁有账戶(EOAs)、它們的余額、智能合約部署以及相關存儲的綜合账本。這個狀態不是靜態的;它會隨着新用戶的增加和新智能合約的部署而不斷擴展。

目前,全節點必須存儲這個不斷增長的數據集,以正確驗證區塊並確保狀態轉換正確,使驗證過程本質上是有狀態的。而這種不斷增長的存儲要求因此提高了運行全節點的硬件要求,將導致驗證者越來越中心化。

根據 etherscan.io/ 數據,當前運行一個快速同步全節點至少需要 1200 Gb(以 Geth 客戶端為例),這還是在已經進行了狀態修剪,刪除了較早之前的狀態數據,只保留最近的狀態的前提下。如果是存檔節點,即全節點會保留所有歷史狀態,包括每個區塊的狀態,那么需要的容量需要約 15, 400 Gb,並且未來還是一直增長,即社區常說的 “狀態爆炸”。

這也是 Vitalik 在韓國區塊鏈周上所強調的:節點的中心化是以太坊網絡面臨的最大問題之一,應該通過使節點的運行更便宜、更容易來解決。

為了應對這一系列挑战,以太坊社區一直在努力尋找改進和優化的方法,即我們开頭所例舉的各種解決方案概念。

狀態解決方案

無狀態(Statelessness)

無狀態(Stateless)核心概念是將狀態數據外部化,不再需要每個節點存儲完整的狀態。在這種模式下,節點只需維護區塊頭和相關交易信息,通過狀態證明(State Proofs)來驗證和重建狀態。

無狀態的主要作用和意義在於減輕節點的存儲負擔,提高網絡可擴展性,使更多節點能夠輕松參與驗證,同時仍然保持了以太坊的去中心化性質。

Verkle 樹

目前,以太坊依賴 Merkle-Patricia 樹來哈希和壓縮其狀態數據。然而,這種樹結構中 Merkle 證明的大小可能會變得太大,使它們不太適用於無狀態模型所需的見證。

為了解決這個問題,以太坊計劃過渡到 Verkle 樹,這是一種更高效的數據結構。Merkle-Patricia 樹和 Verkle 樹都共享一個重要的能力,即生成見證——密碼學證明,允許任何人輕松確認狀態根中特定信息的存在與公开可用。

Verkle 樹的優勢在於它們在生成較小的證明大小方面效率更高。

歷史數據過期(History Expiry,EIP-4444)

EIP-4444 旨在實施歷史數據過期,這是一項升級,要求節點停止在點對點網絡上托管超過一年的歷史區塊。刪除歷史數據顯著減輕了節點運營者的磁盤空間需求。同時,它還通過消除適應歷史區塊不同版本的代碼的需要,簡化了客戶端軟件。此外,EIP-4444 與 PDS(Proto-danksharding)的結合確保了定期數據修剪;EIP-4444 每年修剪一次,而 PDS 每月修剪一次數據區塊。盡管這有助於減少節點的數據存儲需求,但也引發了有關歷史數據的保存和恢復的擔憂。

狀態過期(State Expiry)

無狀態性消除了驗證者在驗證區塊時需要維護完整狀態的必要性。但狀態並不會消失;它的持續增長仍然是網絡的長期挑战。

為了解決這個根本問題,社區便提出了狀態過期(State Expiry)方案。

狀態過期將自動修剪那些保持不變的狀態部分,比如一年,將它們移到一個單獨的樹結構中,並從主要的以太坊協議中刪除它們。

值得一提的是,狀態過期只有在遷移到 Verkle 樹後才變得可行。另外,Vitalik 在韓國區塊鏈周 KBW 2023 上表示:如果有無狀態和 PBS,狀態過期可以是低優先級的。

因為如果屆時區塊提議者構建者分離(Proposer-Builder Separation、PBS)實現後,在無狀態下,盡管區塊構建者仍需要訪問狀態來創建區塊,但屆時的區塊構建者已經被預期能夠有效處理狀態的增長,因為這領域允許一定程度的中心化,構建者們的節點性能自然能夠滿足需求。

盡管目前協議級別 PBS 尚未納入以太坊主網,但是我們大致通過了解 Mev- Boost PBS 當前的市場分布,也能大致了解未來主網的一個趨勢走向,mevboost.pics 的數據統計如下:

另外,狀態過期(State Expiry)的實現涉及以太坊地址格式的改變,目前有兩種方案:地址空間擴展(address space extension)vs 地址空間壓縮(address space compression)。前者是將地址長度增加到 32 字節(當前地址格式為 20 字節),但需要復雜的邏輯來向後兼容並且現有的合約也必須更新;後者雖然保留 20 字節格式,不過將前 6 字節用於前綴以及地址周期的標識,雖然這樣大大減少了兼容難題,但也隨之引來另一個難題,地址長度只剩下 14 字節便不再具有抗碰撞能力,從而引入一些地址創建的潛在安全問題,這也是目前社區所面臨的重大挑战。

總結

現在,我們大致可以根據上述技術解決方案的實現難題以及緩急,排除前後優先級(2 \ 3 \ 4 或許可以同等):

1. Verkle 樹

2. PBS

3. 無狀態

4. 歷史數據過期(EIP-4444)

5. 以太坊地址格式的改變(壓縮 / 擴展)

6. 狀態過期

綜上,可降低節點運行門檻,保持節點的去中心化以及潛在的狀態爆炸問題,減輕狀態增長以優化網絡通信負載。

當然,目前依舊是任重道遠。

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

推薦文章

【​動區塊聚 #151】加密市場選幣指南:如何在加密市場中找到潛力代幣?

本 週四(10/24)動區動趨 BlockTempo 的線下社群活動品牌動區塊聚 BlockMee...

chalex
5 12小時前

幣圈史上最大收購案!支付巨頭Stripe豪砸11億鎂買下穩定幣平臺Bridge

支 付巨頭 Stripe 自 2018 年停止支持比特幣支付後,便逐漸淡出加密貨幣市場。經過六年時...

Ting
5 12小時前

Gate Ventures研究洞察:Parallel Execution突破瓶頸,以太坊EVM的性能挑战與並行執行之路

###TAG_0### 以太坊的 EVM 由於其單线程架構,面臨着嚴重的性能問題,尤其是在處理高並...

星球日報
5 12小時前

各鏈爭相「pump.fun」,Memecoin要見頂了?

我想給「pump.fun」這個產品的名字打上一個雙引號,因為它的意義已經超出了一個「發幣產品」本身...

星球日報
5 12小時前

致Crypto創始人的20個經驗教訓:做無法規模化的事情

###TAG_0###原文作者:Imran Khan 從小問題开始 不要一开始就瞄准龐大的市場,而...

星球日報
7 12小時前

拼寫錯誤引質疑,AI Meme是盤怎樣的局?(附熱門AI Meme盤點)

###TAG_0### @OdailyChina @web3_golem 昨日 AI Meme 板...

星球日報
6 12小時前