240 likes | 371 Vues
This paper investigates the efficiency of Probabilistically Checkable Proofs (PCPs) as arguments in cryptographic settings. It discusses the completeness and soundness of these systems, emphasizing their advantages over traditional interactive proofs. By leveraging secure cryptographic primitives and black-box reductions, the authors present a framework that allows for efficient arguments with strong soundness guarantees. Key findings include the structure of communication between provers and verifiers and the implications of their results on zero-knowledge and secure computation protocols.
E N D
Are PCPs Inherentin Efficient Arguments? Guy Rothblum, MIT)MSR-SVC)IASSalil Vadhan, Harvard University
Probabilistic Proof Systems P wants to convince V that xL Completeness If xL, then P convinces Vw.h.p. Soundness If x L, no P* can convince V except w/small prob. s Interactive Proofs: no P* can convince V PCPs: no memoryless oracle P* can convince V Arguments: no poly-time P* can convince V
Motivation for Arguments • Perfect zero knowledge [BCC86] • Can be much more efficient than interactive proofs • Communication [Kil92] • Expressive power [Mic94] • Verifier runtime [Mic94] Based on PCPs Question [IKO07]: Are PCPs necessary?
Zero Knowledge Cryptography Complexity Protocols [B82,...] NP-completeness [C71,L73,K72] Def of ZK, IP [GMR85] IP=PSPACE [LFKN90,S90] NPµZK [GMW86] Secure Computation [Yao86,GMW87,BGW88,CCD88] Multiprover ZK[BGKW88] MIP=NEXPPCP Theorem[BFL91...ALMSS92] Polylog-eff ZK Args[K92,M94] Random Oracle Model [FS86,BR93,CGH98] Diagonalization [T36] Concurrency[F90,DNS98] …. Non-BB Simulation [B01] ….
High-Level Summary • Previous work [Kil92,Mic94,BG02,IKO07]:PCPs ) efficient arguments* *under various crypto assumptions • Our results:Efficient arguments ) PCPs* *assuming argument soundness based on a secure crypto primitive via an “efficient black-box reduction”
PCPs ) Arguments (previous work)
Kilian’s Construction [Kil92] (L in NP) x proverParg verifier Varg 1. choose collision-resistant hash function f f 2.¼= PCP pfthat x2 L “commit” to ¼ 3. Run Vpcpto getqueries i1,…,iq i1,…,iq “reveal” ¼i1,…,¼iq 4. Accept if reveals valid & Vpcp accepts.
Short commitments • Collision-resistant hash family:F = {f : {0,1}2k! {0,1}k} s.t. no poly-time alg can find collision in random fà F except with negl. probability. • Merkle Tree: ¼i ¼ f f f f f f Reveal(¼i) f Commit(¼)
Kilian: communication # rounds: O(1) V! P communication: (# queries)¢ log(PCP length) + k = O~(log n) P!V communication: (# queries) ¢ [log(PCP length) ¢ k + log |PCP alphabet|] = O~(log2 n) Parg Varg f Commit(¼) i1,…,iq Reveal(¼i1,…,¼iq) (assuming standard PCP thm + exponentially hard CRHF)
Kilian: soundness Claim: argument soundness error· PCP soundness error + ² Proof sketch:If not, can find collision in f w.p. > ²/q by running P* w/ two random overlapping query sequences i1,…,iq , i’1,…,i’q . N.B. “black-box” reduction making 3 queries to P* P* Varg f Commit(¼) i1,…,iq Reveal(¼i1,…,¼iq)
Ishai-Kushilevitz-Ostrovsky `07 “Efficient” arguments using: • Stronger crypto primitive (homomorphic encryption) • Weaker PCP (exponentially long Hadamard-based PCP [ALMSS92])
IKO: communication # rounds: O(1) V! P communication: (# queries)¢ log(PCP length) + k = poly(n) P!V communication: (# queries) ¢ [log(PCP length) ¢ k + log |PCP alphabet|] = O~(log n) Parg Varg f Hom-Commit(¼) i1,…,iq Hom-Reveal(¼i1,…,¼iq) (assuming Hadamard PCP + exponentially hard hom-enc)
Arguments ) PCPs (our work)
Main Result Argument system (Varg,Parg) w/soundness based on a crypto primitive via a black-box reduction R PCP with following parameters: #Queries: #rounds (Varg,Parg) + #queries(R) Length: exp(Varg→Parg communication) Alphabet: exp(Parg→Varg communication) Soundness unconditional Completeness assuming the crypto primitive is secure Matches [Kil92,IKO07]
Notion of Black-Box Reduction • poly-time R s.t. if P* is any strategy making Vargaccept xLw.p. > s, then RP*(x) “breaks” primitive w.p. > ² • poly-time T that tests whether R has broken primitive (related to “falsifiability” [Nao06]) x R P* T # queries(R) := # queries to P* in TRP*(x)
Example: Kilian’s construction x f f Commit(¼) repeat poly(1/²) times f, i1,…,iq R P* T Reveal(¼i1,…,¼iq) f, i’1,…,i’q Reveal(¼i’1,…,¼i’q) collision a,b
Example: construction based on factoring x N R P* T factors p,q
Main Result Argument system (Varg,Parg) w/soundness based on a crypto primitive via a black-box reduction R PCP with following parameters: #Queries: #rounds (Varg,Parg) + #queries(R&T) Length: exp(Varg→Parg communication) Alphabet: exp(Parg→Varg communication) Soundness unconditional Completeness assuming the crypto primitive is secure Matches [Kil92,IKO07]
Argument PCP: Construction (Honest) PCP proof-oracle Ppcp: next-msg function of argument proverParg PCP Verifier: Run Vargwith Ppcp. If Vargrejects, reject. Run reduction R (& test T) with Ppcp.If break primitive, then reject. Otherwise accept.
Argument PCP: Soundness PCP Verifier: Run Vargwith Ppcp. If Vargrejects, reject. Run reduction R (& test T) with Ppcp.If break primitive, then reject. Otherwise accept. Soundness (xL): IfP* makes Vargaccept whp in Step 1, then RP*(x) “breaks” primitive.
Argument PCP: Completeness PCP Verifier: Run Vargwith Ppcp. If Vargrejects, reject. Run reduction R (& test T) with Ppcp.If break primitive, then reject. Otherwise accept. Completeness (x2L): Reduction R and honest Ppcp=Pargare poly-time, so can’t break secure primitive.
Argument PCP: Efficiency PCP Verifier: Run Vargwith Ppcp. If Vargrejects, reject. Run reduction R (& test T) with Ppcp.If break primitive, then reject. Otherwise accept. #Queries: #rounds (Varg,Parg) + #queries(R&T) Length: exp(Varg→Parg communication) Alphabet: exp(Parg→Varg communication)
Weakening the Assumptions • Only need crypto primitive secure vs. fixed poly-time adversary (namely RParg). • If honest Pargonly makes black-box access to primitive, can sometimes weaken or eliminate assumptions using Nisan-Wigderson-type PRFs or poly(n)-wise independent hash functions.
Conclusions & Questions We explain why existing efficient arguments use PCPs. • Efficient arguments without PCPs? (Using reduction that is either non-black-box or makes many queries to cheating prover) • New PCP constructions inspired by crypto? • Deeper connection between arguments & PCPs? • Do arguments in random oracle model require PCPs?