FRI预备知识:多项式的阶、群与有限域、Reed-Solomon码、FRI动机、密码工具Merkle树
Plonky2是一种基于多项式承诺和Plonk的PIOP交互式证明的零知识证明协议,专注于通过FRI技术实现高效的zkSNARK。
FRI原理及其应用分析
双线性对是一种数学函数,广泛用于设计密码协议,如基于身份的加密、数字签名和零知识证明等。
介绍了Miller Loop算法在椭圆曲线密码学中的应用,特别是在计算双线性对时的作用。还讨论了几种优化方法,包括预计算、窗口法、优化曲线选择、Frobenius自同态、高效标量乘法算法和并行化,这些方法能显著提升Miller Loop的计算效率。
MemoryStark确保内存访问操作是按时间和地址顺序进行的,并且读取的值与之前写入的值一致。LogicSNARK确保逻辑运算的正确性。
本文介绍了一个MIPS模拟器的设计,支持MIPS ELF程序的加载、执行和段生成。模拟器通过逐步执行指令并检查退出条件,支持常规执行和段分割两种模式。内存管理采用4KB页面并通过哈希树计算镜像ID,优化了修改页面的哈希计算,提升了性能。主要数据结构包括仿真状态、内存和段信息。
ZKM Prover利用Plonky2构造零知识证明系统,其主要步骤涉及对每个Plonkish表的证明生成、聚合及压缩处理。
递归零知识证明(RecursiveZero-KnowledgeProof,简称递归ZKP)是一种使用递归概念的零知识证明,它通过递归的方式生成可更高效验证的证明,某些情况下还可以将多个证明合并成一个单一的证明。这在区块链系统中尤为重要,因为在这些系统中,效率和可扩展性是至关重要的。
在零知识证明中,lookup操作用于验证多个表格之间的关系。首先,将多个表格的数据聚合起来形成查询条件。然后,通过lookup在目标表格中查找符合条件的记录。最后,零知识证明生成一个证明,验证查询结果的正确性,而不泄露任何具体数据。
lookup
zkVM 测试报告
DEEP-FEI理论与分析
通过引入Lookup argument协议,可以有效减小电路的复杂度。
zkVM(零知识虚拟机)是一种利用零知识证明(ZKP)来保证计算的正确性、完整性和隐私性的虚拟机。
Poseidon的执行过程包括以下6个步骤:初始化、完整轮次计算、部分轮次计算、电路约束生成、生成多项式承诺、证明生成与验证。整个过程用于生成最终的零知识证明。