5

以太坊核心开发者会议更新002

 3 years ago
source link: https://news.ethereum.cn/Technology/allcoredev-update002
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
ETH   $ 2432.99   1.67%      Gas:  118 Gwei          Epoch / Slot :
Loading...
       活跃验证者 :
Loading...

以太坊核心开发者会议更新002

gas limit 提高讨论,柏林升级故障解释


Tim Beiko        2021-04-22

来源 | AllCoreDev Update

  • Berlin 上线,OpenEthereum 在分叉出现了问题,但快速进行了修复,gas limit 将可能小幅提升
  • 伦敦升级已经有一个 EIP-1559 的开发者测试网了!同时计划多个分叉涉及非常多的工作,因此我们准备开一个额外的 AllCoreDev 会议;
  • 核心开发者开始设计“合并” 的原型——关注 Rayonism☀️

招聘更新 ⚒️

在区块12244000,以太坊主网实现柏林网络升级!🎉

尽管分叉区块运行顺利,升级后不久,OpenEthereum 就出现了共识问题。开发者很快发现了问题 (etherscan 崩溃了,也很难不发现这个问题......) 并在 Zoom 上开会对问题进行诊断和找出解决办法。

问题出现了大概1个半小时后,问题根源找到了。简言之,问题是由 BLS-12381 预编译引起的。它在一些柏林测试网里被启动了,但不是主网分叉内容。OpenEthereum 没有禁用这个预编译,而是把它设置在非常遥远的区块上启动。当一笔交易错误地调用了这个预编译地址,OpenEthereum 对该调用的定价就与其他实现不一样。

如果想了解更多细节,Alex Stoke 在推特上对事件进行了详细解释。我们也对 eth1.0 规范的代码库进行了复盘。最后,OpenEthereum 团队正在写一份对这次事件的完整事后反思。OpenEthereum 的用户现在应该使用该客户端的 v.2.3.4 版本

EIP-2930 解析 🧠

为了弥补 EIP-2929 的潜在漏洞,柏林升级还加入了 EIP-2930。这份 EIP 允许交易与一个访问列表一并提交,以在某些情况下稍微降低 gas 开销。

因访问列表而获益的使用情况并不总是那么明显。幸运的是,Nomic Labs 的 Franco Victorio 对这些情况进行了整理,写了一篇文章解释访问列表会引起的 gas 开销变化、以及访问列表是如何生成的。如果你的项目可能受 EIP-2929 或 2930 影响,你应该阅读这篇文章。

Gas Limit 提高 📈

如在上一篇更新提到的,当主网实现了柏林升级,以太坊主网上由大型区块带来的大部分 DoS 风险都会得到解除。这意味着我们现在可以(慢慢地!)开始提高 gas limit。如 Péter Szilágyi 在推特上所说,EIP-2929 加上 Geth 上的快照使我们得以稍微提高 gas limit。他提议一开始提高到 15M,看看情况如何。

但是!尽管 DoS 风险已经得到缓和,但状态膨胀问题仍然存在。提高 gas limit 意味着提高状态增长速度,以及增加节点同步数据、与网络保持同步的负担。在我们找到长期的解决方案 (例如,无状态)之前,我们仍然需要保持谨慎。特别是 (如 Péter 所说) 在我们还不确定无状态是否真的可行的时候。

主网进行柏林升级后,我们现在专注于伦敦升级的实现与测试阶段。目前有三份 EIP 在该升级的计划中: EIP-1559, 我想不需多做介绍;EIP-3238 是用于把难度炸弹推迟到 2022 年第二季度;EIP-3198 用于添加一个操作码以从区块返回 BASE FEE

我们现在有了第一个集成测试网 Aleut,大多数客户端正与它同步1。如果你想加入这个测试网,规范里有配置文档与启动节点。文档资料现在还不完善,你可能需要使用你所喜欢的客户端的开发者分支,但这个问题在未来几周会得到完善。

在规划方面,伦敦升级非常特别,在另一个升级还在部署的时候它就已经开始规划了,这种情况还是第一次。此外,客户端团队已经开始对“合并” (详见下文)进行原型设计了。在过去的 3 到 4 次核心开发者会议里,由于内容过多,问题都没有讨论完,因此我们决定在本周五安排一次常规以外的会议,继续讨论伦敦升级。

简言之,我们需要决定是否增加其他内容到伦敦升级里,什么时候进行升级,以及如何处理那些没能放到伦敦升级里的 EIP,包括呼声越来越高的 EIP-3074。又是一个议程满满的会议!

Rayonism 项目☀️

如上文所述,客户端团队已经开始专注在“合并”上了。首先进行的是 Rayonism 项目,是对俄罗斯艺术运动的致敬——“用射线画出一个分片空间,并将其变成动态时间。”

在下一个月,基于“可执行信标链”提议的原型会被构建出来。完整的规范可以在 ethereum/rayonism 代码库里找到。

Rayonsim 项目是 Scaling Ethereum 黑客松的一部分,是对所有人开放的。如果大家也想做出贡献,可以通过加入discord 频道来参与。如果想看它是如何运行的,这里有一份教程。😄

当然,Rayonsim 项目作为黑客松的一部分意味着里面的内容变得非常快,发出来的文档可能很快过时,构建出来的原型也不适合做成产品。但,在活动结束的时候,我们应该对实现“合并” 的技术要求和如何把构建的原型产品化有一个非常成熟的思路了。

最后,如果你想看看合并后的图景,Barnabé 本周写了一篇非常好的文章


感谢您的阅读!下一次的更新应该会在几周后,即伦敦升级的规范被最后敲定的时候。


发布于 2021.4.20

1 注:Aleut 不包括 EIP-3238,因为该 EIP 仅需要为难度炸弹修改主网的一些常数。

ECN的翻译工作旨在为中国以太坊社区传递优质资讯和学习资源,文章版权归原作者所有,转载须注明原文出处以及ethereum.cn,若需长期转载,请联系[email protected]进行授权。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK