A Study of Statistical Zero-Knowledge Proofs Salil Pravin
Total Page:16
File Type:pdf, Size:1020Kb
A Study of Statistical Zero-Knowledge Proofs by Salil Pravin Vadhan A.B., Mathematics and Computer Science, Harvard University (1995) Certificate of Advanced Study in Mathematics, Cambridge University (1996) Submitted to the Department of Mathematics in partial fulfillment of the requirements for the degree of Doctor of Philosophy at the MASSACHUSETTS INSTITUTE OF TECHNOLOGY September 1999 @ Salil Pravin Vadhan, 1999. All rights reserved. The author hereby grants to MIT permission to reproduce and distribute publicly paper and electronic copies of this thesis document in whole or in part. A uthor ........... .'v --~-- g -. - --- ---. - .---------------------------- Dtopartment of Mathematics August 6, 1999 ,/1 I; Certified by ....... .. .. - .. -. .... - ...- .. .-- fi Gold asser RSA Professor of Computer Science Thesis Supervisor .. V... ...... V J .. ................ Accepted by ......... c alS p. e Michael Sipser Chairman, Applied Mathematics Committee A A ccepted by ................. ...--.. - -- -- - Tomasz Mrowka Chairman, Departmental Committee on Graduate Students MASSACHUSETTS INSTITUTE LIBRARIES A Study of Statistical Zero-Knowledge Proofs by Sail Pravin Vadhan Submitted to the Department of Mathematics on August 6, 1999, in partial fulfillment of the requirements for the degree of Doctor of Philosophy Abstract Zero-knowledge interactive proofs, introduced by Goldwasser, Micali, and Rackoff, are fas- cinating constructs which enable one party (the "prover") to convince another party (the "verifier") of an assertion, with the property that the verifier learns nothing other than the fact that the assertion being proven is true. In addition to being powerful tools for construct- ing secure cryptographic protocols, zero-knowledge proofs yield rich classes of computational problems that are of both complexity-theoretic and cryptographic interest. This thesis is a detailed investigation of statisticalzero-knowledge proofs, which are zero- knowledge proofs in which the condition that the verifier "learns nothing" is interpreted in a strong statistical sense. We begin by showing that the class SZK of problems possessing such proofs has two natural complete problems. These problems essentially amount to approximating the statistical difference or the difference in entropies between two "efficiently sampleable" distributions. Thus, they give a new characterization of SZK which makes no reference to interaction or zero knowledge. They also simplify the study of statistical zero knowledge, as questions about the entire class SZK can be reduced to examining these two particular complete problems. Using these complete problems as tools, we proceed to answer a number of fundamental questions about zero-knowledge proofs, including: " Transforming any statistical zero-knowledge proof against an honest verifier (i.e., a verifier that follows the specified protocol) into one which is zero knowledge even against cheating verifiers that deviate arbitrarily from the specified protocol. This transformation applies to public-coin computational zero-knowledge proofs as well. " Constructing statistical zero-knowledge proofs for complex assertions built out of sim- pler assertions already shown to be in SZK. Via the complete problems, these closure properties translate to new methods for manipulating "efficiently sampleable" distri- butions, which may be of independent interest. " Obtaining simpler proofs of most previously known results about statistical zero knowledge, such as: Okamoto's result that SZK is closed under complement; Fortnow, Aiello, and Histad's upper bounds on the complexity of SZK; and Okamoto's result that every statistical zero-knowledge proof can be transformed into a public-coin one. Thesis Supervisor: Shafi Goldwasser Title: RSA Professor of Computer Science 4 Acknowledgments The most daunting task facing a new graduate student is to find a research topic which is interesting yet approachable. I was rescued from this very early on by my advisor, Shafi Goldwasser. One month into graduate school, Shafi started me on a research problem that led to all the work in this thesis. (Alas, I still do not know the answer to the question she asked.) For that and her endless supply of other exciting research problems; for the way she always helped me think about research from a wider perspective; and for all her down-to-earth advice and encouragement, I will be forever grateful. I was very lucky to start my Ph.D. when Oded Goldreich was visiting MIT. Much of the work in this thesis is joint work with Oded, and from him I learned a tremendous amount about both doing research and presenting it. Oded's trust in me has given me confidence as a researcher, and I am deeply indebted to him. I also thank Amit Sahai, with whom I shared my first research experiences in graduate school and collaborated on much of the work in this thesis. In the course of this research, I discussed these topics with many different people. These conversations not only affected my perspective on the area, but also helped refocus my research efforts. In this regard, I thank Sanjeev Arora, Mihir Bellare, Danny Gutfreund, Moni Naor, Erez Petrank, Madhu Sudan, Luca Trevisan, and Avi Wigderson, though un- doubtedly I have forgotten a few. There are many other people who have made my educational experience to this point so exciting and pleasurable, and who have helped shape my view of mathematics and computer science. There are too many to name individually, so I will be content to send my thanks to a few important groups. First, to my fellow students, the faculty, and the postdocs in the MIT Theory of Computation group for making it such a fun and inspiring place to be a graduate student. Second, to all my collaborators on research endeavors not described in this thesis, for all they have taught me. Third, to some wonderful teachers and engaging fellow students at Oceanside High School and Harvard College, for sparking my interest in mathematics and computer science well before I came to MIT. My most important acknowledgment is to my family and friends, who have filled my non- academic life with happiness. Most significantly, I refer to my parents, who have always lovingly encouraged me to pursue my passions; my brother, Nehal, who always makes sure that I am having fun along the way; and my wife, Jen, who has given me a lifetime to look forward to. My graduate studies were supported primarily by a Department of Defense National Defense Science and Engineering Graduate Fellowship and partially by DARPA grant DABT63-96- C-0018. 6 To Jen 8 Contents 1 Introduction 11 1.1 The magic of zero-knowledge proofs .. ... ... ... .. ... ... .. 11 1.2 Informal definitions. .. ... ... ... ... ... ... ... ... ... .. 12 1.3 Motivation for our study ... ... ... ... ... ... ... ... ... .. 14 1.4 Results & structure of this thesis ... ... .... ... ... .... ... 16 2 Definitions 19 2.1 An example . ... ... ... ... ... ... ... ... ... ... .. 19 2.2 Notation and preliminaries . ... ... ... ... ... ... ... ... .. 22 2.3 Zero-knowledge proofs . .. ... ... ... .. ... ... .. ... ... .. 24 2.4 Contrast with the GMR definition .. ... ... ... ... ... ... ... 28 2.5 Complexity aspects of interactive proofs .. ... ... .... ... .... 30 3 Complete Problems 33 3.1 STATISTICAL DIFFERENCE . ... .... ... ... .... ... ... .. 34 3.2 Analyzing public-coin HVSZK proofs . .. ... ... ... ... .. ... 43 3.3 Analyzing general HVSZK proofs . ... ... ... ... ... ... ... 52 3.4 ENTROPY DIFFERENCE reduces to STATISTICAL DIFFERENCE . ... .. 60 3.5 The Completeness Theorem . ... ... ... ... ... ... ... ... .. 66 4 Applications of the Complete Problems 67 4.1 Efficient HVSZK proof systems . ... ... ... ... ... ... ... .. 68 4.2 The complexity of SZK ... ... ... ... ... ... ... ... ... .. 69 4.3 Expected polynomial-time simulators . .. ... ... ... .. ... ... .. 71 4.4 Reversing statistical difference . ... .... ... ... .. ... .... ... 71 4.5 Closure properties . ... ... ... .. ... ... ... .. ... ... .. 73 4.6 Knowledge complexity .. ... ... ... ... ... ... ... ... ... 79 4.7 Perfect and computational zero knowledge . ... ... ... ... ... ... 89 4.8 Zero-knowledge proofs for hard problems imply one-way functions .. ... 92 5 Private Coins vs. Public Coins 97 5.1 Motivation and results .. ... ... ... ... ... ... ... ... ... 97 5.2 O verview .. ... ... ... ... ... ... ... ... ... .. .. 99 5.3 Subprotocol specifications . ... ... ... .. ... ... .. ... ... .. 106 5.4 The transformed proof system . ... ... ... .. ... ... .. ... ... 108 9 10 CONTENTS 5.5 Okamoto's subprotocols ....... ............................. 115 6 Coping with Cheating Verifiers 125 6.1 D efinitions . ... .. ... ... ... .. ... ... ... .. ... ... .. 126 6.2 A cheating-verifier SZK proof system for SD 2 ... .. ... .. ... .. 128 6.3 Transforming honest-verifier proofs to cheating-verifier ones .. ... ... 132 6.4 Random selection .. ... ... ... .... ... ... ... ... ... ... 141 6.5 Corollaries and open problems .... ... .... ... ... .... ... 146 7 Noninteractive SZK 149 7.1 The noninteractive model . .. ... .. ... .. .. ... .. ... .. ... 150 7.2 The Completeness Theorem . ... ... ... .. ... ... .. ... ... 154 7.3 ENTROPY APPROXIMATION is in NISZK .. .. .. ... .. ... .. ... 155 7.4 Proof of the Completeness Theorem .. ... .. ... ... .. ... ... 159 7.5 Comparing SZK and NISZK ... ... ... .. ... ... .. ... ... 161 7.6 Other applications of the Completeness Theorem ... ... .. ... ... 166 8 Conclusion 171 A Chernoff Bounds 173 B Hashing Lemmas 175 B.1 Proof of