Halo2 FRI Gadget
Posted mutourend
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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(\\textevaluation\\_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
以上是关于Halo2 FRI Gadget的主要内容,如果未能解决你的问题,请参考以下文章
Halo2 学习笔记——设计之Proving system之Inner product argument