Paper 2018/380

Nearly Linear-Time Zero-Knowledge Proofs for Correct Program Execution

Jonathan Bootle, Andrea Cerulli, Jens Groth, Sune Jakobsen, and Mary Maller

Abstract

There have been tremendous advances in reducing interaction, communication and verification time in zero-knowledge proofs but it remains an important challenge to make the prover efficient. We construct the first zero-knowledge proof of knowledge for the correct execution of a program on public and private inputs where the prover computation is nearly linear time. This saves a polylogarithmic factor in asymptotic performance compared to current state of the art proof systems. We use the TinyRAM model to capture general purpose processor computation. An instance consists of a TinyRAM program and public inputs. The witness consists of additional private inputs to the program. The prover can use our proof system to convince the verifier that the program terminates with the intended answer within given time and memory bounds. Our proof system has perfect completeness, statistical special honest verifier zero-knowledge, and computational knowledge soundness assuming linear-time computable collision-resistant hash functions exist. The main advantage of our new proof system is asymptotically efficient prover computation. The prover's running time is only a superconstant factor larger than the program's running time in an apples-to-apples comparison where the prover uses the same TinyRAM model. Our proof system is also efficient on the other performance parameters; the verifier's running time time and the communication are sublinear in the execution time of the program and we only use a log-logarithmic number of rounds.

Metadata
Available format(s)
PDF
Publication info
Preprint. MINOR revision.
Keywords
Zero-knowledge proofssuccinct arguments of knowledgeTinyRAMideal linear commitments
Contact author(s)
andrea cerulli 13 @ ucl ac uk
History
2018-04-30: received
Short URL
https://ia.cr/2018/380
License
Creative Commons Attribution
CC BY

BibTeX

@misc{cryptoeprint:2018/380,
      author = {Jonathan Bootle and Andrea Cerulli and Jens Groth and Sune Jakobsen and Mary Maller},
      title = {Nearly Linear-Time Zero-Knowledge Proofs for Correct Program Execution},
      howpublished = {Cryptology ePrint Archive, Paper 2018/380},
      year = {2018},
      note = {\url{https://eprint.iacr.org/2018/380}},
      url = {https://eprint.iacr.org/2018/380}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.