Non-interactive zero-knowledge proof

Non-interactive zero-knowledge proof

Non-interactive zero-knowledge proofs are a variant of zero-knowledge proofs. Blum, Feldman, and Micali [1] showed that a common reference string shared between the prover and the verifier is enough to achieve computational zero-knowledge without requiring interaction. Goldreich and Oren[2] gave impossibility results for one shot zero-knowledge protocols in the standard model. These two results are not contradictory, as the impossibility result of Goldreich and Oren does not hold in the common reference string model or the random oracle model. Non-interactive zero-knowledge proofs however show a separation between the cryptographic tasks that can be achieved in the standard model and those that can be achieved in 'more powerful' extended models.

The model influences the properties that can be obtained from a zero-knowledge protocol. Pass[3] showed that in the common reference string model non-interactive zero-knowledge protocols do not preserve all of the properties of interactive zero-knowledge protocols, e.g. they do not preserve deniability.

Non-interactive zero-knowledge proofs can also be obtained in the random oracle model using the Fiat-Shamir heuristic.

Contents

Definition

Originally[1], non-interactive zero-knowledge was only defined as a single theorem proof system. In such a system each proof requires its own fresh common reference string. A common reference string in general is not a random string. It may, for instance, consist of randomly chosen group elements that all protocol parties use. Although the group elements are random, the reference string is not as it contains a certain structure (e.g., group elements) that is distinguishable from randomness. Subsequently, Feige, Lapidot, and Shamir[4] introduced multi-theorem zero-knowledge proofs as a more versatile notion for non-interactive zero knowledge proofs.

In this model the prover and the verifier are in possession of a reference string sampled from a distribution D by a trusted setup \sigma \gets Setup(1^k). To prove statement y\in L with witness w, the prover runs \pi \gets Prove(\sigma,y,w) and sends the proof π to the verifier. The verifier accepts if Verify(σ,y,π) = accept, and rejects otherwise. To account for the fact that σ may influence the statements that are being proven, the witness relation can be generalized to (y,w) \in R_\sigma parameterized by σ.

Completeness

Verification succeeds for all \sigma\in Setup(1^k) and every (y,w) \in R_\sigma.

More formally, for all k, all \sigma\in Setup(1^k), and all (y,w)\in R_\sigma:

Pr[\pi \gets Prove(\sigma,y,w) : Verify(\sigma,y,\pi)=accept] =1

Soundness

Soundness requires that no prover can make the verifier accept for a wrong statement y \not\in L except with some small probability. The upper bound of this probability is referred to as the soundness error of a proof system.

More formally, for every malicious prover \tilde P, there exists a negligible function ν such that

Pr[(\sigma \gets Setup(1^k), (y,\pi) \gets \tilde{P}(\sigma):  
y\not\in L \land Verify(\sigma, y, \pi)=accept] =\nu(k)\;.

The above definition requires the soundness error to be negligible in the security parameter k. By increasing k the soundness error can be made arbitrary small. If the soundness error is 0 for all k, we speak of perfect soundness.

Multi-theorem Zero-knowledge

A non-interactive proof system (Setup,Prove,Verify) is multi-theorem zero-knowledge, if there exists a simulator Sim = (Sim1,Sim2) such that for all non-uniform polynomial time adversaries \mathcal{A},

Pr[\sigma \gets Setup(1^k): \mathcal{A}^{{Prove}(\sigma,.,.)}(\sigma)=1 ] \equiv Pr[(\sigma,\tau) \gets Sim_1: \mathcal{A}^{{Sim}(\sigma,\tau,.,.)}(\sigma)=1 ]

Here Sim(σ,τ,y,w) outputs Sim2(σ,τ,y) for (y,w) \in R_\sigma and both oracles output failure otherwise.

Pairing-based Non-interactive Proofs

Pairing-based cryptography has led to several cryptographic advancements. One of this advancements are more powerful and more efficient non-interactive zero-knowledge proofs. The seminal idea was to hide the values for the evaluation of the pairing in a commitment. Using different commitment schemes, this idea was used to build zero-knowledge proof systems under the sub-group hiding[5] and under the decisional linear assumption.[6] These proof systems prove circuite satisfiability, and thus by the Cook–Levin theorem allow to prove membership for every language in NP. The size of the common reference string and the proofs is relatively small, however transforming a statement into a boolean circuit causes a considerable overhead.

Proof systems under the sub-group hiding, decisional linear assumption, and external Diffie-Hellman assumption that allow to directly proof the pairing product equations that are common in Pairing-based cryptography have been proposed.[7]

References

  1. ^ a b Manuel Blum, Paul Feldman, and Silvio Micali. Non-Interactive Zero-Knowledge and Its Applications. Proceedings of the twentieth annual ACM symposium on Theory of computing (STOC 1988). 103-112. 1988
  2. ^ Oded Goldreich and Yair Oren. Definitions and Properties of Zero-Knowledge Proof Systems. Journal of Cryptology. Vol 7(1). 1-32. 1994 (PS)
  3. ^ Rafael Pass. On Deniability in the Common Reference String and Random Oracle Model. Advances in Cryptology - CRYPTO 2003. 316-337. 2003 (PS)
  4. ^ Uriel Feige, Dror Lapidot, Adi Shamir: Multiple Non-Interactive Zero Knowledge Proofs Under General Assumptions. SIAM J. Comput. 29(1): 1-28 (1999)
  5. ^ Jens Groth, Rafail Ostrovsky, Amit Sahai: Perfect Non-interactive Zero Knowledge for NP. EUROCRYPT 2006: 339-358
  6. ^ Jens Groth, Rafail Ostrovsky, Amit Sahai: Non-interactive Zaps and New Techniques for NIZK. CRYPTO 2006: 97-111
  7. ^ Jens Groth, Amit Sahai: Efficient Non-interactive Proof Systems for Bilinear Groups. EUROCRYPT 2008: 415-432

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Zero-knowledge proof — In cryptography, a zero knowledge proof or zero knowledge protocol is an interactive method for one party to prove to another that a (usually mathematical) statement is true, without revealing anything other than the veracity of the statement.A… …   Wikipedia

  • Zero-knowledge — Preuve à divulgation nulle de connaissance Une preuve à divulgation nulle de connaissance est un concept utilisé en cryptologie dans le cadre de l authentification et de l identification. Cette expression désigne un protocole sécurisé dans lequel …   Wikipédia en Français

  • Zero knowledge — Preuve à divulgation nulle de connaissance Une preuve à divulgation nulle de connaissance est un concept utilisé en cryptologie dans le cadre de l authentification et de l identification. Cette expression désigne un protocole sécurisé dans lequel …   Wikipédia en Français

  • Preuve zero-knowledge — Preuve à divulgation nulle de connaissance Une preuve à divulgation nulle de connaissance est un concept utilisé en cryptologie dans le cadre de l authentification et de l identification. Cette expression désigne un protocole sécurisé dans lequel …   Wikipédia en Français

  • Interactive proof system — In computational complexity theory, an interactive proof system is an abstract machine that models computation as the exchange of messages between two parties. The parties, the verifier and the prover, interact by exchanging messages in order to… …   Wikipedia

  • Proof of knowledge — In cryptography, a proof of knowledge is an interactive proof in which the prover succeeds convincing a verifier that it knows something. What it means for a machine to know something is defined in terms of computation. A machine knows something …   Wikipedia

  • Charles Rackoff — Born 26 November 1948 New York City Fields Cryptology Institutions …   Wikipedia

  • Charles Rackoff — Charles Weill Rackoff (* 26. November 1948 in New York City) ist ein US amerikanischer Informatiker und Kryptograph. Rackoff studierte am Massachusetts Institute of Technology, wo er 1974 bei Albert Ronald da Silva Meyer promoviert wurde (The… …   Deutsch Wikipedia

  • Standard Model (cryptography) — In cryptography the standard model is the model of computation in which the adversary is only limited by the amount of time and computational power available. Other names used are bare model and plain model.Cryptographic schemes are usually based …   Wikipedia

  • Parity of zero — Zero objects, divided into two equal groups Zero is an even number. In other words, its parity the quality of an integer being even or odd is even. Zero fits the definition of even number : it is an integer multiple of 2, namely 0 × 2. As a… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”