下一次以太坊网络升级 Dencun 升级目前敲定纳入四个 EIP,4844 为此次升级的主要功能。
来源 | AllCoreDevs Update
作者 | Tim Beiko
翻译 | Stephanie
\ $\,$
Shapella 升级被激活了 🎉!
我们在计划下一个升级 Dencun 🏝️的最后阶段了
我起草了 EIP-6953,总结了长期以来激活网络升级的触发机制 📜
今年夏天会在一些地方看到我谈论以太坊的治理,下文列出了完整的会议安排 👇
$\,$
它被激活了!尽管在升级激活方面有些小问题,但不到一个月后,我们现在认为以太坊上提款被顺利处理是再自然不过的事了😙
下一件事 ✔️
$\,$
在发布上一篇以太坊核心开发者会议更新时,Shapella 升级的规范基本都确定了,但仍然有很多改动的地方。在我发布后,这些规范都被最终确定了,从 进展 - 更新 - 最终主网版本都在以太坊基金会博客发布了,并且现在协议公告已经支持邮箱订阅了!
这篇更新的性质类似:我们现在有一组会被纳入到下一次网络升级 Dencun (Deneb + Cancun) 的暂定 EIP。我将给出概述,关于它们是什么、为什么它们是重要的,以及仍正在考虑纳入此次升级的候选 EIP。
请注意,这篇更新的内容主要集中在以太坊的执行层——在共识层上可能还有更多我遗漏的内容。可能的话,当 Dencun 升级的内容最终确定下来后,我会再发布一篇更新。但实际点来看,下一篇我发表的文章应该会是首个测试网分叉公告😅 我们来看看这些 EIP 吧!
EIP-4844,即 Proto-Danksharding
这无需多加介绍了:4844 是 Dencun 网络升级的核心功能。简言之,这个 EIP 给以太坊网络引入暂时的“数据 blob",L2 可以用它们来发布现在存在 CALLDATA
里的交易/证明数据。
由于 blob 是被短暂存储的,它们的 gas 开销预期会远远低于 CALLDATA
,CALLDATA
是永久存储在网络的。这将为用户大幅地降低 L2 的交易费,因为现在 L2 交易超过 90% 的开销是用于 L1 数据存储的。如果读者想更深入了解 4844, eip4844.com 有各种层次的释义资源、FAQ 等。
虽然此次升级没有合并这么大型,EIP-4844 对以太坊来说是一个重大变更:它给网络引入一个全新的数据层,且当前的共识层和执行层必须与其交互。这个 EIP 的大小意味着在 Dencun 升级里其他修改的带宽会受限。
也就是说,除了 4844 外,还有一些 EIP 会被纳入此次升级。
EIP-6780,停用 SELFDESTRUCT
,除非在与合约创建的同笔交易中被调用
在 Dencun 升级引入的第二项重大修改,是 EIP-6780 里停用操作码 SELFDESTRUCT
。 这个提案经过了多年的讨论,并在 Shapella 升级里有正式的停用通知。
最近的一些分析发现 SELFDESTRUCT
有一个普遍使用模式:合约在同一笔交易里被创建和销毁。EIP-6780 允许保持这个功能。如果 SELFDESTRUCT
与合约创建在同一笔交易里被调用,那么它的行为维持与现在一样。
而在所有其他情况下,尽管此操作码将不会删除合约的存储或代码,但合约里的 ETH 仍将被转移到目标地址。
尽管客户端团队现在认为这是处理 SELFDESTRUCT
的最佳方式,但更完整的影响分析仍在进行中。一旦该分析完成了,规范可能会被修改,以处理其他边缘情况。也可以采取完全不同的方法。例如,EIP-6046 也会被考虑。
换句话说,移除 SELFDESTRUCT
对于 Deneb 升级来说,现在是关于”如何“,而不是“是否”的问题。
EIP-1153,瞬态存储
在 Dencun 升级里被纳入的第三项修改是 EIP-1153。这个提案提出了差不多有 5 年了,在去年被 Uniswap 团队又重新提出,这个 EIP 在以太坊开发者社区得到非常多的支持。它引入了两个新操作码——TSTORE
和 TLOAD
,它们提供瞬态存储并在交易完成时被清除。这个 EIP 使得一些用例变得可能,从重入锁到在单笔交易对 ERC20 代币进行多次批准。
EIP-1153 也曾被考虑纳入到 Shapella 升级,但最终被置后了。这次,客户端团队同意继续推进它。值得强调的是,除了这个 EIP 本身总体上的健全性和有用性外,1153 被纳入的一个促成因素是它的技术倡导工作非常出色:Uniswap 和其他团队给所有的执行层客户端提供了完整的 1153 参考实现和全面的测试案例。
EIP-6475:SSZ 可选值
被纳入的最后一项修改可能被看作是 EIP-4844 的配套提案。Proto-danksharding 引入一个使用 SSZ 编码的新交易类型,而不是其他交易类型所使用的 RLP 编码方式。
很长一段时间以来,大家一直在讨论将以太坊的执行层完全转向使用 SSZ 编码,因为它是更丰富的编码结构,而且共识层也在使用,但实现它目前对 Deneb 升级来说工程量太大。EIP-6475 对 SSZ 的元素之一进行了定义,该元素是 4844 交易格式 (Optionals
) 的一部分,以确保它与我们想在未来引入以太坊的 SSZ 对象向前兼容。
由于关于一般交易以及特定的 4844 blob 交易的最佳长期 SSZ 格式的讨论还在继续,预计这两个 EIP 都会有所修改。
除了正式被纳入到此次升级的 EIP 外,客户端团队还有一个仍然可能被纳入的候选名单。
EIP-2537:用于 BLS12-381 曲线操作的预编译
自 2019 年以来,这份 EIP 一直以某种形式被考虑纳入升级。在过去,人们不愿意为以太坊的执行层添加新的密码学曲线。也就是说,信标链重度依赖 BLS12-381,而随着我们完成了合并,可以说 BLS 已经成为以太坊的一个“核心”依赖,有着安全而优化的库。
引入这个预编译将允许信标链签名在执行层上得到验证,以及开发利用这个曲线的新用例。
EIP-4788:在 EVM 的信标区块根
与 2537 类似,这个 EIP 从信标链暴露信息给执行层。在这个 EIP 里,信标链区块的根被添加到执行负载,随后存储在执行层的一个合约里。被存储的信标区块根随后可以通过一个新操作码 BEACON_ROOT
被访问,它以 slot 号作为输入,然后返回相关的信标区块根。
这个 EIP 将允许质押池、桥接和 restaking 协议有更多无需信任的设计。
EIP-6493:SSZ 交易签名方案
这个 EIP 是对 EIP-6475 的补充:它为 SSZ 交易定义了一个签名方案。尽管它不适用于现存的 RLP 交易,它可以用于确保现在的 4844 SSZ 交易签名方案能与未来的执行层 SSZ 大修向前兼容。
请注意,EOF 的 EIP 不被纳入升级
尽管一度入选 Shapella 和 Dencun 升级考虑被纳入名单,由于带宽有限,EOF 的整套 EIP 被正式排除在此次升级之外。现在正在讨论将优先选择它们作为未来升级的“主要功能”,但客户端团队还未正式达成共识。
除了以上提及的,此次升级的完整提议 EIP 列表可以在 Ethereum Magicians 论坛上找到。尽管最终出现在 Dencun 升级中的大部分东西可能已经被讨论过,还是可能有惊喜的!值得注意的是,当第一次了解 EIP-5656 ,即在上一次 ACD 会议提出操作码 MCOPY
的时候, 团队反应积极。
$\,$
公告:我已经起草了一份信息性的 EIP,列出了长期以来用于触发网络升级的各种机制,从 PoW 区块到 epoch、TTD 以及现在的时间戳。
希望我们不需要从现在的 epoch+时间戳组合再变化了😄
$\,$
在接下来的几个月里,我将有一些演说,分享我对以太坊的治理流程如何运作的看法。有些是线下的,有些是远程的,有些还待定。按时间顺序,我将出席EDCON、ETHPrague、ETHShanghai、EthCC 和 ETHMontreal.
我们到时见👋!
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!