Characterizing Deterministic- Prover Zero Knowledge
Nir Bitansky
Tel Aviv University
Arka Rai Choudhuri
Johns Hopkins University
Characterizing Deterministic- Prover Zero Knowledge Nir Bitansky - - PowerPoint PPT Presentation
Characterizing Deterministic- Prover Zero Knowledge Nir Bitansky Arka Rai Choudhuri Tel Aviv University Johns Hopkins University Zero Knowledge [Goldwasser-Micali- Rackoff85] $ $ $ $ $ $ Prover (, ) Verifier () Zero Knowledge
Nir Bitansky
Tel Aviv University
Arka Rai Choudhuri
Johns Hopkins University
Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
$ $ $ $ $ $
Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
$ $ $ $ $ $
Completeness: โ๐ฆ โ โ, verifier accepts. (Computational) Soundness Zero Knowledge
Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
$ $ $ $ $ $
Completeness (Computational) Soundness: โ๐ฆ โ โ, no PPT prover can make the verifier accept. Zero Knowledge
Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
$ $ $ $ $ $
Completeness (Computational) Soundness Zero Knowledge: โ Verifiers โ Simulator
Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
$ $ $ $ $ $
$ $ $ $ $ $
Prover (๐ฆ, ๐ฅ)
Verifierโs view in an execution with the prover
Completeness (Computational) Soundness Zero Knowledge: โ Verifiers โ Simulator
Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
$ $ $ $ $ $
Completeness (Computational) Soundness Zero Knowledge: โ Verifiers โ Simulator
$ $ $ $ $ $
Verifierโs view in an execution with the prover
Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
$ $ $ $ $ $
Completeness (Computational) Soundness Zero Knowledge: โ Verifiers โ Simulator
$ $ $ $ $ $ $ $ $ $ $ $
Verifierโs view in an execution with the prover Simulatorโs output on input ๐ฆ
โ Verifier โ Simulator GMR ZK
View (๐ฆ)
โ Verifier โ Simulator GMR ZK Auxiliary-input ZK
View (๐ฆ)
โ Verifier โ Simulator โ aux-IP ๐จ โ 0,1 โ
View (๐ฆ, ๐จ)
โ Verifier โ Simulator GMR ZK Auxiliary-input ZK Black-box ZK
View (๐ฆ)
โ Verifier โ Simulator โ aux-IP ๐จ โ 0,1 โ
View (๐ฆ, ๐จ)
โ Simulator โ Verifier
View (๐ฆ)
Deterministic Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
Deterministic Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
Is prover randomness essential for zero knowledge?
โ Verifier โ Simulator GMR ZK Auxiliary-input ZK Black-box ZK
View (๐ฆ)
โ Verifier โ Simulator โ aux-IP ๐จ โ 0,1 โ
View (๐ฆ, ๐จ)
โ Simulator โ Verifier
View (๐ฆ)
Impossible for non-trivial languages.
โ Verifier โ Simulator GMR ZK Auxiliary-input ZK Black-box ZK
View (๐ฆ)
โ Verifier โ Simulator โ aux-IP ๐จ โ 0,1 โ
View (๐ฆ, ๐จ)
โ Simulator โ Verifier
View (๐ฆ)
[Faonio-Nielsen-Venturiโ17]
Witness encryption for โ โน Honest-verifier DPZK for โ Hash proof system for โ โน Honest-verifier DPZK proofs for โ
[Dahari-Lindellโ20]
Doubly enhanced injective OWFs โน Honest-verifier DPZK proofs for NP
Inefficient honest prover.
Malicious-verifier DPZK for languages that have an entropy guarantee from witnesses.
[Faonio-Nielsen-Venturiโ17]
Witness encryption for โ โน Honest-verifier DPZK for โ Hash proof system for โ โน Honest-verifier DPZK proofs for โ
[Dahari-Lindellโ20]
Doubly enhanced injective OWFs โน Honest-verifier DPZK proofs for NP
Inefficient honest prover.
Malicious-verifier DPZK for languages that have an entropy guarantee from witnesses.
Impossible for non-trivial languages.
โ Verifier โ Simulator GMR ZK Auxiliary-input ZK Black-box ZK
View (๐ฆ)
โ Verifier โ Simulator โ aux-IP ๐จ โ 0,1 โ
View (๐ฆ, ๐จ)
โ Simulator โ Verifier
View (๐ฆ)
Impossible for non-trivial languages.
โ Verifier โ Simulator GMR ZK Auxiliary-input ZK Black-box ZK
View (๐ฆ)
โ
โ Verifier โ Simulator โ aux-IP ๐จ โ 0,1 โ
View (๐ฆ, ๐จ)
โ
โ Simulator โ Verifier
View (๐ฆ)
โ
๐-Bounded auxiliary-input ZK โ Verifier โ Simulator โ aux-IP ๐จ โ 0,1 ๐
View (๐ฆ, ๐จ)
โ
Impossible for non-trivial languages.
โ Verifier โ Simulator GMR ZK Auxiliary-input ZK Black-box ZK
View (๐ฆ)
โ
โ Verifier โ Simulator โ aux-IP ๐จ โ 0,1 โ
View (๐ฆ, ๐จ)
โ
โ Simulator โ Verifier
View (๐ฆ)
โ
๐-Bounded auxiliary-input ZK โ Verifier โ Simulator โ aux-IP ๐จ โ 0,1 ๐
View (๐ฆ, ๐จ)
โ
Assuming NIWIs + sub-exponentially secure iO + OWF, there exist two message DPZK arguments for NP โฉ coNP against bounded auxiliary-input verifiers. Also assuming sub-exponentially secure keyless CRHF, there exist two message DPZK arguments for all of NP against bounded auxiliary-input verifiers.
Assuming NIWIs + sub-exponentially secure iO + OWF, there exist two message DPZK arguments for NP โฉ coNP against bounded auxiliary-input verifiers. Also assuming sub-exponentially secure keyless CRHF, there exist two message DPZK arguments for all of NP against bounded auxiliary-input verifiers. Any DPZK argument for a language โ implies a witness encryption for โ.
Witness Encryption for โ
WE.Enc
๐ฆ ๐ ct๐ฆ,๐
WE.Dec
๐ฅ ๐/โฅ ct๐ฆ,๐ Deterministic Decryption
Witness Encryption for โ
WE.Enc
๐ฆ ๐ ct๐ฆ,๐
WE.Dec
๐ฅ ๐/โฅ ct๐ฆ,๐
For ๐ฆ, ๐ฅ โ Relโ
WE.Dec
๐ฅ ๐ ct๐ฆ,๐
Correctness
Deterministic Decryption
Witness Encryption for โ
WE.Enc
๐ฆ ๐ ct๐ฆ,๐
WE.Dec
๐ฅ ๐/โฅ ct๐ฆ,๐
For ๐ฆ, ๐ฅ โ Relโ For ๐ฆ โ โ
ct๐ฆ,0 ct๐ฆ,1
WE.Dec
๐ฅ ๐ ct๐ฆ,๐
Correctness Security
Deterministic Decryption
Deterministic Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ)
ct๐ฆ,๐ฃ
Deterministic Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ) เทค ๐ฃ โ WE.Dec(ct๐ฆ,๐ฃ, ๐ฅ)
ct๐ฆ,๐ฃ เทค ๐ฃ
Output 1 iff ๐ฃ = เทค ๐ฃ
Deterministic Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ) เทค ๐ฃ โ WE.Dec(ct๐ฆ,๐ฃ, ๐ฅ)
ct๐ฆ,๐ฃ เทค ๐ฃ
Output 1 iff ๐ฃ = เทค ๐ฃ
Completeness: From correctness of WE.
Cheating Prover (๐ฆ) Verifier (๐ฆ) ct๐ฆ,๐ฃ เทค ๐ฃ
Output 1 iff ๐ฃ = เทค ๐ฃ
Completeness Soundness: From WE security when ๐ฆ โ โ
๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ)
Cheating Prover (๐ฆ) Verifier (๐ฆ) ct๐ฆ,0 ?
Output 1 iff ๐ฃ = เทค ๐ฃ
Completeness Soundness: From WE security when ๐ฆ โ โ
๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ)
Simulator (๐ฆ)
Verifier (๐ฆ) ct๐ฆ,๐ฃ เทค ๐ฃ
Output 1 iff ๐ฃ = เทค ๐ฃ
Completeness Soundness Honest Verifier Zero Knowledge: Simulator knows ๐ฃ
๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ)
Explainable Verifier There exist honest verifier coins that explains verifier messages as honest messages.
Unlike related notion of semi-malicious adversaries, these coins may be hard to find.
Explainable Verifier There exist honest verifier coins that explains verifier messages as honest messages.
Simulator no longer โknowsโโ the message that an explainable verifier encrypts via the Witness Encryption.
Aux-I/P DPZK for explainable verifiers also ruled out by [Goldreich-Orenโ94]
Unlike related notion of semi-malicious adversaries, these coins may be hard to find.
Explainable Verifier There exist honest verifier coins that explains verifier messages as honest messages.
Simulator no longer โknowsโโ the message that an explainable verifier encrypts via the Witness Encryption.
Aux-I/P DPZK for explainable verifiers also ruled out by [Goldreich-Orenโ94]
Idea: Use additional trapdoor statement that only the simulator can use.
Unlike related notion of semi-malicious adversaries, these coins may be hard to find.
Deterministic Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ) เทค ๐ฃ โ WE.Dec(ct๐ฆ,๐ฃ, ๐ฅ)
ct๐ฆ,๐ฃ เทฅ ct๐,๐ฃ ๐ เทค ๐ฃ
Output 1 iff ๐ฃ = เทค ๐ฃ
size โค ๐
includes auxiliary input
Deterministic Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ) เทค ๐ฃ โ WE.Dec(ct๐ฆ,๐ฃ, ๐ฅ)
ct๐ฆ,๐ฃ เทฅ ct๐,๐ฃ ๐ เทค ๐ฃ
Output 1 iff ๐ฃ = เทค ๐ฃ
size โค ๐
includes auxiliary input
๐ โต 0,1 ๐ เทฅ ct๐,๐ฃ โต เทซ WE.Enc๐(๐ฃ)
๐ โซ ๐ ๐, M โ Rel แ
โ if
1) M is a Turing Machine that outputs ๐. 2) Size of M is ๐ + ๐
Deterministic Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ) เทค ๐ฃ โ WE.Dec(ct๐ฆ,๐ฃ, ๐ฅ)
ct๐ฆ,๐ฃ เทฅ ct๐,๐ฃ ๐ เทค ๐ฃ
Output 1 iff ๐ฃ = เทค ๐ฃ
size โค ๐
includes auxiliary input
๐ โต 0,1 ๐ เทฅ ct๐,๐ฃ โต เทซ WE.Enc๐(๐ฃ)
๐ โซ ๐ ๐, M โ Rel แ
โ if
1) M is a Turing Machine that outputs ๐. 2) Size of M is ๐ + ๐
Deterministic Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ) เทค ๐ฃ โ WE.Dec(ct๐ฆ,๐ฃ, ๐ฅ)
ct๐ฆ,๐ฃ เทฅ ct๐,๐ฃ ๐ เทค ๐ฃ
Output 1 iff ๐ฃ = เทค ๐ฃ
size โค ๐
includes auxiliary input
๐ โต 0,1 ๐ เทฅ ct๐,๐ฃ โต เทซ WE.Enc๐(๐ฃ)
๐ โซ ๐ ๐, M โ Rel แ
โ if
1) M is a Turing Machine that outputs ๐. 2) Size of M is ๐ + ๐
Completeness: Same as HVZK
Cheating Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
เทค ๐ฃ โ WE.Dec(ct๐ฆ,๐ฃ, ๐ฅ)
ct๐ฆ,๐ฃ เทฅ ct๐,๐ฃ ๐ เทค ๐ฃ
Output 1 iff ๐ฃ = เทค ๐ฃ
size โค ๐
includes auxiliary input ๐ โซ ๐ ๐, M โ Rel แ
โ if
1) M is a Turing Machine that outputs ๐. 2) Size of M is ๐ + ๐
Completeness Soundness: w.h.p. no short machine exists to satisfy Rel แ
โ
๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ) ๐ โต 0,1 ๐ เทฅ ct๐,๐ฃ โต เทซ WE.Enc๐(๐ฃ)
Simulator (๐ฆ) Verifier (๐ฆ)
เทค ๐ฃ โ เทซ WE.Dec(เทฅ ct๐,๐ฃ , )
ct๐ฆ,๐ฃ เทฅ ct๐,๐ฃ ๐ เทค ๐ฃ
Output 1 iff ๐ฃ = เทค ๐ฃ
size โค ๐
includes auxiliary input ๐ โซ ๐ ๐, M โ Rel แ
โ if
1) M is a Turing Machine that outputs ๐. 2) Size of M is ๐ + ๐
Completeness Soundness Zero Knowledge: Simulator uses the verifierโs code as
witness; verifierโs randomness simulated by a PRG.
๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ) ๐ โต 0,1 ๐ เทฅ ct๐,๐ฃ โต เทซ WE.Enc๐(๐ฃ)
๐ โต 0,1 ๐ เทฅ ct๐,๐ฃ โต เทซ WE.Enc๐(๐ฃ) ๐ฃ โต 0,1 ๐ ct๐ฆ,๐ฃ โต WE.Enc๐ฆ(๐ฃ)
Deterministic Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
เทค ๐ฃ โ WE.Dec(ct๐ฆ,๐ฃ, ๐ฅ)
ct๐ฆ,๐ฃ เทฅ ct๐,๐ฃ ๐ เทค ๐ฃ
Output 1 iff ๐ฃ = เทค ๐ฃ
size โค ๐
includes auxiliary input ๐ โซ ๐ ๐, M โ Rel แ
โ if
1) M is a Turing Machine that outputs ๐. 2) Size of M is ๐ + ๐ Rel แ
โ is not an NP relation since we do not a priori bound the running
time of M. Efficient Witness Encryption for Rel แ
โ can be realized assuming
indistinguishability obfuscation for Turing Machines.
Malicious Verifier DPZK Explainable Verifier DPZK Verifier proves honest behavior
Malicious Verifier DPZK Explainable Verifier DPZK Verifier proves honest behavior
Verifier proves via NIWI that
2. ๐ฆ โ โ
Malicious Verifier DPZK Explainable Verifier DPZK Verifier proves honest behavior
Verifier proves via NIWI that
2. ๐ฆ โ โ
Verifier proves via NIWI that
CRHF.
๐ค1
Prover (๐ฆ) Verifier (๐ฆ)
๐ค1, ๐1 โต ๐(๐ฆ) Reject if เทค ๐1 โ ๐1 เทค ๐1
๐ค1
Prover (๐ฆ) Verifier (๐ฆ)
๐ค1, ๐1 โต ๐(๐ฆ) Reject if เทค ๐1 โ ๐1 เทค ๐1 ๐ค2, ๐2 โต ๐(๐ฆ, ๐ค1, ๐1) ๐ค2 Reject if เทค ๐2 โ ๐2 เทค ๐2
โฎ
๐ค1
Prover (๐ฆ) Verifier (๐ฆ)
๐ค1, ๐1, โฆ , ๐คโ, ๐โ โต ๐(๐ฆ) Reject if เทค ๐1 โ ๐1 เทค ๐1 ๐ค2 Reject if เทค ๐2 โ ๐2 เทค ๐2
โฎ
๐ผ = ๐(๐ป๐)
Prover (๐ป0, ๐ป1) Verifier (๐ป0, ๐ป1)
๐ โต {0,1}, ๐ โต ฮ ๐ Reject if เทจ ๐ โ ๐ เทจ ๐
Predictable argument for Graph Non- Isomorphism
Predictable Argument for โ Witness Encryption for โ [Faonio-Nielsen-Venturiโ17]
Predictable Argument for โ Witness Encryption for โ [Faonio-Nielsen-Venturiโ17] DPZK Argument for โ
Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
๐ค1 Reject if เทค ๐1 โ ๐1 เทค ๐1 ๐ค2 Reject if เทค ๐2 โ ๐2 เทค ๐2
โฎ
๐ค1, ๐1, โฆ , ๐คโ, ๐โ; ๐ โต (๐ฆ)
Verifier rejects if HVZK simulator does not produce accepting transcript
Behaves identically to the DPZK prover
Prover (๐ฆ, ๐ฅ) Verifier (๐ฆ)
๐ค1 Reject if เทค ๐1 โ ๐1 เทค ๐1 ๐ค2 Reject if เทค ๐2 โ ๐2 เทค ๐2
โฎ
๐ค1, ๐1, โฆ , ๐คโ, ๐โ; ๐ โต (๐ฆ)
Verifier rejects if HVZK simulator does not produce accepting transcript
Completeness: From the ZK property, the simulator and (real) DPZK
prover generate the same messages.
Behaves identically to the DPZK prover
Cheating Prover (๐ฆ) Verifier (๐ฆ)
๐ค1 Reject if เทค ๐1 โ ๐1 เทค ๐1 ๐ค2 Reject if เทค ๐2 โ ๐2 เทค ๐2
โฎ
๐ค1, ๐1, โฆ , ๐คโ, ๐โ; ๐ โต (๐ฆ)
Verifier rejects if HVZK simulator does not produce accepting transcript
Completeness Soundness: If the verifier does not reject, the cheating prover generates
an accepting transcript when ๐ฆ โ โ, breaking soundness of the ZK protocol.*
*implicitly assumed that simulated random coins are pseudorandom when ๐ฆ โ โ.
Any DPZK argument for bounded auxiliary input verifiers can be made two message, and laconic in the prover message.
Follows from the transformation on predictable arguments in [Faonio-Nielsen-Venturiโ17]. We show that the transformations preserve zero-knowledge.
There exist two message DPZK arguments for all of NP against bounded auxiliary-input verifiers. Any DPZK argument for a language โ implies a witness encryption for โ.
Arka Rai Choudhuri achoud@cs.jhu.edu
There exist two message DPZK arguments for all of NP against bounded auxiliary-input verifiers. Any DPZK argument for a language โ implies a witness encryption for โ.