织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 竞争币 > 以太坊

反思 The DAO 后以太坊最严重事故:Infura 是「单点故障」 来源吗? (2)

时间:2020-11-13 15:37来源:未知 作者:admin 点击:
缘由 针对上面的两个问题,Geth 客户端团队的领导者 Péter Szilágyi@peter_szilagyi 都有回应。 从技术上来说,的确可以说是发生了 「未公开的硬分叉」,但这

缘由

针对上面的两个问题,Geth 客户端团队的领导者 Péter Szilágyi@peter_szilagyi 都有回应。

  • 从技术上来说,的确可以说是发生了 「未公开的硬分叉」,但这只是因为开发人员修复了一个沉睡了两年多的 bug,而因为担心公开披露这个 bug 会导致以太坊遭到攻击,所以选择了静默修复。
  • 人们也不该鄙视 Infura 没有使用最新的 Geth 客户端。从运营者的角度,不紧跟软件的最新版本是理性的。而依赖于 Infura 的服务,是自己把这个权利交出去了,而不是别人禁止了你运行节点,所以也没什么可抱怨的。

Peter 的回应也引起了不同的反应。一位门罗社区的人表示,在 2017 年,他们也曾因为同样的顾虑而选择了静默修复 bug。当然,也有人认为,选择静默修复是对的,但至少应该通知大型基础设施的提供者,只要联系了,就能大幅减少这一漏洞所造成的破坏。

北京时间 12 日凌晨 5:34,Peter 发布了《Geth v1.9.17 客户端所造成破坏的事后报告》,定位了问题的来源:发布于 2019 年 11 月 7 日的 Geth v1.9.7 错误实现了 EIP-211;John Youngseok Yang 在 2020 年 7 月 15 日报告了该问题,于是 Geth 团队在 7 月 20 日更新的 v1.9.17 版本中修复了这个问题。该次修复使得 Geth 客户端在执行涉及相关规则的交易时能跟其他以太坊客户端(如 Besu、Nethermind)相一致,但却使 v1.9.17 版本与历史版本的 Geth 发生了不一致。

如 Peter 所述,这个过程完全不是为了引入某个以太坊社区不知道或者不同意的共识规则,仅仅是因为写了 bug 所以必须修复 bug。除非你管写了 bug 也叫 「硬分叉」,否则就没有理由管修复 bug 叫 「硬分叉」(Nikita 显然不同意这一点,他表示这里就是发生了两次,而不是一次,硬分叉)。

其次,到底怎么发布修复,实际上并不简单。以太坊的硬分叉协调也需要很长时间。如果公开一个带有严重危险性的 bug,在各节点升级的过程中难保不会有人尝试攻击。作为客户端开发者,他考虑的更多是以太坊网络的安全性,而不是某个服务的安全性。而且,他们也并不是对所有的 bug 都采取同样的静默修复措施,很多都是公开修复的。

12 日上午 7:11,Optimism 团队的 Jing is hiring for Optimism@jinglanW 出来披露了更多信息:他们在 6 个月前复制了 Geth 客户端的代码库来研究和开发 Optimistic Virtual Machine,在该过程中,他们发现了一个神秘的 bug,也修复了该 bug,但一直无法定位其来源;他们一直以为,这个 bug 可能跟团队引入的定制化改进有关,但 11 号他们开始怀疑错误就存在于旧版的 geth 客户端中,而不是因为他们引入了一些改进。于是他们看了 ethernodes.org 显示的节点分布(并发现绝大多数节点已经升级)之后,就决定在主网上测试该 bug。因此有了后面的事情。 (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容