在基于双线性配对群设计的简洁的非交互零知识证明协议中,Groth在Crypto16中的工作实现了证明长度短(3个群元素)、验证复杂度低(3次双线性映射)等诸多优势,但缺陷是方案依然有着较高的证明复杂度。为了降低证明复杂度,我们考虑将证明者的证明工作委托给代理方来代理计算的场景。在传统的简洁的非交互式零知识证明方案中,证明者需要使用陈述x和证据w来为验证者生成证明。在证明者的计算能力受限的场景下,证明者希望将自己的证明工作量委托给其他代理方。一种直观的方法是,证明者将证据w分享给代理方。通过这种方式,任何获得证据w的代理方都可以利用陈述x和代理w生成证明。然而这种做法显然是不安全的,因为证明代理带来证据w的滥用。基于这样的原因,我们希望可以设计一个安全且可以代理证明计算的zk-SNARK方案 。
是否可以设计一个新的zk-SNARK方案,其中证明者可以在不泄露证据w的情况下委托证明工作?
本工作中,我们致力于通过设计多代理方的场景来规避上述关键问题。我们提出了可代理简洁的非交互式零知识证明的概念,允许证明者将其证明能力代理给多个代理方,每个代理方获得证据w的一部分,这部分本身不泄露证据w的信息,但多个代理方可以合作完成证明的生成。同时本工作希望基于算术电路可满足性问题,来给出多代理方的可代理简洁的非交互式零知识证明的具体构造,并在通用群模型下保障方案的安全性。
在多代理方的可代理简洁的非交互式零知识证明的具体构造中,我们使用了基于拉格朗日插值多项式的秘密共享方案,利用秘密共享方案的安全性保障了秘密证据w的安全性,利用秘密共享方案的加法性和乘法性保障了验证者对代理证明的聚合验证,进而保障了方案的完备性;在通用群模型下,实现了方案的可靠性;并利用双线性映射群中群元素的不可区分性保障了方案的零知识性。
本工作中,我们提出了首个可代理简洁的非交互式零知识证明的概念,可代理简洁的非交互式零知识证明的性质由参数
我们也构造了一种针对算术电路可满足性问题(C-SAT)的多代理方的