异常高流量触发 Avalanche 漏洞
Ava 实验室工程师帕特里克·奥格雷迪(Patrick O’Grady)上周发文,解释了 Avalanche 网络出现漏洞的来龙去脉。
他表示,网络的异常高流量触发了一个非确定性 Avalanche 漏洞,该漏洞与高吞吐量的 PoS 区块链如何跟踪交易的方式有关。虽然网络出现漏洞,但链上资金不存在风险,不过这次重大失误是对区块链行业的一次宝贵教训。
Avalanche 于 2020 年 9 月发布,号称可以达到 4500TPS,获得了著名加密货币公司的支持,包括 Mike Novogratz 的 Galaxy Digital、Bitmain 和 Initialized Capital。康奈尔大学计算机科学教授埃敏·金·瑟勒(Emin Gün Sirer)设计的了该项目的确认机制——能够在 1 秒内实现交易确认。
Avalanche 被归纳为所谓的“以太坊杀手”这一类新型区块链,该类型的区块链网络都是致力于解决区块链的可扩展问题。不过 Avalanche 虽然被定位为抢夺以太坊市场份额的公链,但更多的是一种互补,而非竞争关系。
Avalanche 有三条 “默认链”,包括支持以太坊虚拟机及其 Solidity 编码语言的所谓 “合约链”,上周的这个漏洞就是出在这条链上。
简单概括这次漏洞的来龙去脉就是:为了提高交易吞吐量,Avalanche 的三条链彼此保持独立(除非资产需要进行跨链),每条链也有特定的交易类型。在去中心化交易所 Pangolin 推出之后,网络的整体负载迅速增高,触发了漏洞。
激增的用户量和交易量导致了异常的待处理区块数量,从而触发了漏洞,错误创建了跨链 “挖矿”。这进而导致一些验证者接受了错误的“挖矿”交易,而网络中的其他验证者却拒绝接受这些交易,导致合约链停止出块,陷入僵局。
幸运的是,这个漏洞没有产生双花,也没有影响常规交易、代币转移、资产转移、代币销毁或智能合约调用。
在漏洞发生几个小时后,相关漏洞分析已经出炉,不过修复起来比较困难。由于 Avalanche 的去中心化性质,不可能让所有节点串通起来,对有问题的交易进行回溯。只能通过部署补丁的方式进行升级更新,以解决问题。
区块链是一个复杂的庞然大物,虽然由人类编写完成,但最终还是运行在计算机上。在初始检查中,一个微不足道的问题随着网络发展将会变得越来越严重。在 Avalanche 的案例中,这个漏洞并没有造成网络瘫痪。然而,基于此前 Avalanche 对其高吞吐量能力的夸夸其谈,这次失误确实能够帮助社区恢复冷静。
微信扫描关注公众号,及时掌握新动向
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场