木星链 木星链
Ctrl+D收藏木星链
首页 > 火必APP > 正文

ETH:Kintsugi 事件报告

作者:

时间:1900/1/1 0:00:00

这篇文章内容涵盖 Kintsugi 事件的全面总结、它的后果,还有在主网合并前的具体行动计划。

概要

合并测试网 Kintsugi 在几个客户端上发生了问题。一个 fuzzer 创建了一个无效区块,但客户端 Nethermind 和 Besu 因为缺少一项检查而把该区块视为有效。这个无效区块导致网络分成了三部分——一部分包含无效区块、一部分不包含无效区块,还有一部分进入了Optimistic Sync 模式。尽管修复程序已经部署了,该 fuzzer 又创建了另一个区块,在客户端 Geth 触发了进一步的问题——无法加入正确的分叉。当我们修复了 Geth 的问题,我们就能够把所有的节点带回到相同的正确的分叉,区块链重新开始做最终敲定。

总结

合并测试网 Kintsugi 在前几周的运行中遇到了一系列问题,暴露了多个客户端的几个漏洞。问题主要是由开发者 Marius 开发的 fuzzer 引发的,这个 fuzzer 旨在创建有意思的区块并在网络里对区块进行广播。

一个这样的区块的 blockHash (区块哈希)被替换为它的 parentHash (父块哈希)。engine_executePayload  具备了所有构建一个区块和构建该区块的 blockHash 所需的所有参数。EL (执行层)  客户端应该根据这些参数来构建区块,并根据通过的 blockHash 进行验证。这个特定区块正确无误地没有通过 Geth 的检查,但通过了 Nethermind 和 Besu 的验证。该区块之所以在 Nethermind 被错误地通过验证是因为缓存问题,而 Besu 则完全没有这项检查。由此,该区块被一个 Lighthouse-Besu 节点提议,并导致区块链分叉为两部分,在执行层与 Nethermind 或 Besu 连接的验证者在一个分叉上,而月 Geth 连接的验证者则在另一个分叉上。

新火科技上线Sinohope Staking技术支持服务,布局去中心化业务:金色财经报道,新火科技宣布推出去中心化Staking技术支持服务Sinohope Staking。首期服务支持Cosmos链,未来计划拓展至以太坊、EOS、LINK等其他主流公链。

Sinohope Staking旨在提供安全专业的技术支持和服务,以便用户快捷高效地参与去中心公链Staking生态,平台不经手亦不会持有任何客户资产。客户无需托管虚拟货币资产,通过自主决定参与及 操作,自行管理资金,即可成为众多PoS公链的节点,从而获得稳健、低风险的收益。[2023/1/30 11:36:28]

请注意,检查当前区块的 blockHash 是合并新增的要求,因此在某些客户端上会存在缺少或不准确的验证。

Geth 的一个问题是当执行错误的负载时,它返回的是一个  JSON-RPC 错误而不是 INVALID (无效),而 Teku 的问题是 (此时已修复但还未部署) 认为那些错误在 optimistic sync 模式下是可通过的。因此, Teku-Geth 节点在遇到无效负载时还是进入了 optimistic sync 模式。由于该区块本身是有效的,已连接的 Geth 节点是从网络而不是 engineAPI 获取数据的,因此现在的  Teku-Geth 节点是在无效的分叉链上的。由于 Teku 节点还在有很多漏洞的旧版本上, Teku-Geth 节点保持在 optimistic sync 模式,并在区块链停止做最终敲定的期间拒绝提议区块。我们现在处于这样的一个情况——共识层客户端 (lighthouse、prysm、nimbus 和 lodestar) - Geth (占大约 46%) 与共识层客户端 - Nethermind/Besu (占大约19%) 在不同的分叉上,其他运行 Teku-Geth (大约占35%) 的验证者则处于 optimistic sync 模式。

LookIntoBitcoin创建者:比特币矿工收入处于历史相对低点:金色财经报道,链上分析平台 LookIntoBitcoin 创建者Philip Swift在社交媒体上表示,比特币矿工继续承受着极大的压力,他们从比特币挖矿中获得的收入处于历史相对低点。[2022/12/8 21:30:50]

在找到和部署了 Nethermind 和 Besu 节点的修复程序后,我们就能够让它们重新连上正确的链。Teku-Geth 节点的更新导致了另一个与无效内存访问相关的问题,它由 Geth 上与区块排序验证相关的问题引起。这个具体的漏洞也是由 Marius 的 fuzzer 触发的,这个 fuzzer 产出了一个 parentRoot 是有效且 block_number=1 的区块。在 Geth 执行一个区块前,它需要查看它的父块,看看它们是否需要同步。这样做的一种方式是在缓存里检查 parentHash  或在 database 里检查 parentHash 和 blockNumber。由于 Teku 是同时执行所有分叉里的所有负载,缓存就不再包含  parentHash 。因此,Geth 试图在它的 database 里通过 parentHash 和 blockNumber 查找其父块。然而,database 并没有这个 blockNumber 的哈希 (这个区块是 fuzzer 构建的)。Geth 会推断,由于它没有父块,它需要开启同步。但是,这样触发的同步会试图同步比权威链更短的的链,这就违反了 Geth 中的某些条件,这导致 Geth 进程错误,节点关闭,导致 Teku-Geth 节点一直处于不健康的状态。

DeFi Kingdoms将在Klaytn上推出游戏部分Serendale:金色财经报道,DeFi Kingdoms将在以元宇宙为重点的区块链Klaytn上推出名为Serendale的游戏部分。此举是在Harmony区块链网络成为黑客攻击目标后不到两个月的时间。

DeFi Kingdoms的一位发言人证实,这意味着它将完全离开Harmony。新合作伙伴Klaytn是韩国互联网巨头Kakao Corp的产品,自2019年以来一直存在。今年早些时候,它转变成以元宇宙、游戏和以创作者为中心的连锁店。?[2022/8/23 12:43:08]

在上述问题的调试中,Geth 团队还在合并的代码库里发现了一个触发错误的竞争条件。此外,我们还遇到其他问题——Nimbus 出现与执行层重新连接相关的错误,Lodestar 降低拒绝出块的对等点分数。

客户端推出了所有的修复,且让所有节点都进行升级。当所有的修复都生效时,区块链会有很多小分叉,每个的参与率都很低。对一些节点进行重新同步可以减少一些分叉。一旦有足够多的节点完成重新同步,我们会看到有越来越多的节点通过重组回到这个分叉上,这使我们能跨过最终确定性所需的 66% 的阈值。

Kine将上线FIL和DOT交易,支持最高20倍杠杆:4月2日消息,DeFi衍生品交易所Kine现已上线FIL和DOT交易,支持最高20倍杠杆。[2021/4/2 19:40:50]

FAQ

Q: 这个测试网死了吗?

A: 没有。在我们部署修复程序并重新同步一些停滞的节点后,链最终又开始做最终敲定了。当链恢复最终敲定,它就可以如常运行。目前,Kintsugi 的参与率是大约 99%,这表明所有客户端的漏洞已经得到修补,且网络也运行良好。交易和智能合约交互继续如常运作。

Q: 为什么这条链这么长时间不做最终敲定?

A: 虽然我们很早就找到了根本原因,我们想要让链保持非最终敲定状态,让客户端团队调试他们的代码。此外,我们想要收集非最终敲定期间的客户端表现数据。

Q: 在分叉链上的验证者会被罚没吗?

A: 不会。每个验证者都包含一个 slashing protection (罚没保护) database,确保验证者不会对可罚没的信息签名。在“错误”分叉的验证者只会被视为在“正确”分叉上处于 inactive 状态。一旦它们重组到“正确”分叉上,罚没 database 会阻止它们对可罚没信息签名。

声音 | 段新星:已实现对一条POW链的Staking:比原链创始人段新星微博称,用一条DPOS侧链实现对一条POW链的Staking,我们已经做出来并跑通。其同时称,其公司可以提供技术解决方案。[2019/7/24]

Q: 这会如何影响主网发布?会有新的延迟吗?

A: 我们认为这件事不会影响主网发布计划。在规范本身上没有发现严重的问题。测试网的目的是发现漏洞,我们认为  Kintsugi 在发现客户端实现的边缘情况方面表现很好。这事件是对多个客户端组合的一次很好的压力测试。我们有一个公开的清单,它将指引我们何时准备好在主网实现合并。

Q: 这会如何影响测试计划?

A: 我们将研究创建几个强制处于非最终敲定状态的测试网。对这些非最终敲定的测试网进行持续测试使我们可以触发更多边缘情况,和改进工具。在这次事故中发现的漏洞将被添加为静态测试用例,以确保我们会通过回归测试。

对验证者、基础设施提供商和工具开发者的重要启示:

测试网上的非最终敲定时期加强了最糟糕情况硬件要求的一些假设。在非最终敲定期,验证者应该预期:

由于需要对多个分叉选择规则进行评估,CPU 负载会增加 (有时达到 100%)

在非最终敲定期由于不会有修剪,硬盘使用量会增加

RAM 使用量会有边际增长

这意味着,在同一台机器上运行的任何额外工具或监测都会遇到资源争用问题。Kintsugi 测试网的工具 (区块浏览器、水龙头、RPC) 在具有 3 个节点的 Kubernetes 集群上运行。这个集群还运行多个工具使用的信标节点。由于信标节点使用的资源比预置的要多得多,因此我们的工具经常由于资源不足而以降级的方式运行。对于基础设施提供商来说,谨慎的做法是在不同的机器上运行它们的共识层和执行层,或有严格的资源使用定义。

合并意味着每个共识层客户端都需要运行自己的执行层客户端。(主网上的) 执行层客户端现在需要很大的磁盘容量。在非最终敲定期间,CL 的磁盘使用量也会激增,这会由于磁盘空间不足而导致崩溃。所有验证者应该确保他们有足够大的缓冲磁盘空间来应对这种问题。

依赖于最终确定性的工具开发者应该为非最终敲定时期多做考虑。一种可能的方式是显示 optimistic 信息,同时传达该信息在用户界面是会变化的。

来源 | notes.ethereum.org

作者 | parithosh

点击“阅读原文”获取文章内部链接!

原文链接:https://notes.ethereum.org/@ExXcnR0-SJGthjz1dwkA1A/BkkdHWXTY

标签:ETHGETKINGETHIETHV价格togetherbnb全剧情图文攻略BKINGtogetherbnb怎么喝醉

火必APP热门资讯
ETH:读完倒吸一口寒气 一亿美元是怎么差点被走的

大家还是要提高安全防范意识。本文梳理自 Arrow 创始人 thomasg.eth 在个人社交媒体平台上的观点,律动 BlockBeats 对其整理翻译如下:在过去两周的时间里,我成为了一个高级.

1900/1/1 0:00:00
区块链:金色早报 | 冰墩墩数字盲盒将于2月12日发售

头条▌百度向内部员工发放“百度同学专属数字藏品”金色财经报道,据百度超级链消息,百度员工已经领到开工专属数字藏品“百度同学专属数字藏品”.

1900/1/1 0:00:00
ETA:Meta元宇宙女性安全问题频发 元宇宙中相关问题该如何解决?

在女性遭受性骚扰甚至被攻击的事件相继被报道之后,仍处于萌芽状态的虚拟现实空间成为人们关注的焦点.

1900/1/1 0:00:00
区块链:肖风:元宇宙看似从天而降 其实“蓄谋已久”

最近有一个概念特别火,就是元宇宙。特别是在Facebook改名为Meta后,平地一声雷,又掀起了一波浪潮。今天,我也特别高兴跟大家一起探讨这个新课题、新趋势.

1900/1/1 0:00:00
元宇宙:警惕元宇宙虚拟资产“通胀”

国内元宇宙走向成熟,还需要一个成长过程。未来要强化对元宇宙公共治理政策的研究,如当房产等虚拟资产波动较大时,需要迎来对于虚拟资产炒作的相关监管.

1900/1/1 0:00:00
区块链:金色趋势丨BTC反弹趋势仍在进行中

金色晚报 | 2月16日晚间重要动态一览:12:00-21:00关键词:USDT、BCH、交易费、gas 1. 近七日Tether新发行1.57亿USDT.

1900/1/1 0:00:00