@ShieldedLabs 的 Crosslink 里程碑 4a 取得了重大进展: - 修复了 ms3 中的 2 个重大漏洞 - 用户体验大大改善,BFT 名单上的参与者增加了 ~x3 - 我们的新定制 BFT 证明比之前的 sdk 更加稳定 - 我们经历了一个已知设计缺陷导致的 BFT 安全失败(不是 BFT 的漏洞) 系好安全带:🧵
@ShieldedLabs 由于 PoW 同步超时与低矿工难度之间的代码架构阻抗不匹配,我们的网络经常出现长时间的 PoW 分裂。在工作坊之前,我们没有尝试修复这个问题,而是加倍努力改善我们的新 BFT、用户体验和可视化工具。 为什么? …
@ShieldedLabs 为什么不修复明显的已知问题? 因为我们正在优先考虑测试协议的韧性、诊断功能和用户体验。 这实际上是一个完美的缺陷,可以在证明 BFT 韧性、可视化工具和诊断技术的同时保留。
@ShieldedLabs 代码架构的阻抗不匹配基本上模拟了一个“高度分区”的网络,就好像矿工和BFT节点之间的互联网连接经常失败,并偶尔修复。 这展示了Crosslink的韧性,效果远超我的预期。
@ShieldedLabs 我截了一张关于在 Crosslink 结构中非常长的 PoW 分叉的截图。在这里你可以看到,尽管存在非常长的 PoW 分叉,但 Crosslink 的证明是一致的:它们不会跨越分叉跳跃;也就是说,最终性安全得到了保留。
@ShieldedLabs 由于已知的实现差距,发生了一次安全违规:Zebra 采用了类似于 Bitcoin 的 100 区块 "YOLO 最终性",而我们尚未确保 BFT 最终性是至高无上的。 添加重度分区后,我们在一些节点超过 100 个 PoW 区块不同步后触发了安全违规。
@ShieldedLabs 好吧,这显然是一个已知的安全漏洞,真可惜,我们来修复它吧,对吧? 是的,但有一个很好的转机。我们本可以说“好的,漏洞已记录,下次再来”。 而是: …
我们即兴进行了现场 BFT 摊位恢复! 我们能够重新启动不同步的 BFT 节点,并在不干扰 PoW 的情况下恢复 BFT(名册未修改),这验证了 Crosslink 的一个基石: 安全性与任一子协议一样强:BFT 失败并没有 derail PoW。
不过要明确的是,这并不是一个现实的BFT重启。我们依赖于BFT状态的当前短暂性质来忘记冲突的签名。 尽管如此,这仍然是一个完全即兴的意外发展。 为这个一般操作流程和Crosslink验证获得额外经验值。
@ShieldedLabs 在那之后(MS5结束后),我们将在2026年大部分时间里*重新实现*一个经过强化的、生产就绪的节点,利用我们在这个原型阶段的所有设计/实现经验。 2026年 = 审查的考验!来吧。 火箭护盾升起!🚀🛡️
5.37K