坎昆升級簡介
Cancun-Deneb(Dencun,以下簡稱為坎昆升級)是以太坊區塊鏈下一個重要的升級,將提高以太坊網絡的可擴展性、安全性和可用性。
Cancun是基於上海昇級基礎之上的以太坊執行層的額外升級,第一步已經於今年4月12日的上海昇級中完成,而Deneb則代表了以太坊共識層的升級。該升級包括備受期待的EIP-4844,又被稱為Proto-DankSharding,此功能將為全面的DankSharding的實施奠定重要的基礎。
DankSharding
信標鏈的推出和合併的實施是以太坊整個框架圖升級的前兩部分,而DankSharding是第三部分,也是重頭戲。這個新設計的結構,將完全取代核心團隊最初提出的引入64條分片鏈的想法。
DankSharding並非去允許主鏈進行更多交易,而是專注於增加rollup的數據可用性。 Rollup是將區塊鏈交易捆綁在一起並對其進行處理的二層技術。任何rollup操作員都可以處理一批交易,並向主鏈提交結果和證明。使用optimistic或ZK等特定的rollup技術,網絡中的其他驗證者或智能合約可以對結果進行審查。
目前主流的以太坊二層擴展協議包括Optimism,Arbitrum,Metis, zkSync Era和Scroll等。為了幫助以太坊網絡開啟長期過渡到完整DankSharding的進程,EIP-4844今年將引入許多關鍵執行層組件。
Proto-DankSharding
EIP-4844又被稱為Proto-DankSharding,是以太坊開發者Protolambda和Dankrad Feist提出的以太坊網絡臨時升級。在EIP-4844 問答頁面上,以太坊聯合創始人Vitalik Buterin將Proto-Danksharding描述為“stopgap”解決方案,它將在完整的分片實施之前大大降低rollup的gas費。
EIP-4844 是圍繞著Rollup 展開的擴容方案,也是以太坊擴容之路的第一步。在未升級之前,rollup數據被永久儲存於以太坊之上,儲存費用昂貴,用戶為rollup支付的交易成本90%是由於該儲存成本導致。
為此,EIP-4844 引入了一種全新的交易類型——Blob Transaction,數據將遷移到“Blob”之被臨時儲存,儲存時間大概為1個月,過後數據將被刪除。要想將長期數據儲存則由其他服務商根據實際需要進行儲存。
Shard blob交易
剛剛說到,EIP-4844引入了一種被稱為“blob攜帶交易”的交易類型。 Blob(二進制大型對象)是“binary large objects”的縮寫,代表125 KB有效載荷數據。要創建一個blob攜帶交易,rollup需要將其數據提交給blob並將其附加到區塊上。
一個blob攜帶交易最多可以包含兩個blob。此外,為了鼓勵此類交易,升級將實施多維的EIP-1559費用市場。此功能將基於供需來為blob攜帶交易引入可變的gas費用。
Blob攜帶交易的主要好處是成本效益。當前,rollup通過CallData永久將交易數據存儲在以太坊的區塊鏈上。但是,blob數據比CallData便宜得多,因為它不會永遠保存在執行層上(以太坊虛擬機)。取而代之的是,信標節點將其存儲在共識層中,並且一個月或者一年後,blob會被刪除。這個過程類似於清除筆記本電腦或設備的緩存數據。
Blob雖然由EIP-4844引入,但將與最終分片中使用的格式完全兼容。在EIP-4844中,每次rollup交易最多包含2個blob,每個區塊包含8-16個blob,約為1MB至2MB。在完整的分片場景中,可以將blob進一步擴展到16MB至32MB。
也就是說,當Blob 通過Proto-DankSharding成為以太坊協議的一部分之後,將在以太坊區塊中添加更多的Blob,此時以太坊的吞吐量將又一次大幅擴展,同時交易成本也會下降。
在交易過程中,名為KZG的多項式方案(以其創作者Kate,Zaverucha和Goldberg的名字命名)將驗證發佈在blob中的交易數據。像其他零知識驗證系統一樣,KZG可以在無需披露blob中的全部內容的前提下進行驗證。
坎昆升級的核心:EIP-4844
根據6月份的以太坊執行層核心開發者會議,坎昆升級包含了5個EIP,旨在增加更多的數據存儲和降低費用。升級的核心內容為EIP-4844,該EIP旨在通過以太坊節點實現鏈下數據的臨時存儲和檢索,以滿足區塊鏈應用程序的數據和存儲需求。
Devnet測試網不斷完善
自2022年10月,以太坊開發人員就為EIP-4844啟動了多客戶端測試網絡,也稱為devnet。自今年4月12日“上海昇級”成功激活以來,以太坊開發者第一時間將注意力轉移到“坎昆(Cancun)升級”的籌備工作上。
確切地說,Cancun是以太坊執行層(EL)下一次升級的名稱,而Deneb是對應以太坊共識層(CL)的升級名稱。在ACDE電話會議期間,開發人員討論了Cancun/Deneb升級的最終範圍,該升級將以EIP-4844為核心,即blob交易類型的實施,Deneb的準備工作,從推出Devnet 5開始。
對Devnet 5進行了一些顯著的更改,例如執行層(EL)禁止零blob交易,將blob交易類型切換為0x03以及解耦blob和區塊。在引擎API更新方面,有計劃將相應的證明添加到尚未合併的getBlobsBundleV1上,並將“getPayloadV3”和“getBlobsBundleV1”調用合併為一個。信標鏈API方面,添加blob簽名端為可選。
今年5月底,以太坊社區開發人員terence.eth分享了第22次EIP-4844實施者電話會議內容,會議主要涵蓋三大主題:
1.Deneb引擎API版本控制;
2.將“data_gas_used”添加至執行標頭;
3.Devnet 6範圍和測試更新。
其中,會議已確定在EIP-4844更新中將“data_gas_used”添加至執行標頭,因為之前使用的EIP1559中,常規基本費用是使用當前標頭計算的。在EIP-4844中,數據gas計算使用父標頭而不是當前標頭,excess_data_gas是下一個區塊的定價,而base_fee是當前區塊的定價。
此外,會議決定為讓Devnet 6涵蓋“data_gas_used”更新,在“data_gas_used”轉移至Devnet 6之前,使用另一個從屬於EIP4844的測試網進行測試。
6月底,以太坊基金會DevOps團隊的開發者表示,所有EL和CL客戶端團隊都通過了Devnet 7的相關Hive測試,計劃最早在6月30日或7月3日推出Devnet 7。 Devnet 7是EIP-4844的專用短期測試網絡,不會測試其他代碼更改。
Devnet 7的啟動目標為:blob 限制從2個上調到3個,最大blob 限制則從4個上升至6個。增加blob容量的目標是由以太坊基金會研究員Dankrad Feist,在進行數據實驗測試網路處理大型區塊的能力後所提出的。
目前關於Cancun升級進度,開發者已經同意更新EIP-4844的預編譯地址、EVM 指令複製內存區域(EIP-5656)的測試用例已經加入測試框架、負責共識層和執行層間的溝通的引擎API會面臨一些變動,Devnet 6經過查漏補缺目前已經穩定並且同代碼的Devnet 7 將上線並專注於EIP-4844的相關測試。
坎昆升級預計上線時間
今年5月26日,以太坊基金會研究員Alex Stokes 曾表示坎昆激活的合理目標日期是2023年10 月。 Geth (EL) 開發人員Lightclient肯定了這一說法,他認為基於其當前範圍的升級至少還要5-6個月的時間。
6月9日,以太坊核心開發者Tim Beiko 在其社交平台發文總結最新一次的以太坊執行層核心開發者會議(ACDE)討論內容。會議最終確定了坎昆升級包含5個EIP,旨在增加更多的數據存儲和降低費用。
其中核心內容為EIP-4844,該EIP旨在通過以太坊節點實現鏈下數據的臨時存儲和檢索,以滿足區塊鏈應用程序的數據和存儲需求。
其他入選的EIP 包括EIP-1153(降低鏈上存儲數據的費用,從而改善區塊空間)、EIP-4788(改進跨鏈橋和權益池的設計)、EIP-5656(添加與以太坊虛擬機相關的次要代碼更改)以及EIP-6780(去除可能終止智能合約的代碼)。此次會議並未對坎昆升級時間做出準確預測,但預計其將於2023年底前進行。
坎昆升級的目標和影響
坎昆升級的總體目標是繼續為完整數據分片網絡做準備,同時在過渡期對rollup進行擴展。引入blob攜帶交易將增加rollup的數據可用性,並大大降低rollup的成本。 EIP 4844還將包括大多數執行層邏輯和完整分片的基礎工作。此步驟將大大減少後續升級所需的實施工作。
坎昆升級激活後,用戶在使用以太坊生態系統的原生加密貨幣、應用和基於ERC的token時將會體驗到速度更快,更便宜的付款。坎昆升級是以太坊的一次重要升級,使得以太坊L1分片打開新的篇章,降低L1和L2之間的傳輸成本,實現更低的gas費和更高的TPS,利好L2等相關生態,從而使“以太坊+L2”架構的競爭力進一步加強。
Ebunker,以太坊長期主義者,第一時間關注以太坊技術發展、提案升級和社區變化,分享關於Staking,L2,DeFi等以太坊重點賽道研究和觀點。
目前Ebunker包括Ebunker Pool(資金非託管以太坊Staking礦池)和Ebunker Venture(以太坊最大化風投)等業務。
Ebunker官網:https://www.ebunker.io