ETH 提款來了!Shapella 以太坊主網升級將在 epoch 194048 啟動,預計為台北時間 2023 年 4 月 13 日 06:27:35,有質押 ETH 的用戶或節點運行者可以閱讀本文掌握更多技術細節。
(前情提要:以太坊公告上海升級》4/13早上開放「信標鏈提款」!ETH質押APR再破5% )
(背景補充:新手教學》以太坊上海升級是什麼?ETH 質押驗證者、提款原理介紹 )
在順利完成了 Goerli 測試網 Shapella 升級之後,客戶端團隊計劃在主網激活 Shapella 升級。在第 157 次 All Core Devs 執行層會議期間,開發者們很快就 4 月 12 日這個時間達成共識。
此次升級緊隨 The Merge,使得驗證者可以把他們的押金從信標鏈提取回執行層。它還給執行層和共識層引入新功能,請看下文。
升級規範
Shapella 升級結合了對執行層(上海升級)和共識層(Capella)的修改。用於執行層和共識層通信的 Engine API 也在 Shapella 升級裡有修改。
上海升級
在上海升級裡納入的執行層的修改可以在這裡找到。作為參考,內容如下:
- EIP-3651: Warm COINBASE(降低訪問 COINBASE 地址的 gas 開銷)
- EIP-3855: PUSH0 instruction(新增操作碼 PUSH0)
- EIP-3860: Limit and meter initcode(對 initcode 的大小設限並引入 gas 計量)
- EIP-4895: Beacon chain push withdrawals as operations(信標鏈推式提款作為係統操作)
- EIP-6049: Deprecate SELFDESTRUCT(停用 SELFDESTRUCT)
請注意,EIP-6049 只是一個操作碼棄用警告。客戶端團隊預計 SELFDESTRUCT 語義將在未來的網路升級中進行修改,但該操作碼的行為在上海升級中保持不變。
此外,上海升級的全套修改現在可以在以太坊執行層規範(EELS)中查看,它是用於執行層的新 Python 參考實現。
Capella 升級
Capella 升級對共識層的修改詳情在 capella 目錄的 v1.3.0-rc.3 規範裡。README 清單中列出了完整的更改集。從高層次來講,這次升級引入了:
- 驗證者的完整和部分提款
- BLSToExecutionChange 消息,它允許使用 BLS_WITHDRAWAL_PREFIX的驗證者把提款更新
- ETH1_ADDRESS_WITHDRAWAL_PREFIX,這是提款的前提
- 分開的狀態和區塊歷史數據累加器,取代原來的單個的歷史數據根
我們鼓勵質押者都去閱讀《提款 FAQ》,以了解更多關於驗證者應該如何準備 Capella 的資訊。
Engine API
對 Engine API 的修改可以在 execution-apis repository 的 shanghai.md 文檔裡找到。簡而言之,引入了 WithdrawalV1 結構,並添加了多個相關結構和方法。自 Merge 以來對執行層 API 的更改已經打包在倉庫的最新版本中。
客戶端版本
以下的客戶端版本支持在以太坊主網的 Shanghai & Capella 升級。此前的 Shapella 升級客戶端版本僅支持測試網的部署,與主網升級並不兼容。
當在選擇運行哪個客戶端時,驗證者應該特別注意在執行層和共識層運行多數客戶端的風險。關於這些風險以及他們的後果可以閱讀這篇文章了解更多。而如果想預估當前執行層和共識層客戶端的分布,以及了解如何從一個客戶端切換至另一個客戶端,則可以閱讀這篇文章。
共識層主網升級版本
執行層主網升級版本
注意:在 Erigon v2.41.0 中發現一個問題。此版本不適合 Shapella 升級。Erigon 用戶應該升級到 v2.42.0。
FAQ
作為一個以太坊用戶或者 ETH 持有者,我需要做什麼?
簡單來說,沒有。
如果你使用交易所、數位錢包或硬錢包,你不需要做任何事情,除非你的交易所或錢包提供商通知你採取額外的措施。
如果你運行自己的以太坊節點,請參閱下文。
作為一個非質押的節點運營商,我需要做什麼?
為了與主網的 Shapella 升級兼容,請將你的節點更新到上文表中所列的以太坊客戶端版本。
作為一個質押者,我需要做什麼?
為了與主網的 Shapella 升級兼容,請將你的節點更新到上文表中所列的以太坊客戶端版本。
我們建議你閱讀《提款 FAQ》。
如果我是一個驗證者或節點運行者,且不參加這次升級,會怎麼樣?
如果你使用的以太坊客戶端沒有更新到上面列出的最新版本,一旦升級發生,你的客戶端將同步到分叉前的區塊鏈上。
你將被困在一個不兼容的鏈上,遵循舊的規則,無法發送 ETH 或在 Shapella 升級後的以太坊網路上操作。
作為一個應用程式或工具開發者,我應該怎麼做?
Shapella 不會為智能合約引入不兼容的修改。應用程式和工具開發人員應審閱升級修改,以確保任何問題都解決了,或了解如何使用新引入的功能。
也就是說,應用程式開發者應該意識到在上海升級中,SELFDESTRUCT 操作碼已被棄用。雖然它的語義沒有在這次網路升級中進行更改,但在後續的升級中可能會更改。更多信息請參考 EIP-6049。
為什麼叫「Shapella」?
執行層的升級按照 Devcon 舉辦城市來起名,而共識層的升級則根據恒星名字來取。「Shapella」 是上海 (Devcon 2 的舉辦地)和 Capella(Auriga 北方星座中最亮的星)的結合。
哪裡可以觀看 Shapella 升級直播?
EthStaker 和 Ethereum Cat Herders 會組織 Shapella 升級觀看派對,在升級差不多開始前直播。你可以在這裡收聽。
感謝所有為 Shapella 升級做出貢獻的人,感謝所有新舊質押者,感謝他們幫助保護了仍處於早期階段的 PoS 以太坊!
📍相關報導📍
上海升級時間公布!4/12 開放以太坊「質押提款」,ETH 叩關 1700 美元