Loading in 5 sec....

Efficient Zero-Knowledge Proof SystemsPowerPoint Presentation

Efficient Zero-Knowledge Proof Systems

- 72 Views
- Uploaded on
- Presentation posted in: General

Efficient Zero-Knowledge Proof Systems

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Efficient Zero-Knowledge Proof Systems

Jens Groth

University College London

Privacy and verifiability

No! It is a trade secret.

Did I lose all my money?Show me the current portfolio!

Hedge fundInvestor

Statement

Zero-knowledge:Nothing but truth revealed

Soundness:Statement is true

Witness

ProverVerifier

Tally without decrypting individual votes

Vote

Encrypts vote to keep it private

Ciphertext

VoterElection authorities

Not Bob

Encrypts -100 votes for Bob

Is the encrypted vote valid?

Ciphertext

VoterElection authorities

Zero-knowledge:Vote is secret

Soundness:Vote is valid

Ciphertext

Zero-knowledge proof for valid vote encrypted

VoterElection authorities

Threshold decryption

mπ(1)

mπ(2)

mπ(N)

π = π1◦π2

π2

m1

m2

mN

π1

…

Problem: Corrupt mix-server

Threshold decryption

mπ(1)

mπ(2)

m´π(N)

π = π1◦π2

π2

m1

m2

mN

π1

…

Threshold decryption

mπ(1)

mπ(2)

mπ(N)

π = π1◦π2

Server 2 ZK proofPermutation still secret(zero-knowledge)

π2

Server 1 ZK proofNo message changed(soundness)

m1

m2

mN

π1

…

Preventing deviation (active attacks) by keeping people honest

Yes, here is a zero-knowledge proof that everything is correct

Did you follow the protocol honestly without deviation?

AliceBob

Problems typically arise when attackers deviate from aprotocol (active attack)

Zero-knowledge proofs prevent deviation and give security against active attacks

Доверяй, но проверяй

- Trust but verify

zero-knowledge

signatures

encryption

- 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

- Efficiency
- Communication (bits)
- Prover’s computation (seconds)
- Verifier’s computation (seconds)
- Round complexity (number of messages)

- Security
- Setup
- Cryptographic assumptions

- Interactive zero-knowledge proof
- Non-interactive zero-knowledge proof

cost

non-interactive zero-knowledge proofs

interactive zero-knowledge proofs

rest of the protocol

19852014

- Main goal
- Efficient and versatile zero-knowledge proofs

- Vision
- Negligible overhead from using zero-knowledge proofs
- Security against active attacks standard feature

zero-knowledge

core

core

SAT

0

- Statements are for a given NP-language
- Prover knows witness such that
- But prover wants to keep the witness secret!

1

1

Encrypted valid vote

0

Circuit SAT

Hamiltonian

- A proof system for an NP-relation consists of a prover and a verifier
- We consider efficient proof systems: prover and verifier are probabilistic polynomial time interactive algorithms
- Both prover and verifier get a statement as input
- The prover gets a witness such that
- They interact and finally the verifier accepts or rejects

- 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

Witness wso (x,w)R

Statement xL

Accept or reject

Perfect completeness: Pr[Accept] = 1

Statement xL

Accept or reject

Computational soundness: For ppt adversary Pr[Reject] ≈ 1

Statistical soundness: For any adversary Pr[Reject] ≈ 1

Perfect soundness: Pr[Reject] = 1

Arguments can be more efficient than 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

0/1

0/1

WI:

Can be computational, statistical or perfect

- 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

view

Simulator’s advantage: Can rewind adversary

view

ZK:

Can be computational, statistical or perfect

- Show the GI proof is perfect zero-knowledge
- Argue why zero-knowledge implies witness indistinguishability
- Give an example of a language and a proof system that is witness indistinguishable but not zero-knowledge (under reasonable assumptions)