原文:https://blog.ethereum.org/2021/03/08/ethereum-berlin-upgrade-announcement/
作者:Tim Beiko
翻译:阿剑
转自:以太坊爱好者
摘要
- 柏林升级的内容已经准备好!
- 主网的升级时间计划在 4 月 15 日。
- 如果你有运行以太坊节点,请立即为测试网升级客户端软件到兼容柏林升级的版本;如果您的节点同步的是主网,请在 4 月 7 日以前升级。
- 兼容柏林升级的客户端版本,以及本次升级包含的 EIP,请见下文。
柏林升级时间表
经过几个月的计划之后,柏林升级的内容终于确定!本次升级计划在以太坊主网区块链区块号 12,244,000 处激活。我们估计,该区块会在 2021 年 4 月 15 日挖出,但因为出块的时间会有波动,具体日期可能会提前或延后。
在主网激活升级之前,Ropsten、Goerli 和 Rinkeby 测试网会相继激活升级。具体时间如下:
网络 |
区块号 |
预计激活时间 |
Ropsten |
9 812 189 |
10 Mar 2021 |
Goerli |
4 460 644 |
17 Mar 2021 |
Rinkeby |
8 290 928 |
24 Mar 2021 |
Mainnet |
12 244 000 |
14 Apr 2021 |
以太坊节点的运营者应该在所在网络抵达激活高度以前升级自己的客户端软件。因为出块时间有波动,建议大家提前几天升级。合适的版本号请见下文。
客户端版本
为兼容柏林升级,节点运营者应升级自己所用的客户端。下表列出了各种客户端支持柏林升级的最低版本号,适用于所有网络(不论是测试网还是主网)。
客户端 |
版本号 |
下载链接 |
go-ethereum (geth) |
1.10.1 |
|
OpenEthereum (f.k.a. Parity) |
3.2.0 |
|
Nethermind |
1.10.31 |
|
Besu |
21.1.1 |
注意,TurboGeth 客户端和 EthereumJS 客户端尚未准备好在第一个测试网升级前发布新版本,但确定会在主网升级前发布可用的版本。在他们的新版本可用之后,我们会及时更新这篇帖子。Trinity 客户端已被弃用,不会支持柏林升级。
柏林升级内容
柏林升级将为以太坊区块链引入下列 EIP:
- EIP-2565:ModExp Gas Cost
- 降低使用 ModExp (0x00..05) 预编译模块的 Gas 消耗量
- EIP-2929:提高状态访问操作码的 Gas 消耗量
- 提高一笔事务(transaction)中首次使用 SLOAD、*CALL、BALANCE、EXT* 以及 SELFEDESTRUCT 操作的 Gas 消耗量
- EIP-2718:标准化的事务信封
- 引入一种新的、作为信封的事务类型,从而能够更好地支持多种事务类型
- EIP-2930:可选的访问列表
- 加入一种新的事务类型,该种类型的事务会包含一个访问列表:该事务计划访问的地址和存储项键的列表。这可以在一定程度上缓解由 EIP-2929 带来的 Gas 消耗量增加。
要了解这里的各项 EIP,可阅读 Ethereum Cat Herder 的文章:Berlin Overview。
常见问题
为什么要使用 “柏林” 这个名字?
在伊斯坦布尔升级之后,我们已经用完了从前为网络升级准备好的名字。所以有人提议使用举办 Devcon 的城市名字作为升级的命名,我们都认可了。柏林是举办 Devcon 0 的城市,因此 “柏林” 成为了本次升级的代号。下一次升级的代号就是 “伦敦”。
作为一名以太坊用户(持币者),我需要做什么?
如果你在使用:
- 中心化交易所(例如 Coinbase、Kraken 以及 Binance)
- 网页钱包(例如 MetaMask、MyCrypto 以及 MyEtherWallet)
- 手机钱包(例如 imToken、Coinbase Wallet、Status.im 以及 Trust Wallet)
- 硬件钱包( 例如 imKey、Ledger、Trezor 以及 KeepKey)
您不需要做任何操作,除非您所用的交易所或者钱包服务商提醒您采取额外操作。
作为一个节点运营商(或者矿工),我又需要做什么?
请更新您的客户端到最新版本。
要是我不升级自己的节点、不参与本次升级呢,会出现什么情况?
如果您的以太坊客户端没有升级到最新版本(即上面列出的版本),您的客户端将只会安排分叉前的共识规则来同步区块链。一旦升级被激活,您的客户端会留在由旧的共识规则所形成的一条链上,与使用新规则的网络互不兼容,因此也不能发送 Ether 到升级后的网络中、也不能操作新网络里的合约。
以太坊世界里的网络升级究竟是什么意思?
所谓的网络升级,就是改变以太坊底层协议的规则,通过创造新规则来升级整个系统。区块链的去中心化特性让网络升级更难协调,因为它要求整个社区的协作和沟通,还需要以太坊不同客户端的开发者为顺利升级作好准备。
在网络升级期间会发生什么事?
在整个社区对一次升级应该包含哪些改动达成共识之后,这些改动会编写到多个以太坊那个客户端中,比如 Geth、Open Ethereum、Besu 和 Nethermind。这些改动会的特定某个区块处激活。没有升级到使用新规则的节点与使用了新规则的节点之间不能互通,如果大家都升级到了新的规则,使用旧规则的节点就会被抛弃而形成一个小网络(如果这些旧规则还有一些人支持的话)。
感谢!
衷心感谢为柏林升级提供意见、思想和贡献的以太坊社区,以及所有客户端和平台的以太坊开发者们。
免责声明
区块链是一个新兴的、快速发展的高科技领域。如果您决定采用本文所提出的建议,请保证您明白这些建议对您的影响。你应该认识到其中的风险,包括但不限于意料之外的软件错误的风险。在执行这些建议时,你将独自承担结果。本文及其建议绝不构成任何意义上的销售条款,也不构成任何意义上的担保,包括但不限于对以太坊网络及此处所提到的以太坊客户端的担保。