通告 | 以太坊主网“伦敦” 升级公告

以太坊爱好者 2021-08-01 20:16:14

原文标题:《伦敦主网升级公告及相关代码变更》

原文作者:Tim Beiko,Ethereum Blog

原文编译:ETH中文站,以太坊爱好者

编者注:感谢 ETH 中文站翻译了以太坊基金会发出的「伦敦」升级公告以及 Geth 客户端团队的版本更新声明。需要补充的是:

1.原公告发布于 7 月 15 日,而 7 月 21 日 Ropsten 测试网上出现了共识事故,因此,本文内建议的客户端版本已经过时,运行节点的朋友应该获得自己所用客户端的最新版本。

2.以 13.5 的平均出块时间计算,「伦敦」升级将在北京时间 8 月 5 日晚上 7 时许激活。

3.以太坊区块的 Gas Limit 是出块节点在本地设置参数博弈出来的,设置低于/高于 当前大小的值即表示支持 减小/增大 区块,并会在自己所出的区块中反映出来。在 EIP-1559 通过之后,Base Fee 的调整将总是以 50% 的区块利用率为目标,因此,如果你作为出块节点,你认为合适的单块 Gas 消耗量是 100,就应该在本地把 gas limit 设为 200,以此类推。公告和 Geth 团队建议的数值仅有说明意义。不论节点具体设置了什么值,都不会因此进入另一个分叉。

译者按:除了伦敦主网升级的公告外,ECN 还翻译了 Geth 客户端 v1.10.5 里关于此次伦敦升级,不同相关行动者需要注意的代码变更。

客户端版本

为了与伦敦升级兼容,节点运营者将需要升级其运行的客户端版本。下面列出的每个客户端版本支持以太坊主网的伦敦升级。注意:下列版本不同于《伦敦测试网公告》中所列出的客户端版本,测试网的客户端版本并不支持主网伦敦升级的客户端版本。

注意:OpenEthereum 客户端将伦敦升级后弃用。OE 团队正在与 Erigon 合作,为用户提供一个平稳的过渡路径。更多信息点击这里查看。

矿工请注意:伦敦升级将改变在网络如何处理 gas limit 目标的方式。请参阅下文中「作为一名矿工,我需要做什么?」的部分了解详情。

伦敦 EIPs

下列 EIPs 是伦敦升级的内容:

.EIP-1559:ETH 1.0 费用市场变更

.EIP-3198:BASEFEE 操作码

.EIP-3529:减少 gas 返还

.EIP-3541:拒绝以 0xEF 字节开头的新地址

.EIP-3554:难度炸弹延迟至 2021 年 12 月

Ethereum Cat Herders 发布了一篇博客文章,讨论了这些 EIPs 的细节。

值得注意的是,虽然 EIP-1559 可以与当前的交易格式向后兼容,但是它引入了对区块头的更改,添加了新的交易类型,提供了新的 JSON RPC 端点,并在几个方面改变了客户端的行为 (挖矿、交易池等等)。强烈建议各个项目熟悉这个 EIP。与 EIP-1559 相关的更广泛的资料列表可以点击此处查阅。

寻 bug 赏金

为了让更多人关注即将到来的伦敦升级,所有与伦敦升级相关的 bug 的奖金都会翻倍,直到升级开始。可以领取双倍赏金的例子有以下这些客户端之间的跨客户端共识问题:Geth、Besu、Nethermind、OpenEthereum 和 Erigon。有关 bug 赏金范围和限制完整详细信息,请参阅:https://bounty.ethereum.org/#rules。

FAQ

Q: 作为以太坊的用户或 ETH 持有者,我有什么可以做的吗?

如果你使用交易所 (比如 Coinbase、Kraken 或 Binance)、网页钱包服务 (比如 Metamask、MyCrypto、或 MyEtherWallet),移动端的钱包服务 (比如 Coinbase Wallet、Status.im、或 Trust Wallet)、或硬件钱包 (比如 Ledger, Trezor, or KeepKey),你不需做任何事情,除非你的交易所或钱包服务商通知你采取额外步骤。如果你运行自己的以太坊节点,你需要升级你的节点。请看下文「作为一个非挖矿节点,我需要做什么?」部分。

Q: 作为一个非挖矿节点,我需要做什么?

下载以太坊客户端的最新版本,已在上文表格中列出。

Q: 作为一个矿工,我应该做什么?

首先,下载你的以太坊客户端最新版本。然后,你需要手动把 gas limit 目标设为现在的两倍。这是因为一旦伦敦升级部署了,区块大小会变成现在的两倍,而 EIP-1559 会保持区块容量大约 50% 满。这可以在所有提供与主网兼容挖矿的客户端上通过 JSON-RPC 来实现,无须重启你的节点。

例如,如果伦敦升级以前你把区块大小设为 15m gas,你将需要把 gas limit 设为 30m,以维持平均每个区块的交易数量一致。如果你不在区块 12 965 000 修改 gas limit 目标,你便会开始在网络里降低你的区块大小。下表提供了每个客户端的特定 API,你需要用它们来更新你的 gas limit 目标。

注意:Nethermind、Erigon 和 EthereumJS 目前还不支持在以太坊主网上挖矿。

Q: 如果我是一个矿工或节点运行者且不参与升级,会怎么样?

如果你正在使用以太坊客户端但不升级到(上文所列的)最新版本,升级后你的客户端同步的是分叉前的区块链数据。你会停滞在一条遵循旧规则的、不兼容的链上,且将无法发送 ETH 或在升级后的以太坊网络上操作。

Q: 在以太坊上网络升级意味着什么?

网络升级意味着以太坊底层协议的一次变更,创建新规则来完善系统。区块链系统的去中心化本质使得网络升级变得更难。区块链网络升级的顺利进行需要与社区以及各个以太坊客户端开发者进行协作和沟通,以使过渡顺利进行。

Q: 网络升级过程会发生什么?

当社区就哪些变更需要被纳入到升级上达成共识时,这些对协议的变更会被写入各个以太坊客户端,例如 geth、Erigon、Besu 和 Nethermind。协议变更会在一个特定的区块高度上启动。任何没有升级到新规则的节点将在旧链上被遗弃,而旧链继续保有之前的规则。

Q: 为什么是「伦敦」?

在伊斯坦布尔升级后,我们定下来的网络升级名字都用完了。有人建议我们用举办 Devcon 的城市命名,于是我们就用了。柏林是举办 Devcon 0 的城市,下一次升级的名字是举办 Devcon 1 的城市——伦敦。

致谢

特别感谢参与到伦敦升级的研究、计划、实现、测试、修复、再测试、部署、压力测试,以及以其他任何形式帮助伦敦部署的每个人

相关资讯Relevent