作者:Taiko Labs;翻譯:金色財經0xjs
太長不讀版:
EIP-4844有兩個核心變化:
● 增加了一個以太坊區塊中可發布的數據量,從而提高了Rollup的吞吐量。
● 引入了一種新的交易類型,稱為「blob transaction」(資料區塊交易),並設定了一個單獨的費用市場,以確保資料交易不會與常規交易競爭。
這兩個變化將降低Rollup的資料發布成本。然而,今天很難確定成本降低會有多大,因為這將取決於網路擁堵的市場情況。
本文簡要介紹EIP-4844以及它將如何影響Rollup。 Danksharding的歷史、數學細節和機制選擇相關的詳細信息,請參考Dom的文章或Proto-Danksharding FAQ。
內容
前言:快速回顧
數據可用性(DA)
Proto-Danksharding:EIP-4844
前言:快速回顧
擴展以太坊的想法是在不增加構成網路的節點負擔的情況下獲得更多的區塊空間。經過多次辯論,選擇的解決方案是以太坊(Layer 1)將擴展數據,而Rollup(Layer 2)將可擴展的數據轉化為可擴展的執行。
在以Rollup為中心的路線圖之前,以太坊探索了分片作為擴展解決方案。分片是一種水平擴展方法,其中每個分片都是Beacon Chain上並行運行的迷你區塊鏈。然而,當Rollup出現時,人們認為它們比分片更有效率和靈活,可以用於擴展以太坊。純分片被拋棄了。
取而代之的是,Dankrad Feist提出了danksharding,它允許驗證者執行極少量的工作來檢查資料是否可用,使用資料可用性採樣(Data Availability Sampling,DAS)(無需像今天一樣下載所有資料)。它解決了Rollup排序器潛在地保留資料的問題:就像節點不會跟隨包含無效交易的分叉一樣,節點也不會跟隨資料不可用的分叉,即使有99%的驗證者惡意地試圖保留數據。
由於danksharding仍然相當複雜,proto-danksharding提出了一個中間步驟,引入了Rollup排序器將使用的blob-carrying交易類型,但暫時沒有資料可用性檢查(DAS)。 Proto-danksharding被整合到EIP-4844中,預計將在2023年第四季生效。
數據可用性(DA)
Rollup將每個區塊的數據發佈到L1。這些數據應該對每個人都是可用的。
資料可用性意味著沒有網路參與者,包括合謀的絕大多數全節點,有能力阻止資料的可用性。
當資料可用時,任何人都可以從發布的資料中推導出鏈狀態,並檢查推導出的狀態是否與Rollup提供的狀態相符。
DA問題是以太坊的主要擴展瓶頸。現在,它是透過CALLDATA來完成的,這相當昂貴。一些估算是,將數據發佈到L1大致構成Rollup營運成本的80%左右。
Proto-Danksharding:EIP-4844
資料塊和攜帶資料塊的交易
EIP-4844將CALLDATA替換為一個新的“Blob層”,以提高Rollup的吞吐量並降低發布資料的成本。有了EIP-4844,資料以“資料區塊”形式發布,同時引入了一種新的交易類型,稱為“攜帶資料區塊的交易”,Rollup排序器將使用該交易類型。
使用這種新的交易類型,blob資料儲存在Beacon Chain上。也就是說,EVM無法直接存取此數據。 L2節點可以在2週內從Beacon客戶端檢索資料(如果需要,可以在智慧合約中使用它),然後從該資料派生出L2鏈。要檢索數據,需要向以太坊節點發送請求。然後,他們在交易中使用該資料(使用CALLDATA),並驗證該資料是否與資料區塊中的資料相符(資料區塊雜湊直接在EVM中可用)。
關於EIP-4844,我們應該考慮的新事物是什麼?
新的預編譯:點評估預編譯(point evaluation pre-compile)
對於ZK證明,將增加一個新的預編譯:點評估預編譯。它使用EVM中提供的數據承諾(作為「真實來源」)、數據塊上的一個點、其預期值和證明。操作碼會檢查此資料區塊點是否與預期值相符。也就是說,已承諾的區塊數據等於Rollup正在導入的數據。
新類型的Gas:資料Gas(data gas)
將引入一種新的Gas類型來定價資料塊資料:資料Gas。它的工作原理與EIP-1559機制類似,但有一些變化:
●basefee是從excess_data_gas衍生出來的,類似EIP-1559機制。
●max_fee_per_blob_gas 是發送者願意為資料區塊支付多少費用的競標價。
● blob_version_hashes是資料區塊的雜湊清單(因為單一交易可以帶有多個資料區塊)。
由於引入了新的交易類型和單獨的費用市場,資料區塊交易不會與常規L1交易競爭。也就是說,資料塊交易的定價不依賴常規交易的L1網路費用。
節點要求
節點需要為請求的資料塊資料提供4,096個epoch大約為18天的服務。在此期限之後,節點可以從硬碟上刪除資料並停止提供服務。
讓資料塊過期將限制額外的儲存需求。今天,每個區塊提供約1KB的資料儲存空間。在EIP-4844之後,將會提供約384KB的儲存空間,目標是每個區塊3個資料塊。如果它在新的資料區塊到來時刪除舊的資料區塊(根據max_amount_of_blobs/block * num_blocks_in_4096_epochs計算),這將導致節點額外需要約50GB的資料儲存空間。
一旦資料區塊過期,資料仍然可以透過一些超出協議的方式檢索(例如TheGraph、區塊瀏覽器、節點提供者等)。
其他細節
與Merkle Proofs相比,使用KZG承諾更具簡潔性和廉價性,因為它們比重新計算雜湊承諾更便宜。
EIP-4844需要進行以太坊共識升級。然而,對於進一步的danksharding升級,只需要Beacon Chain的升級。