#152以太坊核心开发者会议笔记
Vitalik 在会议上阐述了这个提案背后的思考,以及解释为什么修改 EVM 通常比其他协议修改更困难。
原文作者:TimBeiko 、christine_dkim
原文来源:Twitter
编译:Stephanie,ECN
前言:
有看 ECN 每周更新的 “以太七日谈” 的朋友可能会发现,“七日谈” 已经停更了将近一个月。除了由于前段时间编辑感染 Covid 无法保持更新外,ECN 也在思考是否应该继续 “七日谈” 的编辑。在新的一年,ECN 计划做一些内容运营上的调整,其中就包括 “七日谈”。
以太坊核心开发者会议的笔记编译一直是 “七日谈” 的重要组成部分,我们现在决定将其独立更新。
如果对以往“七日谈”中哪些部分的内容特别希望我们保持更新的,欢迎在各个社交媒体上私信我们,我们非常愿意听到大家的反馈,以提升我们的内容质量。
在第 152 次 ACDE 上,开发者们就从上海升级中移除与 EOF 实现有关的代码修改达成共识。关于 EOF 的更多信息,可阅读《以太坊核心开发者会议更新014 ⛓》。他们还就不再接受任何添加到上海升级的 EIP 达成共识,这主要是为了确保提款质押的 ETH 的时间表不会被推迟。作为上海升级唯一的大型代码修改,提款质押的 ETH 目前正在以开发者为中心的测试网络上进行测试。开发者的目标是在下个月 (2023 年 2 月) 上线用于上海/Capella 升级的公共测试网,然后在 3 月上线主网。开发者随后讨论了 EVM 升级的更周详考虑、以太坊执行层/共识层之间不同的序列化方法、以及引入 Poseidon 哈希函数作为 EVM 的预编译的 EIP。
以下为详细笔记👇
上海升级的进展
在上海升级方面,在圣诞节前已经上线了第一个开发者测试网,所有客户端组合都在上面运行,大家可以看看以太坊基金会 devops 的仪表盘👇。有些客户端组合出现了问题,但开发者们将尽快推出一个新的开发者测试网。
(https://t.co/HBkcidHvMq)
此外,Geth 团队的 [email protected] 提出对 EIP 3860 (对 initcode 的大小设限并引入 gas 计量) 设计上的小修改 —— 纠正该 EIP 中一个令人困惑的错误模式,即违反 initcode 限制导致的是零地址错误而不是 OOG (gas 不足) 错误。这项提议得到开发者们的认同,即将错误模式改为 OOG 错误,然后终止或中止执行,而不是返回一个零地址,这样将减少在客户端实现中的混乱和漏洞。以上是客户端团队的意见,如果智能合约开发者强烈反对这个修改,可能就不修改了。
EOF 相关 EIP 被移除出上海升级
接下来,会议主要讨论 EOF 相关话题。
Geth 团队的开发者@lightclients 给大家更新了 12 月进行的 EOF 小组会议的情况。(EOF 即 EVM 对象格式,它会为以太坊的代码环境引入一些变化。与之相关的 EIP 将更明确地区分智能合约的代码和数据,并使得 EVM 在未来更容易升级。) 简单来说,规范被敲定,并做了两个小型修改:删除 JUMPF 并使得数据 EOF 合约必须包含数据部分。
在测试方面,Geth 团队的 @mhswende 已经开始对实现做模糊测试,在所有客户端上都发现了漏洞并修复了。现在的模糊测试主要针对在客户端上 EOF container/结构的实现,但不包括部署的 EOF 代码。以太坊基金会测试团队的 Mario [email protected] 补充道,由于 EOF 的复杂性,可能很难对错误情况写静态测试用例,因为实现可能会在遇到确切测试用例前先遇到另一个错误。
关于【#152以太坊核心开发者会议笔记】的延伸阅读
Web3 世界的「云安全验证」—— 盘点 EigenLayer 生态知名的 AVS 项目
EigenLayer是一个在以太坊上创建的技术协议,引入了再质押功能。截至2024年6月5日,已有超过530.9万个ETH在EigenLayer上进行再质押。通过EigenLayer,用户可以再次获得资产奖励,开发人员可以利用已质押的ETH启动新的主动验证服务。该文档介绍了多个基于以太坊的互操作性协议,包括连接Layer2的共享排序工具、安全协调层、互操作层和去中心化的证明者网络。这些协议都使用EigenDA作为数据存储层,并提供技术文档供参考。其中,Restaked Rollup是EigenLayer的新型主动验证服务项目,Caldera和Celo也使用EigenDA作为数据存储层,提供技术框架和模块化功能。此外,还介绍了使用EigenDA的Layer2网络,如Cyber、LayerN和Mantle。EigenDA是一个模块化的Layer2网络,专注于成为web3应用程序的社交层。Polymer Labs开发的协议结合了Optimism堆栈的结算功能和Cosmos SDK的互操作性功能,使用EigenDA作为数据存储层。Versatus是世界上第一个Stateless Rollup,助力去中心化应用的开发。
火星财经加密周报 | 6月7日
本周欧盟选举开始,加密行业监管政策可能受影响。Tether CEO担心欧盟MiCA稳定币要求会对市场产生负面影响。RoaringKitty可能清算其GME股票头寸,Solana币价增长受益于Meme币交易活动。特朗普竞选团队收到近3亿美元捐款,西班牙90%的World ID持有者支持Worldcoin回归。加密专家密切关注欧盟选举对MiCA、DeFi、NFT等领域的影响。比特币可能因CPI创新高和降息预期上涨,ETH表现落后。Blast提醒DApp在6月25日前分配所有Gold和Points给用户。Bitget Launchpad项目BWB投入总人数增长,IO.NET初始总供应量为5亿枚。五月加密市场大多数指标下跌,但以太坊质押收入上涨,NFT市场交易额下降。加密货币可以解决人类挑战,DeFi夏季最新更新包括Ethena、Etherfi、Karak等项目。Notcoin交易量增加,L2争斗白热化,市场流动性改善,Meme板块吸引资金流入,NFT市场情绪低迷。Shardeum、Merlin和0G Labs与多家合作伙伴合作推进去中心化项目发展。
在客户端团队方面,Geth 和 Besu 已经有完整实现并通过了大部分的测试。Nethermind 也已经有实现了,但不确定最好使用哪个测试套件。而 Erigon 将使用 Geth 的 EOF 实现。
基于 EOF 的实现和测试情况,Vitalik 也表达了对仓促实现 EOF 的担忧,并发表了 EOF 提案:禁用 EOF 账户的代码自省 (code introspection):https://ethereum-magicians.org/t/eof-proposal-ban-code-introspection-of-eof-accounts/12113
Vitalik 在会议上阐述了这个提案背后的思考,以及解释为什么修改 EVM 通常比其他协议修改更困难。他指出,从以太坊中删除工作量证明比弃用操作码来得更容易。这是因为以太坊应用/合约依赖 EVM 的特定行为,因此修改必须向后兼容,否则将破坏已部署的合约。而协议其他方面的修改只需要每个人在特定时间进行更新,除此之外,不会破坏网络上的任何东西。
这意味着,当我们改进 EVM,或引入新版本,例如 EOF,我们很可能需要永远与它们共存,因为我们不能弃用之前版本。理想情况下,我们想让 EVM 更简洁/简单,但如果我们只能在它上面添加东西而从不删除东西,这就会变得很难。删除东西最大的挑战之一是 EVM 中的代码自省。
因此,Vitalik 的提案是在 EOF v1 中添加更多内容,这将极大地限制 EOF 合约中的代码自省,从而有可能使其在未来更容易升级。Ipsilon 团队的@alexberegszaszi 提到,EOF 提案的作者们其实之前有考虑过类似的功能,决定放弃是想保持 EOF v1 简单。他还提出一个替代方案,将 Vitalik 的提案纳入到 EOF v2:https://ethereum-magicians.org/t/eofv2-aka-what-evm-2-0-could-look-like/12442
但是,对于这份在 EOF v1 基础上添加内容的提案,客户端团队担心整体的修改规模过大。@lightclients 也表示,基于目前 EOF 测试的进度,把它纳入上海升级可能会延迟大概一个月的时间。如果想要在二月初能上线主网测试网升级,EOF 的部分应该未能准备好。而且,这是一个很重要的决定,因为 EVM 的变更一旦部署了就不能修改。
经过讨论,开发者们最后决定要再多花时间考虑 EOF 的问题,因此将其从上海升级移除,但会保持 EOF 上的工作。他们应该能够在坎昆升级中部署某个版本的 EOF 与 4844。在这次会议上,开发者们没有对坎昆升级做出正式决定,并将在下次会议再讨论。
那上海升级是否需要补充其他的 EIP 呢?经过讨论,开发者们决定不再添加其他 EIP,免得延迟上海升级。
其他 EIP 的讨论
随后,开发者们还讨论了 Nimbus 团队的 Etan Kissling 的提案:在ExecutionPayloadHeader的交易列表里添加十六进制树根。https://github.com/ethereum/consensus-specs/pull/3078
简单来说,现在执行层区块头和共识层执行负载头 (ExecutionPayloadHeader) 之间使用不同的序列化格式编码的字段。这两个字段编码格式不同给钱包和以太坊轻客户端构建带来额外的开销和复杂性。Kissling 提议向执行层添加 CL 的 SSZ 序列化格式,或共识层客户端采用多种方式支持执行层的 RLP 序列化格式。这个提案与上海升级中的提款相关,因此相对紧急。这个问题将在这周的共识层会议 (ACDC) 上再次讨论,即 1 月 12 日。
会议最后还讨论了 EIP-5843 (EVM 模块化的算术扩展) 的和 EIP-5988 (添加 Poseidon 哈希函数预编译)。由于 EIP-5843 的作者未能与会,开发者们同意之后再对此 EIP 进行讨论。而 5988 由 StarkWare 提出,旨在在以太坊网络上提高运行零知识证明的效率。但这可能给以太坊的安全性带来未知后果。
免责声明:本文仅代表作者个人观点,不代表链观CHAINLOOK立场,不承担法律责任。文章及观点也不构成投资意见。请用户理性看待市场风险,以及遵守所在国家和地区的相关法律法规。
图文来源:TimBeiko 、christine_dkim,如有侵权请联系删除。转载或引用请注明文章出处!
标签:以太坊