1. Folding Schemes:Nova, SuperNova 以及 Sangria
前序博客有:
- Nova: Recursive Zero-Knowledge Arguments from Folding Schemes学习笔记
- SuperNova:为多指令虚拟机执行提供递归证明
- 基于Nova/SuperNova的zkVM
- Sangria:PLONK + Folding
参考资料见:
- Sangria: a Folding Scheme for PLONK
- 2023年4月视频 ZK9: Sangria is relaxed PLONK a Nova-like folding scheme for PLONK – Nicolas Mohnblatt (Geometry)
这可能是当前zk研究中最重要的新兴思想。
传统思想为证明每个instance,然后将这些results rolling up。而与此形成鲜明对比的为:
- Folding Schemes(Nova, SuperNova 以及 Sangria)系列方案通过将未经证明的instance combine来实现Incrementally Verifiable Computation (IVC)。
- Nova引入了将R1CS instances合并的技术。
- SuperNova将Nova推广为支持任意指令集。
- Sangria采用相同的技术来合并(relaxed)PLONK instances。
很自然产生的一个研究问题是:
- 能否将Folding Schemes技术用于AIR-FRI STARKs?
- 当前答案并不明朗,因为Folding Schemes技术需依赖于类似KZG等的同态加密方案。
2. The Red Wedding
参考资料见:
- 2023年4月视频资料 ZK9: The Red Wedding: Marrying DEEP-AIR + PLONK – Ferdinand Sauer & Alan Szepieniec (Neptune/Triton)
该思想由TritonVM团队提出,致力于通过将STARK系统中Verifier的工作转移给Prover,以 降低验证时长。特别地,Prover会生成一个SNARK proof,以 减轻Verifier 在DEEP query point evaluate the AIR constraints的工作。
相关研究问题有:
- inner SNARK verification的计算开销 与 与其致力于替代的AIR evaluation计算开销 的对比情况?
- 在inner SNARK中应采用哪种承诺方案?
- SNARK verification所包含的范围有哪些?除AIR constraint evaluation之外,是否还应包含arithmetic运算或哈希运算?
3. LogUp: Batched Lookup Arguments
参考资料有:
- 2023年4月视频资料 ZK9: logUp - Lookup arguments based on the logarithmic derivative - Ulrich Haböck
- Orbis Labs和Polygon Zero团队2023年3月论文 Multivariate lookups based on logarithmic derivatives
对于Prover重复做相同lookup的场景下,与PLOOKUP相比,LogUp算法可将lookup table中所需的列数减少约50%。RISC Zero中有约30%的witness-generation用于生成基于PLOOKUP lookup argument所需的列,未来RISC Zero团队会考虑使用LogUp算法。
这里的前提是,通过使用logarithmic derivatives,可将grand product accumulation 转化为(更便宜的)grand sum accumulation。LogUp论文(Orbis Labs和Polygon Zero团队2023年3月论文Multivariate lookups based on logarithmic derivatives)从multivariate IOP(多变量IOP)的角度阐述了这项技术;Tip5论文(Neptune和Polygon团队 2023年论文 The Tip5 Hash Function for Recursive STARKs)描述了该技术的一个版本,使其更适合单变量场景。
4. The Mersenne Prime 2 31 − 1 2^{31}-1 231−1
参考资料有:
- 2023年3月视频 Daniel Lubarov, Brainstorming Plonky3
- Slides Plonky3?
在2023年3月的Devner,Daniel Lubarov 讨论了使用order为 2 31 − 1 2^{31}-1 231−1的有限域来构建Plonky3的想法。该有限域尤其适合用于处理有限域计算,因为 2 31 = 1 2^{31}=1 231=1。主要障碍在于该有限域对NTT不友好,因为 2 31 − 2 2^{31}-2 231−2分解后不具有很多2。
有其它选项来使Mersenne Prime 2 31 − 1 2^{31}-1 231−1可用么?
- 将基于FRI的承诺方案 变为 基于2022年论文 Orion: Zero Knowledge Proof with Linear Prover Time 或 2021年论文 Brakedown: Linear-time and post-quantum SNARKs for R1CS。
- 使用不依赖于high 2-adicity的mixed-radix版本的FRI。
- 在quadratic extension field上做NTT(注意:quadratic extension multiplicative group具有的order为 2 62 − 2 32 2^{62}-2^{32} 262−232,从而具有的2-adicity为 2 32 2^{32} 232)。
期待Polygon Zero团队在该领域的推进。
参考资料
[1] RISC Zero团队 Paul Gafni 2023年4月博客 Reflection on ZK Hack & ZK Summit