在探索 @boundless_xyz 生态时,我发现了 @RiscZero R0VM 应用中的一个有趣用例:ZK 漏洞证明 - zkPoEx。 在所有漏洞中,最关键的是那些存在于实时产品中的漏洞。在加密领域,由于关键漏洞会立即导致资金被利用,因此实时漏洞的货币价值非常高。 通常,当发现此类漏洞时,像 @immunefi 或 @HackenProof 这样的漏洞赏金平台充当中介,以验证漏洞的真实性和严重性,并进行赏金谈判。这个结构有一个问题:在白帽子获得赏金之前,漏洞细节必须被披露。从项目的角度来看,在收到漏洞报告并进行审核后,他们可以修补漏洞,然后声称它是“超出范围”或降低其严重性。在极端情况下,中介可能会看到漏洞并先行利用它。 zkPoEx 通过 RiscZero 的 R0VM,允许在不透露漏洞细节的情况下使用 ZK 证明漏洞的存在。由于它可以证明满足特定条件的漏洞的存在,漏洞发现者可以期待项目提供更合作的回应,例如要求部分预付款。 更详细地说,报告者使用 calldata/exploit 合约作为私有输入,攻击时的状态作为公共输入,以在 R0VM 中更改目标合约的状态值。执行后,由 R0VM Prover 生成的 tx 收据和证明可以验证攻击是否满足特定条件,例如余额变化。 我个人认为这种方法对于报告实时漏洞非常有用,但我还没有看到使用这种方法报告漏洞的案例。似乎是因为项目需要提前提供条件……如果这样的系统在实践中确实难以实施,我想知道会面临什么挑战。
875