Groth16 的高效依赖针对特定电路生成的可信设置,而 PLONK 方案的出现改变了这一格局。PLONK 使用一套通用的公共参考串,可以服务于任意电路,部署方无需为每个新电路重新举行可信设置仪式,显著降低了零知识应用的上线门槛。
PLONK 的核心思想是把电路约束统一编码为多项式恒等式。与 R1CS 的三线性约束不同,PLONK 采用排列论证与查表论证的组合:前者约束变量之间的置换关系,后者约束取值来自合法集合,两者配合可以表达任意算术电路。
通用参考串意味着信任假设的简化。参考串由固定数量的基点组成,与具体电路无关;只要生成仪式中至少有一位参与者诚实销毁秘密,参考串对所有人都是可信的。对于频繁更新业务逻辑的团队而言,这避免了每次迭代都重新举行仪式的巨大成本。
PLONK 的证明尺寸与验证成本略高于 Groth16,但仍在可接受范围内:证明包含若干群元素与域元素,验证需要数次配对运算。更重要的是,PLONK 家族衍生出了多种优化变体,通过自定义门、超前化简等技术,把约束数量进一步压缩。
在工程实践中,PLONK 的通用性带来了架构红利:验证合约可以复用同一套验证密钥,新电路上线只需部署新的证明密钥,链上合约无需变更。这让 PLONK 成为递归证明、隐私流转等需要频繁迭代电路的场景的理想选择。
从生态视角看,Groth16 与 PLONK 并非替代关系,而是各自占据优势区间:追求极致速度选 Groth16,追求部署灵活与长期演进选 PLONK。两种方案的交汇之处,是零知识证明技术持续向「更高效、更通用、更易用」方向演进的清晰脉络。