A Zero Knowledge Sumcheck and Its Applications
Total Page:16
File Type:pdf, Size:1020Kb
A Zero Knowledge Sumcheck and its Applications Alessandro Chiesa Michael A. Forbes Nicholas Spooner [email protected] [email protected] [email protected] UC Berkeley Simons Institute for the Theory of Computing University of Toronto and UC Berkeley April 6, 2017 Abstract Many seminal results in Interactive Proofs (IPs) use algebraic techniques based on low-degree polynomials, the study of which is pervasive in theoretical computer science. Unfortunately, known methods for endowing such proofs with zero knowledge guarantees do not retain this rich algebraic structure. In this work, we develop algebraic techniques for obtaining zero knowledge variants of proof protocols in a way that leverages and preserves their algebraic structure. Our constructions achieve unconditional (perfect) zero knowledge in the Interactive Probabilistically Checkable Proof (IPCP) model of Kalai and Raz [KR08] (the prover first sends a PCP oracle, then the prover and verifier engage in an Interactive Proof in which the verifier may query the PCP). Our main result is a zero knowledge variant of the sumcheck protocol [LFKN92] in the IPCP model. The sumcheck protocol is a key building block in many IPs, including the protocol for polynomial-space computation due to Shamir [Sha92], and the protocol for parallel computation due to Goldwasser, Kalai, and Rothblum [GKR15]. A core component of our result is an algebraic commitment scheme, whose hiding property is guaranteed by algebraic query complexity lower bounds [AW09; JKRS09]. This commitment scheme can then be used to considerably strengthen our previous work [BCFGRS16] that gives a sumcheck protocol with much weaker zero knowledge guarantees, itself using algebraic techniques based on algorithms for polynomial identity testing [RS05; BW04]. We demonstrate the applicability of our techniques by deriving zero knowledge variants of well-known protocols based on algebraic techniques. First, we construct zero knowledge IPCPs for NEXP starting with the Multi-prover Interactive Proofs of Babai, Fortnow, and Lund [BFL91]. This result is a direct application of our zero knowledge sumcheck and our algebraic commitment scheme, augmented with the use of ‘randomized’ low-degree extensions. We also construct protocols in a more restricted model where the prover and verifier engage in a standard Interactive Proof with oracle access to a uniformly random low-degree polynomial (soundness holds with respect to any oracle). In this setting we achieve zero knowledge variants of the protocols of Shamir and of Goldwasser, Kalai, and Rothblum. Keywords: zero knowledge; sumcheck; algebraic query complexity; probabilistically checkable and interactive proofs 1 Contents 1 Introduction 3 1.1 Prior techniques for achieving zero knowledge . .3 1.2 Our goal: algebraic techniques for zero knowledge . .4 1.3 Main result: a zero knowledge sumcheck . .4 1.4 Applications: delegating computation in zero knowledge . .6 2 Techniques 8 2.1 An algebraic approach for zero knowledge in the BFL protocol . .8 2.2 Algebraic commitments from algebraic query complexity lower bounds . .9 2.3 A zero knowledge sumcheck protocol . 11 2.4 Challenges: handling recursion . 12 2.5 Sum-product circuits . 13 3 Roadmap 15 4 Preliminaries 16 4.1 Basic notations . 16 4.2 Sampling partial sums of random low-degree polynomials . 16 4.3 Interactive probabilistically checkable proofs . 17 4.4 Zero knowledge for Interactive PCPs . 17 4.5 Sumcheck protocol and its zero knowledge variant . 18 5 Algebraic query complexity of polynomial summation 20 6 Zero knowledge sumcheck from algebraic query lower bounds 22 6.1 Step1 ................................................................ 24 6.2 Step2 ................................................................ 27 7 Zero knowledge for non-deterministic exponential time 28 8 Delegating sum-product computations 31 8.1 Intuition for definition . 31 8.2 Sum-product formulas . 32 8.3 Sum-product circuits . 35 9 Zero knowledge sum-product protocols 39 9.1 The case of sum-product evaluation . 39 9.2 The case of sum-product satisfaction . 43 10 Zero knowledge for polynomial space 45 11 Zero knowledge for the evaluation of low-depth circuits 48 11.1 Notations for layered arithmetic circuits . 49 11.2 Sum-product subcircuits and oracle inputs . 50 11.3 Sum-product subcircuits for layered arithmetic circuits . 50 11.4 Sum-product subcircuits for small-space Turing machines . 51 11.5 Proof of Theorem 11.1 . 52 Acknowledgments 54 A Algebraic query complexity of polynomial summation: details 55 A.1 Proof of Theorem 5.1 . 55 A.2 Proof of Corollary 5.3 . 55 A.3 Upper bounds . 56 B Proof of Theorem 7.2 via sum-product circuits 59 References 61 2 1 Introduction The notion of Interactive Proofs (IPs) [BM88; GMR89] is fundamental in Complexity Theory and Cryptography. An Interactive Proof for a language L is a protocol between a probabilistic polynomial-time verifier and a resource- unbounded prover that works as follows: given a common input x, the prover and verifier exchange some number of messages and then the verifier either accepts or rejects. If x is in L then the verifier always accepts; if instead x is not in L then the verifier rejects with high probability, regardless of the prover’s actions. The seminal results of Lund, Fortnow, Karloff, and Nisan [LFKN92] and Shamir [Sha92] demonstrate the surprising expressiveness of Interactive Proofs, in particular showing that every language decidable in polynomial space has an Interactive Proof. Research on IPs has recently focused on new and more refined goals, motivated by the paradigm of delegation of computation, in which a resource-limited verifier receives the help of a resource-rich prover to check the output of an expensive (but tractable) computation. In this setting bounding the complexity of the honest prover is important. While every IP protocol has a polynomial-space prover, this prover may run in superpolynomial time, even if the protocol is for a tractable language. Recent work has focused on doubly-efficient IPs, where the prover is efficient (it runs in polynomial time) and the verifier is highly efficient (it runs in, say, quasilinear time). Doubly-efficient IPs can be achieved, with various tradeoffs, for many types of computation: languages decidable by uniform circuits of polylogarithmic depth [GKR15]; languages decidable in polynomial time and bounded-polynomial space [RRR16]; and languages decidable by conjunctions of polynomially-many ‘local’ conditions [RG17]. A key building block in all of these protocols is the sumcheck protocol [LFKN92], which is an Interactive Proof for P claims of the form “ ~α2Hm F (~α) = 0”, where H is a subset of a finite field F and F is an m-variate polynomial over F of small individual degree. The use of sumcheck imbues the aforementioned protocols with an algebraic structure, where the verifier arithmetizes a boolean problem into a statement about low-degree polynomials, which can then be checked via the sumcheck protocol. This algebraic structure is not only elegant, but also very useful. Indeed, this structure is crucial not only for highly-efficient software and hardware systems for delegating computation [CMT12; TRMP12; Tha13; Tha15; WHGSW16; WJBSTWW17] but also for a diverse set of compelling theoretical applications such as memory delegation [CKLR11], refereed delegation [CRR13], IPs of proximity [RVW13], and many others. Despite these subsequent works demonstrating the flexibility of sumcheck to accommodate additional desirable properties, the zero knowledge [GMR89] properties of sumcheck have not been explored. This is surprising because zero knowledge, the ability of the prover to establish the validity of an assertion while revealing no insight into its proof, is highly desirable for the cryptographic applications of Interactive Proofs. Unfortunately, achieving zero knowledge is nontrivial because the sumcheck protocol reveals the results of intermediate computations, in particular the partial P sums ~α2Hm−i F (c1; : : : ; ci; ~α) for c1; : : : ; ci 2 F chosen by the verifier. These partial sums are in general #P-hard to compute so they convey significant additional knowledge to the verifier. The goal of this work is to enlarge the existing algebraic toolkit based on low-degree polynomials and use these tools to provide a native extension of the sumcheck protocol that is zero knowledge, and to explore applications of such an extension. As we discuss shortly, however, we cannot expect to do so within the model of Interactive Proofs. 1.1 Prior techniques for achieving zero knowledge We briefly describe why existing methods fall short of our goal, which is making the sumcheck protocol zero knowledge in an algebraic way. A seminal result in cryptography says that if one-way functions exist then every language having an IP also has a computational zero knowledge IP [GMR89; IY87; BGGHKMR88]; this assumption is ‘minimal’ in the sense that if one-way functions do not exist then computational zero knowledge IPs capture only “average-case” BPP [Ost91; OW93]. While powerful, such results are unsatisfactory from our perspective. First, cryptography adds significant efficiency overheads, especially when used in a non-blackbox way as these results do. Second, the results rely on transformations that erase all the algebraic structure of the underlying protocols. While these limitations can be mitigated by using cryptography that leverages some of the underlying structure [CD98], the costs incurred by the use of cryptography remain significant. Ideally,