雪崩协议(Avalanche)的朋友们,大家好!这真是漫长的一天,很抱歉我们一直没有发声,我们正在不分昼夜全力修复遇到的问题。在所有系统恢复之后,我们将撰写一份非常全面的事后分析报告,在此之前我们仍然想在修复期间给出一个简短的说明,让大家放心。

以下是关于 DEX「穿山甲」(Pangolin)上线后发生的事情:

巨量的负载触发了一个概率非常低的 bug,从而在网络中产生了一个问题状态。这在测试中是无法被发现的,因为即使使用最好的测试工具,也无法模拟出有成千上万的用户试图使用每个功能的场景。

更多细节说明:

在包装 EVM 的代码中存在一个 bug,它导致从 X 链导出到 C 链时,在 C 链上生成了一个坏区块。这个漏洞只存在于 X 链到 C 链的导入中,其他一切都不受影响。遇到导入问题的概率非常低,但是,因为当时极高的流量涌入 C 链,所以触发了漏洞的出现。这个漏洞导致了整个网络负载增加,但是,因为 Avalanche 更重视系统的安全性,从而,网络会自动锁定,并进行自我修复尝试。类似的漏洞曾发生在 Bitcoin 和 Zcash 等链上。

这个 bug 主要影响的是 P 链和 C 链,而 X 链就是 DAG,虽然 X 链还在运行,但网络正忙于不断的修复问题,从而大大降低了 X 链的运行效率。

你可能会问一些问题:

问:这是一个底层协议问题吗 ?

绝对不是 ! 这实际上是一个有效性检查过程的漏洞,就像 Bitcoin 和 Zcash 在过去铸币时遇到的有效性检查漏洞一样。

问:这是否意味着雪崩不能扩展 ?

答:这与雪崩协议无关,「雪崩」的工作完全正常。然而,连接雪崩和 EVM 的代码没有按预期工作,甚至对正确的节点也产生了问题状态,从而引起了网络上的节点拥堵。

问:资金安全吗 ?

A:资金都很安全。这是雪崩能确保的。

问:这是否意味着雪崩是集中的 ?

A:实际上正好相反!雪崩中没有任何一方可以单方面改变网络状态。如果雪崩是集中的,这个问题可以通过重新启动状态和失效坏区块来立即修复。相反,正因为没有任何一方能控制,因此补丁的完成,需要一个全网协调的网络升级。这是去中心化系统的重要特点,它更重视安全性。

问:这对雪崩意味着什么 ? 这种情况还会发生吗 ?

A:虽然遇到这样的 bug 并不是什么好事,但这次压力事件会使雪崩变的更加强大、稳定。其他的 bug 也可能会被发现,但是,Avalanche 在真实的生产环境中承受的高负荷越多,它的长期稳定性就会更好。因此,我们不希望遇到更多使我们夜不能寐的 bug,但遇到这类特殊情况也会促进我们网络变强。雪崩接受的压力测试越多,他将会变的越坚不可摧。