Zero-Knowledge Twenty Years After Its Invention
Total Page:16
File Type:pdf, Size:1020Kb
ZeroKnowledge twenty years after its invention Oded Goldreich Department of Computer Science and Applied Mathematics Weizmann Institute of Science Rehovot Israel Email odedwisdomweizmannaci l First draft p osted in July Current version December Abstract Zeroknowledge pro ofs are pro ofs that are b oth convincing and yet yield nothing b eyond the validity of the assertion b eing proven Since their introduction ab out twenty years ago zeroknowledge pro ofs have attracted a lot of attention and have in turn contributed to the development of other areas of cryptography and complexity theory We survey the main denitions and results regarding zeroknowledge pro ofs Sp ecically we present the basic denitional approach and its variants results regarding the p ower of zero knowledge pro ofs as well as recent results regarding questions such as the comp oseability of zeroknowledge pro ofs and the use of the adversarys program within the pro of of security ie nonblackbox simulation Contents Introduction The Basics Advanced Topics Comments I The Basics Preliminaries Interactive pro ofs and argument systems Computational Diculty and OneWay Functions Computational Indistinguishability Denitional Issues The Simulation Paradigm The Basic Denition Variants Universal and blackbox simulation Honest verier versus general cheating verier Statistical versus Computational ZeroKnowledge Strict versus exp ected probabilistic p olynomialtime ZeroKnowledge Pro ofs for every NPset Constructing ZeroKnowledge Pro ofs for NPsets Using ZeroKnowledge Pro ofs for NPsets II Advanced Topics Comp osing zeroknowledge proto cols Sequential Comp osition Parallel Comp osition Concurrent Comp osition with and without timing Using the adversarys program in the pro of of security Digest Witness Indistinguishability and the FLSTechnique Pro ofs of Knowledge How to dene pro ofs of knowledge How to construct pro ofs of knowledge NonInteractive ZeroKnowledge Statistical ZeroKnowledge Transformations Complete problems and structural prop erties Knowledge Complexity Resettability of a partys randomtap e rZK and rsZK Zeroknowledge in other mo dels A source of inspiration for complexity theory References Introduction ZeroKnowledge pro ofs introduced by Goldwasser Micali and Racko are fascinating and extremely useful constructs Their fascinating nature is due to their seemingly contradictory de nition zeroknowledge pro ofs are b oth convincing and yet yield nothing b eyond the validity of the assertion b eing proven Their applicability in the domain of cryptography is vast they are typically used to force malicious parties to b ehave according to a predetermined proto col In addition to their direct applicability in Cryptography zeroknowledge pro ofs serve as a go o d b enchmark for the study of various problems regarding cryptographic proto cols eg the preservation of security under various forms of proto col comp osition and the use of of the adversarys program within the pro of of security In this tutorial we present the basic denitions and results regarding zeroknowledge proto cols as well as some recent developments regarding this notion The rest of the introduction provides a highlevel summary of the tutorial X X is true! ?? ? ! ? ! ! Figure Zeroknowledge pro ofs an illustration The Basics Lo osely sp eaking zeroknowledge pro ofs are pro ofs that yield nothing b eyond the validity of the assertion That is a verier obtaining such a pro of only gains conviction in the validity of the asser tion This is formulated by saying that anything that is feasibly computable from a zeroknowledge pro of is also feasibly computable from the valid assertion itself by a socalled simulator Variants on the basic denition include Consideration of auxiliary inputs Mandating of universal and blackbox simulations Restricting attention to honest or rather semihonest veriers The level of similarity required of the simulation It is wellknown that zeroknowledge proofs exist for any NPset provided that oneway functions exist This result is a p owerful to ol in the design of cryptographic proto cols b ecause it enables to force parties to b ehave according to a predetermined proto col ie the proto col requires parties to provide zeroknowledge pro ofs of the correctness of their secretbased actions without revealing these secrets Organization of Part We start with some preliminaries Section which are central to the mindset of the notion of zeroknowledge In particular we review the denitions of inter active pro ofs and arguments as well as the denitions of computational indistinguishability which underlies the denition of general zeroknowledge and of oneway functions which are used in constructions We then turn to the denitional treatment of zeroknowledge itself Section Finally we discuss the constructibility and applicability of zeroknowledge pro ofs Section Advanced Topics We start with two basic problems regarding zeroknowledge which actually arise also with resp ect to the security of other cryptographic primitives The rst question refers to the preservation of security ie zeroknowledge in our case under various types of comp osition op erations We survey the known results regarding sequential parallel and concurrent execution of arbitrary andor sp ecic zeroknowledge proto cols The main facts are Zeroknowledge with resp ect to auxiliary inputs is closed under sequential comp osition In general zeroknowledge is not closed under parallel comp osition Yet some zeroknowledge pro ofs for NP preserve their security when many copies are executed in parallel Further more some of these proto col use a constant number of rounds Some zeroknowledge pro ofs for NP preserve their security when many copies are executed concurrently but such a result is not known for constantround proto cols The second basic question regarding zeroknowledge refers to the usage of the adversarys program within the pro of of security ie demonstration of the zeroknowledge prop erty For years all known pro ofs of security used the adversarys program as a blackbox ie a universal simulator was presented using the adversarys program as an oracle Furthermore it was b elieved that there is no advantage in having access to the co de of the adversarys program Consequently it was conjectured that negative results regarding blackbox simulation represent an inherent limitation of zeroknowledge This b elieve has b een refuted recently by the presentation of a zeroknowledge argument for NP that has imp ortant prop erties that are unachievable by blackbox simulation For example this zeroknowledge argument uses a constant number of rounds and preserves its security when an apriori xed p olynomial number of copies are executed concurrently Organization of Part The comp oseability of zeroknowledge pro ofs is discussed in Section and the use of the adversarys program within the pro of of security is discussed in Section Other topics treated in the second part of this tutorial include pro ofs of knowledge Section Non Interactive ZeroKnowledge pro ofs Section Statistical ZeroKnowledge Section Knowledge Complexity Section and resettability of a partys randomtap e Section Comments The notion of zeroknowledge has had a vast impact on the development of cryptography In particular zeroknowledge pro ofs of various types were explicitly used as a to ol in a variety of applications We wish to highlight also the indirect impact of zeroknowledge on the denitional This result falls short of achieving a fully concurrent zeroknowledge argument b ecause the number of concurrent copies must b e xed b efore the proto col is presented Sp ecically the proto col uses messages that are longer than the allowed number of concurrent copies approach underlying the foundations of cryptography cf Section In addition zeroknowledge has served as a source of inspiration for complexity theory cf Section A Brief Historical Account regarding the main part of the tutorial The concept of zero knowledge has b een introduced by Goldwasser Micali and Racko Although their work which also introduced interactive pro of systems has rst app eared in STOC early versions of it have existed as early as in and were rejected three times from ma jor conferences ie FOCS STOC and FOCS The wide applicability of zeroknowledge pro ofs was rst demonstrated by Goldreich Micali and Wigderson who showed how to construct zeroknowledge pro of systems for any NPset using any commitment scheme An imp ortant technique for the design of zeroknowledge was introduced by Feige Lapidot and Shamir based on the notion of witness indistinguishability