提款來了! Shapella 乙太坊主網升級將在日期:2023 年 4 月 13 日早上 6 點多進行。

原文:Mainnet Shapella Announcement(ethereum.org)

作者:Protocol Support Team

翻譯: Franci, ECN

  • 提款來了! Shapella 乙太坊主網升級將在 epoch 194048 處啟動,定在日期:2023 年 4 月 13 日 06:27:35
  • 建議質押者和節點運行者閱讀本文以及提款 FAQ
  • 從現在起到 4 月 5 日,針對 Shapella 漏洞的獎勵已翻倍,指路:Ethereum Bug Bounty
  • 讀者現在可以註冊以接收這些升級通知的電子郵件了。 滾動到頁面底部以訂閱 

在順利完成了 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_PREFIXETH1_ADDRESS_WITHDRAWAL_PREFIX
  • 分开的状态和区块历史数据累加器,取代原来的单个的历史数据根

我们鼓励质押者都去阅读《提款 FAQ》,以了解更多关于验证者应该如何准备 Capella 的资讯。

Engine API

对 Engine API 的修改可以在 execution-apis repository 的 shanghai.md 文档里找到。简而言之,引入了 WithdrawalV1 结构,并添加了多个相关结构和方法。自 Merge 以来对执行层 API 的更改已经打包在仓库的最新版本中。

客户端版本

以下的客户端版本支持在以太坊主网的 Shanghai & Capella 升级。此前的 Shapella 升级客户端版本仅支持测试网的部署,与主网升级并不兼容。

当在选择运行哪个客户端时,验证者应该特别注意在执行层和共识层运行多数客户端的风险。关于这些风险以及他们的后果可以阅读这篇文章了解更多。而如果想预估当前执行层和共识层客户端的分布,以及了解如何从一个客户端切换至另一个客户端,则可以阅读这篇文章。

共识层主网升级版本

客户端版本链接
Lighthousev4.0.1https://github.com/sigp/lighthouse/releases/tag/v4.0.1
Lodestarv1.7.0https://github.com/ChainSafe/lodestar/releases/tag/v1.7.0
Nimbusv23.3.2https://github.com/status-im/nimbus-eth2/releases/tag/v23.3.2
Prysmv4.0.0https://github.com/prysmaticlabs/prysm/releases/tag/v4.0.0
Tekuv23.3.1https://github.com/ConsenSys/teku/releases/tag/23.3.1

注意:运行一个验证者时,共识层信标节点和验证者客户端都必须更新至最新版本。

执行层主网升级版本

客户端版本链接
Besuv23.1.2https://github.com/hyperledger/besu/releases/tag/23.1.2
Erigonv2.42.0https://github.com/ledgerwatch/erigon/releases/tag/v2.42.0
go-ethereum (geth)v1.11.5https://github.com/ethereum/go-ethereum/releases/tag/v1.11.5
Nethermindv1.17.3https://github.com/NethermindEth/nethermind/releases/tag/1.17.3

注意:在 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 乙太坊!

封面圖片由 Yiran Ding 原創,由 Tomo Saito 改編。

免責聲明:作為區塊鏈資訊平臺,本站所發佈文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。 文章內的資訊僅供參考,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。