# Efficient Zero-Knowledge Proof Systems Jens Groth University College London.

## Presentation on theme: "Efficient Zero-Knowledge Proof Systems Jens Groth University College London."— Presentation transcript:

Efficient Zero-Knowledge Proof Systems Jens Groth University College London

Privacy and verifiability Hedge fundInvestor No! It is a trade secret. Did I lose all my money? Show me the current portfolio!

Zero-knowledge proof Statement ProverVerifier Witness  Soundness: Statement is true Zero-knowledge: Nothing but truth revealed

Internet voting VoterElection authorities Ciphertext Vote Encrypts vote to keep it private Tally without decrypting individual votes 4

Election fraud VoterElection authorities Ciphertext Not Bob Encrypts -100 votes for Bob Is the encrypted vote valid? 5

Zero-knowledge proof as solution VoterElection authorities Ciphertext Soundness: Vote is valid Zero-knowledge proof for valid vote encrypted Zero-knowledge: Vote is secret 6

Mix-net: Anonymous message broadcast m π (1) m π (2) m π (N) … π1π1 π2π2 π = π 1 ◦ π 2 m1m1 m2m2 mNmN Threshold decryption

Problem: Corrupt mix-server m π (1) m π (2) m´ π (N) … π1π1 π2π2 π = π 1 ◦ π 2 m1m1 m2m2 mNmN Threshold decryption

Solution: Zero-knowledge proof m π (1) m π (2) m π (N) … π1π1 π2π2 π = π 1 ◦ π 2 m1m1 m2m2 mNmN Threshold decryption Server 1 ZK proof No message changed (soundness) Server 2 ZK proof Permutation still secret (zero-knowledge)

Preventing deviation (active attacks) by keeping people honest AliceBob Yes, here is a zero- knowledge proof that everything is correct Did you follow the protocol honestly without deviation?

Cryptography 11 Problems typically arise when attackers deviate from a protocol (active attack) Zero-knowledge proofs prevent deviation and give security against active attacks

Fundamental building block 12 encryption signatures zero-knowledge Доверяй, но проверяй - Trust but verify

Zero-knowledge proofs Completeness –Prover can convince verifier when statement is true Soundness –Cannot convince verifier when statement is false Zero-knowledge –No leakage of information (except truth of statement) even if interacting with a cheating verifier 13

Parameters Efficiency –Communication (bits) –Prover’s computation (seconds) –Verifier’s computation (seconds) –Round complexity (number of messages) Security –Setup –Cryptographic assumptions

Round complexity Interactive zero-knowledge proof Non-interactive zero-knowledge proof 15 

Zero-knowledge proof efficiency 19852014 cost interactive zero-knowledge proofs rest of the protocol non-interactive zero-knowledge proofs

Vision Main goal –Efficient and versatile zero-knowledge proofs Vision –Negligible overhead from using zero-knowledge proofs –Security against active attacks standard feature 17 zero-knowledge core

Statements 18 1 0 1 0 Circuit SAT Hamiltonian Encrypted valid vote

Proof system 19

Graph isomorphism 20

Exercise Argue the GI proof system is complete What is the probability of the prover cheating the verifier? (soundness) Argue the GI proof system is witness indistinguishable, i.e., when there are several isomorphisms between the two graphs it is not possible to know which one the prover has in mind 21

Perfect completeness: Pr[Accept] = 1 Accept or reject Statement x  L Witness w so (x,w)  R Completeness 22

Computational soundness: For ppt adversary Pr[Reject] ≈ 1 Statistical soundness: For any adversary Pr[Reject] ≈ 1 Perfect soundness: Pr[Reject] = 1 Accept or reject Statement x  L Soundness 23

Arguments and proofs Argument (or computationally sound proof) –Computational soundness, holds against polynomial time adversary, relies on cryptographic assumptions Proof –Unconditional soundness, holds against unbounded adversary, and in particular without relying on cryptographic assumptions 24 Arguments can be more efficient than proofs

0/1 Witness indistinguishability

Zero-knowledge Zero-knowledge: –The proof only reveals the statement is true, it does not reveal anything else Defined by simulation: –The adversary could have simulated the proof without knowing the prover’s witness