第197章 同源一致

作者:衲六 加入书签推荐本书

几乎同一时间,组合事件生成器在一次常规回归里出现一个“怪异但不显眼”的现象:

某批次随机性证明卡在三实现中一致通过,但在“影子对照实现”——一台只用于内测、从未公开的简陋校验器里,被判定为“字段缺失”。

影子对照实现不在校验共识协议里,只是机要监的一条旧习惯:

用一个粗糙的、不优化的、甚至有点笨的实现做最后的反常识对照。

过去它常常误报,所以没人依赖它。

可这一次,它提示的是“字段缺失”,而三实现都没看到缺失。

这不是一定是证明卡有问题。

更像是:三实现共同忽略了某个字段。

共同忽略,往往意味着共同代码路径。

共同代码路径,往往意味着同源。

proofkit被点亮在屏幕上时,答案已经写在空气里。

---

###四、同源一致的攻击方式:不改你验证结果,只改你“看见什么字段”

proofkit做的事情很基础:解析证明卡、规范化字段、输出校验结论。

它最容易藏刀的地方,不是算法,而是“规范化”。

只要在规范化过程中:

*把某个字段视为“可选”,缺失也当作通过;

*把某个字段做“容错合并”,把缺失解释为默认值;

*把某个字段在序列化时截断或修剪;

*把某个字段的哈希域从混合里拿掉;

那么三实现会同时“看不见”那条缺失。

上一页 返回目录 下一页