Scalable Zero Knowledge Via Cycles of Elliptic Curves

被引:46
作者
Ben-Sasson, Eli [1 ]
Chiesa, Alessandro [2 ]
Tromer, Eran [3 ]
Virza, Madars [4 ]
机构
[1] Technion, Haifa, Israel
[2] Univ Calif Berkeley, Berkeley, CA 94720 USA
[3] MIT, 77 Massachusetts Ave, Cambridge, MA 02139 USA
[4] Tel Aviv Univ, Tel Aviv, Israel
基金
欧洲研究理事会;
关键词
Computationally-sound proofs; Proof-carrying data; Zero knowledge; Elliptic curves; PAIRING COMPUTATION; DISCRETE LOGARITHMS; ARGUMENTS; REDUCTION; PROOFS;
D O I
10.1007/s00453-016-0221-0
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Non-interactive zero-knowledge proofs of knowledge for general NP statements are a powerful cryptographic primitive, both in theory and in practical applications. Recently, much research has focused on achieving an additional property, succinctness, requiring the proof to be very short and easy to verify. Such proof systems are known as zero-knowledge succinct non-interactive arguments of knowledge (zk-SNARKs), and are desired when communication is expensive, or the verifier is computationally weak. Existing zk-SNARK implementations have severe scalability limitations, in terms of space complexity as a function of the size of the computation being proved (e.g., running time of the NP statement's decision program). First, the size of the proving key is quasilinear in the upper bound on the computation size. Second, producing a proof requires "writing down" all intermediate values of the entire computation, and then conducting global operations such as FFTs. The bootstrapping technique of Bitansky et al. (STOC ' 13), following Valiant (TCC ' 08), offers an approach to scalability, by recursively composing proofs: proving statements about acceptance of the proof system's own verifier (and correctness of the program's latest step). Alas, recursive composition of known zk-SNARKs has never been realized in practice, due to enormous computational cost. Using new elliptic-curve cryptographic techniques, and methods for exploiting the proof systems' field structure and nondeterminism, we achieve the first zk-SNARK implementation that practically achieves recursive proof composition. Our zk-SNARK implementation runs random-access machine programs and produces proofs of their correct execution, on today's hardware, for any program running time. It takes constant time to generate the keys that support all computation sizes. Subsequently, the proving process only incurs a constant multiplicative overhead compared to the original computation's time, and an essentially-constant additive overhead in memory. Thus, our zk-SNARK implementation is the first to have a well-defined, albeit low, clock rate of "verified instructions per second".
引用
收藏
页码:1102 / 1160
页数:59
相关论文
共 113 条
[1]  
Ajtai M., 1996, Proceedings of the Twenty-Eighth Annual ACM Symposium on the Theory of Computing, P99, DOI 10.1145/237814.237838
[2]  
Angluin D., 1977, Proceedings of the ninth annual ACM symposium on Theory of computing (STOC '77), P30
[3]  
[Anonymous], 1998, Comm. Math. Univ. Sancti Pauli
[4]  
[Anonymous], [No title captured]
[5]  
[Anonymous], 2012, ITCS, DOI 10.1145/ 2090236.2090263
[6]  
[Anonymous], 1996, ELECT C COMPUT COMPL
[7]  
[Anonymous], 1991, P 23 ANN ACM S THEOR, DOI DOI 10.1145/103418.103428
[8]  
[Anonymous], P 22 NETW DISTR SYST
[9]   ELLIPTIC-CURVES AND PRIMALITY PROVING [J].
ATKIN, AOL ;
MORAIN, F .
MATHEMATICS OF COMPUTATION, 1993, 61 (203) :29-68
[10]   ADSNARK: Nearly Practical and Privacy-Preserving Proofs on Authenticated Data [J].
Backes, Michael ;
Barbosa, Manuel ;
Fiore, Dario ;
Reischuk, Raphael M. .
2015 IEEE SYMPOSIUM ON SECURITY AND PRIVACY SP 2015, 2015, :271-286