Halo2 FRI Gadget

1. 引言

Eli Ben-Sasson等人2018年论文《Fast Reed-Solomon Interactive Oracle Proofs of Proximity》中首次引入了名为 “FRI IOP (Fast Reed-Solomon Interactive Oracle Proof of Proximity)” 的具有特定degree bound的单变量多项式承诺方案,其包含了2个阶段:

  • 1)承诺阶段:Prover首先,对a Merkle tree of ( 基于某domain的)polynomial evaluations 进行commit。然后在后续的 log ⁡ n \log n logn轮为每轮生成新的evaluation commitments,在每轮中,相应的 domain size 和 polynomial degree都将依次reduced by a power of two(因此将该过程称为folding过程)。
  • 2)query阶段:Verifier选择random index,请求Prover提供每一轮对应该random index的evaluation值,以及相应的authentication paths。
    Verifier使用所收到的evaluations subset,即可确认Prover在folding流程中是正确执行的。
    Verifier的runtime为 log ⁡ ( evaluation_domain_size ) \log(\text{evaluation\_domain\_size}) log(evaluation_domain_size),query流程可重复任意次数,直到达到指定level的soundness。

实现Halo2 FRI Gadget有助于推动Halo2的递归速度。
开源代码见:

当前该库:

  • 支持FRI verifier circuit for BN254 scalar field(未来将支持Goldilocks)。

当前在M1上,对于BN254性能情况为:【BN254要慢很多】

  • domain size为 2 15 2^{15} 215,28次FRI query,remainder degree为16,生成proof用时约3秒;
  • 当domain size增加到 2 17 2^{17} 217的话,用时约20秒。

参考资料

[1] Halo2 FRI Gadget

猜你喜欢

转载自blog.csdn.net/mutourend/article/details/128748454