strengthening zero-knowledge protocols using signaturesyangke/papers/eurocrypt03.pdf ·...

61
Strengthening Zero-Knowledge Protocols using Signatures Juan Garay Bell Labs, Lucent Technologies Philip MacKenzie Bell Labs, Lucent Technologies Ke Yang Carnegie Mellon University Strengthening Zero-Knowledge Protocols using Signatures – p.1/24

Upload: others

Post on 29-Jan-2020

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Strengthening Zero-Knowledge Protocols usingSignatures

Juan Garay Bell Labs, Lucent Technologies

Philip MacKenzie Bell Labs, Lucent Technologies

Ke Yang Carnegie Mellon University

Strengthening Zero-Knowledge Protocols using Signatures – p.1/24

Page 2: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Zero Knowledge Proof Protocols

An extremely successful story in two decades...

[Goldwasser Micali Rackoff 85]introduces the notion[Goldreich Micali Wigderson 86]all NP languages have ZK proofs

[hundreds of papers here...]many many applications in cryptography

identification protocolstwo-party/multi-party computation...

Strengthening Zero-Knowledge Protocols using Signatures – p.2/24

Page 3: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Zero Knowledge Proof Protocols

An extremely successful story in two decades...

[Goldwasser Micali Rackoff 85]introduces the notion

[Goldreich Micali Wigderson 86]all NP languages have ZK proofs

[hundreds of papers here...]many many applications in cryptography

identification protocolstwo-party/multi-party computation...

Strengthening Zero-Knowledge Protocols using Signatures – p.2/24

Page 4: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Zero Knowledge Proof Protocols

An extremely successful story in two decades...

[Goldwasser Micali Rackoff 85]introduces the notion[Goldreich Micali Wigderson 86]all NP languages have ZK proofs

[hundreds of papers here...]many many applications in cryptography

identification protocolstwo-party/multi-party computation...

Strengthening Zero-Knowledge Protocols using Signatures – p.2/24

Page 5: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Zero Knowledge Proof Protocols

An extremely successful story in two decades...

[Goldwasser Micali Rackoff 85]introduces the notion[Goldreich Micali Wigderson 86]all NP languages have ZK proofs

[hundreds of papers here...]many many applications in cryptography

identification protocols�

two-party/multi-party computation�

...

Strengthening Zero-Knowledge Protocols using Signatures – p.2/24

Page 6: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

A Quick Review of ZK Proofs

A protocol between Prover and Verifier.

Verifierε"x L"

Prover

Completeness — if � � �

then Verifier always accepts

Soundness — if � �� �

then Verifier accepts with negl. prob.

Verifierε"x L"

Prover

simulator

ZK−ness:

ZK-ness — a simulator produces the conversation w/o witness

Verifierε"x L"

Prover

extractor

wProof of Knowledge:

POK — an extractor produces a witness from interaction

Strengthening Zero-Knowledge Protocols using Signatures – p.3/24

Page 7: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

A Quick Review of ZK Proofs

A protocol between Prover and Verifier.

Verifierε"x L"

Prover

Completeness — if � � �

then Verifier always accepts

Soundness — if � �� �

then Verifier accepts with negl. prob.

Verifierε"x L"

Prover

simulator

ZK−ness:

ZK-ness — a simulator produces the conversation w/o witness

Verifierε"x L"

Prover

extractor

wProof of Knowledge:

POK — an extractor produces a witness from interaction

Strengthening Zero-Knowledge Protocols using Signatures – p.3/24

Page 8: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

A Quick Review of ZK Proofs

A protocol between Prover and Verifier.

Verifierε"x L"

Prover

Completeness — if � � �

then Verifier always accepts

Soundness — if � �� �

then Verifier accepts with negl. prob.

Verifierε"x L"

Prover

simulator

ZK−ness:

ZK-ness — a simulator produces the conversation w/o witness

Verifierε"x L"

Prover

extractor

wProof of Knowledge:

POK — an extractor produces a witness � from interaction

Strengthening Zero-Knowledge Protocols using Signatures – p.3/24

Page 9: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Issues of (Strengthening) Zero Knowledge Protocols

Since GMR85, many efforts are made to strengthen the originaldefinition of ZK proofs to fit into the “real world,” a.k.a. the “Internet.”

Concurrency [Dwork Naor Sahai 98]remains ZK if many verifiers interact with the prover concurrently(your web server is concurrent)

Non-malleability [Dolev Dwork Naor 91]secure against the man-in-the-middle attack(necessary in a peer-to-peer network/routing protocols)

Universal Composability [Canetti 00]secure when arbitrarily composed(desirable for modularity)

Strengthening Zero-Knowledge Protocols using Signatures – p.4/24

Page 10: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Issues of (Strengthening) Zero Knowledge Protocols

Since GMR85, many efforts are made to strengthen the originaldefinition of ZK proofs to fit into the “real world,” a.k.a. the “Internet.”

Concurrency [Dwork Naor Sahai 98]remains ZK if many verifiers interact with the prover concurrently(your web server is concurrent)

Non-malleability [Dolev Dwork Naor 91]secure against the man-in-the-middle attack(necessary in a peer-to-peer network/routing protocols)

Universal Composability [Canetti 00]secure when arbitrarily composed(desirable for modularity)

Strengthening Zero-Knowledge Protocols using Signatures – p.4/24

Page 11: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Issues of (Strengthening) Zero Knowledge Protocols

Since GMR85, many efforts are made to strengthen the originaldefinition of ZK proofs to fit into the “real world,” a.k.a. the “Internet.”

Concurrency [Dwork Naor Sahai 98]remains ZK if many verifiers interact with the prover concurrently(your web server is concurrent)

Non-malleability [Dolev Dwork Naor 91]secure against the man-in-the-middle attack(necessary in a peer-to-peer network/routing protocols)

Universal Composability [Canetti 00]secure when arbitrarily composed(desirable for modularity)

Strengthening Zero-Knowledge Protocols using Signatures – p.4/24

Page 12: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Issues of (Strengthening) Zero Knowledge Protocols

Since GMR85, many efforts are made to strengthen the originaldefinition of ZK proofs to fit into the “real world,” a.k.a. the “Internet.”

Concurrency [Dwork Naor Sahai 98]remains ZK if many verifiers interact with the prover concurrently(your web server is concurrent)

Non-malleability [Dolev Dwork Naor 91]secure against the man-in-the-middle attack(necessary in a peer-to-peer network/routing protocols)

Universal Composability [Canetti 00]secure when arbitrarily composed(desirable for modularity)

Strengthening Zero-Knowledge Protocols using Signatures – p.4/24

Page 13: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Concurrent ZK

“Protocol remains ZK when concurrently composed.”

Introduced by [Dwork Naor Sahai 98]

Difficult in the plain model[Canetti Kilian Petrank Rosen 01]blackbox ZK needs rounds[Prabhakaran Rosen Sahai 02]

rounds suffice[Barak 01]constant round non-blackbox ZK (bounded concurrency)

Easy in the common reference string (CRS) model[Damgård 00] constant round ZK (simulator generates CRS)

We work in the CRS model.

Strengthening Zero-Knowledge Protocols using Signatures – p.5/24

Page 14: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Concurrent ZK

“Protocol remains ZK when concurrently composed.”

Introduced by [Dwork Naor Sahai 98]

Difficult in the plain model�

[Canetti Kilian Petrank Rosen 01]blackbox ZK needs

� �� � �

rounds�

[Prabhakaran Rosen Sahai 02]� � � �

rounds suffice�

[Barak 01]constant round non-blackbox ZK (bounded concurrency)

Easy in the common reference string (CRS) model[Damgård 00] constant round ZK (simulator generates CRS)

We work in the CRS model.

Strengthening Zero-Knowledge Protocols using Signatures – p.5/24

Page 15: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Concurrent ZK

“Protocol remains ZK when concurrently composed.”

Introduced by [Dwork Naor Sahai 98]

Difficult in the plain model�

[Canetti Kilian Petrank Rosen 01]blackbox ZK needs

� �� � �

rounds�

[Prabhakaran Rosen Sahai 02]� � � �

rounds suffice�

[Barak 01]constant round non-blackbox ZK (bounded concurrency)

Easy in the common reference string (CRS) model[Damgård 00] constant round ZK (simulator generates CRS)

We work in the CRS model.

Strengthening Zero-Knowledge Protocols using Signatures – p.5/24

Page 16: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Non-malleable ZK

“Seeing a proof doesn’t help prove something related.”

[Dolev Dwork Naor 91] one-time non-malleable ZK

[Sahai 99] one-time non-malleable NIZK

[De Santis, Di Crescenzo, Ostrovsky, Persiano, Sahai 01]unbounded non-malleable NIZK

Strengthening Zero-Knowledge Protocols using Signatures – p.6/24

Page 17: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Non-malleable ZK

“Seeing a proof doesn’t help prove something related.”

[Dolev Dwork Naor 91] one-time non-malleable ZK

[Sahai 99] one-time non-malleable NIZK

VerifierADVERSARYProver

"prover""verifier"

[De Santis, Di Crescenzo, Ostrovsky, Persiano, Sahai 01]unbounded non-malleable NIZK

Strengthening Zero-Knowledge Protocols using Signatures – p.6/24

Page 18: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Non-malleable ZK

“Seeing a proof doesn’t help prove something related.”

[Dolev Dwork Naor 91] one-time non-malleable ZK

[Sahai 99] one-time non-malleable NIZK

[De Santis, Di Crescenzo, Ostrovsky, Persiano, Sahai 01]unbounded non-malleable NIZK

VerifierADVERSARYProver

"prover""verifier"

Prover

Prover

simulator

Strengthening Zero-Knowledge Protocols using Signatures – p.6/24

Page 19: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Simulation Sound (NI)ZK

“Seeing a simulated false proof doesn’t help prove something wrong.”

[Sahai 99] one-time simulation sound NIZK

[De Santis, Di Crescenzo, Ostrovsky, Persiano, Sahai 01]unbounded simulation sound NIZK

Strengthening Zero-Knowledge Protocols using Signatures – p.7/24

Page 20: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Simulation Sound (NI)ZK

“Seeing a simulated false proof doesn’t help prove something wrong.”

[Sahai 99] one-time simulation sound NIZK

VerifierADVERSARYProver

"prover""verifier"

[De Santis, Di Crescenzo, Ostrovsky, Persiano, Sahai 01]unbounded simulation sound NIZK

Strengthening Zero-Knowledge Protocols using Signatures – p.7/24

Page 21: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Simulation Sound (NI)ZK

“Seeing a simulated false proof doesn’t help prove something wrong.”

[Sahai 99] one-time simulation sound NIZK

[De Santis, Di Crescenzo, Ostrovsky, Persiano, Sahai 01]unbounded simulation sound NIZK

VerifierADVERSARYProver

"prover""verifier"

Prover

Prover

simulator

Strengthening Zero-Knowledge Protocols using Signatures – p.7/24

Page 22: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Interactive Simulation Sound ZK

VerifierADVERSARYProver

"prover""verifier"

Prover

Prover

simulator

We allow to concurrently interact with many simulated provers.

Still cannot produce a false proof.

Strengthening Zero-Knowledge Protocols using Signatures – p.8/24

Page 23: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Interactive Non-malleable ZK

VerifierADVERSARYProver

"prover""verifier"

Prover

Prover

simulator

extractor

w

We allow to concurrently interact with many simulated provers.

Anything proves, a witness can be extracted.

Roughly speaking,Non-malleable ZK = Simulation Sound ZK + non-rewinding POK.

Strengthening Zero-Knowledge Protocols using Signatures – p.9/24

Page 24: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Non-malleable/Simulation Sound ZK: Known Constructions

[Dolev Dwork Naor 91]one-time non-malleable ZK, polylogarithmic rounds, plain model

[Barak 02]one-time non-malleable ZK, constant rounds, plain model

[Katz 03]one-time non-malleable ZK, three rounds, CRS model

[Sahai 00]unbounded simulation-sound NIZK�

[De Santis, Di Crescenzo, Ostrovsky, Persiano, Sahai 01]unbounded non-malleable NIZK

Strengthening Zero-Knowledge Protocols using Signatures – p.10/24

Page 25: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Universally Composable ZK

[Canetti 00]Universal Composability: a framework for defining (very strong)security that allows arbitrary composition

P2 PnP1 P2 PnP1

ideal process real−world model

Strengthening Zero-Knowledge Protocols using Signatures – p.11/24

Page 26: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

UCZK: Known Results

Roughly speakingUCZK � unbounded non-malleable ZK�

[Canetti 00]UCZK impossible in plain model

[Canetti Fischlin 01]three round UCZK in CRS model, adaptive corruption

[Canetti Lindell Ostrovsky Sahai 02]The DDOPS01 construction is NIUCZK, non-adaptive corruption

Strengthening Zero-Knowledge Protocols using Signatures – p.12/24

Page 27: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Efficiency?

Most of the previous constructions are not very efficient.

Complicated constructionse.g. non-blackbox simulation

NIZKNon-interactive ZK is generally inefficient.

Cook-Levin theorem

pick an NP-complete languageconstruct a (concurrent/simulation sound/non-malleable/UC)ZK proof for

Strengthening Zero-Knowledge Protocols using Signatures – p.13/24

Page 28: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Efficiency?

Most of the previous constructions are not very efficient.

Complicated constructionse.g. non-blackbox simulation

NIZKNon-interactive ZK is generally inefficient.

Cook-Levin theorem

pick an NP-complete languageconstruct a (concurrent/simulation sound/non-malleable/UC)ZK proof for

Strengthening Zero-Knowledge Protocols using Signatures – p.13/24

Page 29: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Efficiency?

Most of the previous constructions are not very efficient.

Complicated constructionse.g. non-blackbox simulation

NIZKNon-interactive ZK is generally inefficient.

Cook-Levin theorem

pick an NP-complete languageconstruct a (concurrent/simulation sound/non-malleable/UC)ZK proof for

Strengthening Zero-Knowledge Protocols using Signatures – p.13/24

Page 30: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Efficiency?

Most of the previous constructions are not very efficient.

Complicated constructionse.g. non-blackbox simulation

NIZKNon-interactive ZK is generally inefficient.

Cook-Levin theorem�

pick an NP-complete language

construct a (concurrent/simulation sound/non-malleable/UC)ZK proof for

Strengthening Zero-Knowledge Protocols using Signatures – p.13/24

Page 31: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Efficiency?

Most of the previous constructions are not very efficient.

Complicated constructionse.g. non-blackbox simulation

NIZKNon-interactive ZK is generally inefficient.

Cook-Levin theorem�

pick an NP-complete language

construct a (concurrent/simulation sound/non-malleable/UC)ZK proof for

�Strengthening Zero-Knowledge Protocols using Signatures – p.13/24

Page 32: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Efficiency?

Most of the previous constructions are not very efficient.

Complicated constructionse.g. non-blackbox simulation

NIZKNon-interactive ZK is generally inefficient.

Cook-Levin theorem�

pick an NP-complete language

construct a (concurrent/simulation sound/non-malleable/UC)ZK proof for

reduce the ZK proof for any NP language to

Strengthening Zero-Knowledge Protocols using Signatures – p.13/24

Page 33: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Efficiency?

Most of the previous constructions are not very efficient.

Complicated constructionse.g. non-blackbox simulation

NIZKNon-interactive ZK is generally inefficient.

Cook-Levin theorem�

pick an NP-complete language

construct a (concurrent/simulation sound/non-malleable/UC)ZK proof for

reduce the ZK proof for any language to

� � Inefficient!

Strengthening Zero-Knowledge Protocols using Signatures – p.13/24

Page 34: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Our Contributions

A novel technique to construct efficient, concurrent, non-malleable,and/or universal composable ZK in the CRS model using signatures

-protocol (three-round, public-coin, honest-verifier)unbounded simulation-sound ZK

-protocol ( -protocol + non-rewinding POK)unbounded non-malleable ZKuniversally composable ZK

What’s special about our technique?

conceptually simple

efficientthree rounds, small additive overhead (const. pub. key op’s)completely avoid the Cook-Levin Theorem(c.f. Micciancio and Petrank,“Simulatable Commitments and Efficient Concurrent Zero-Knowledge,”

an hour ago. )

Strengthening Zero-Knowledge Protocols using Signatures – p.14/24

Page 35: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Our Contributions

A novel technique to construct efficient, concurrent, non-malleable,and/or universal composable ZK in the CRS model using signatures

� �

-protocol (three-round, public-coin, honest-verifier)

� � unbounded simulation-sound ZK

-protocol ( -protocol + non-rewinding POK)unbounded non-malleable ZKuniversally composable ZK

What’s special about our technique?

conceptually simple

efficientthree rounds, small additive overhead (const. pub. key op’s)completely avoid the Cook-Levin Theorem(c.f. Micciancio and Petrank,“Simulatable Commitments and Efficient Concurrent Zero-Knowledge,”

an hour ago. )

Strengthening Zero-Knowledge Protocols using Signatures – p.14/24

Page 36: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Our Contributions

A novel technique to construct efficient, concurrent, non-malleable,and/or universal composable ZK in the CRS model using signatures

� �

-protocol (three-round, public-coin, honest-verifier)

� � unbounded simulation-sound ZK� �

-protocol (

-protocol + non-rewinding POK)

� � unbounded non-malleable ZK� � universally composable ZK

What’s special about our technique?

conceptually simple

efficientthree rounds, small additive overhead (const. pub. key op’s)completely avoid the Cook-Levin Theorem(c.f. Micciancio and Petrank,“Simulatable Commitments and Efficient Concurrent Zero-Knowledge,”

an hour ago. )

Strengthening Zero-Knowledge Protocols using Signatures – p.14/24

Page 37: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Our Contributions

A novel technique to construct efficient, concurrent, non-malleable,and/or universal composable ZK in the CRS model using signatures

� �

-protocol (three-round, public-coin, honest-verifier)

� � unbounded simulation-sound ZK� �

-protocol (

-protocol + non-rewinding POK)

� � unbounded non-malleable ZK� � universally composable ZK

What’s special about our technique?

conceptually simple

efficientthree rounds, small additive overhead (const. pub. key op’s)completely avoid the Cook-Levin Theorem(c.f. Micciancio and Petrank,“Simulatable Commitments and Efficient Concurrent Zero-Knowledge,”

an hour ago. )

Strengthening Zero-Knowledge Protocols using Signatures – p.14/24

Page 38: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Our Contributions

A novel technique to construct efficient, concurrent, non-malleable,and/or universal composable ZK in the CRS model using signatures

� �

-protocol (three-round, public-coin, honest-verifier)

� � unbounded simulation-sound ZK� �

-protocol (

-protocol + non-rewinding POK)

� � unbounded non-malleable ZK� � universally composable ZK

What’s special about our technique?

conceptually simple

efficient

three rounds, small additive overhead (const. pub. key op’s)completely avoid the Cook-Levin Theorem(c.f. Micciancio and Petrank,“Simulatable Commitments and Efficient Concurrent Zero-Knowledge,”

an hour ago. )

Strengthening Zero-Knowledge Protocols using Signatures – p.14/24

Page 39: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Our Contributions

A novel technique to construct efficient, concurrent, non-malleable,and/or universal composable ZK in the CRS model using signatures

� �

-protocol (three-round, public-coin, honest-verifier)

� � unbounded simulation-sound ZK� �

-protocol (

-protocol + non-rewinding POK)

� � unbounded non-malleable ZK� � universally composable ZK

What’s special about our technique?

conceptually simple

efficient�

three rounds, small additive overhead (const. pub. key op’s)

completely avoid the Cook-Levin Theorem(c.f. Micciancio and Petrank,“Simulatable Commitments and Efficient Concurrent Zero-Knowledge,”

an hour ago. )

Strengthening Zero-Knowledge Protocols using Signatures – p.14/24

Page 40: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Our Contributions

A novel technique to construct efficient, concurrent, non-malleable,and/or universal composable ZK in the CRS model using signatures

� �

-protocol (three-round, public-coin, honest-verifier)

� � unbounded simulation-sound ZK� �

-protocol (

-protocol + non-rewinding POK)

� � unbounded non-malleable ZK� � universally composable ZK

What’s special about our technique?

conceptually simple

efficient�

three rounds, small additive overhead (const. pub. key op’s)�

completely avoid the Cook-Levin Theorem(c.f. Micciancio and Petrank,“Simulatable Commitments and Efficient Concurrent Zero-Knowledge,”

an hour ago. )

Strengthening Zero-Knowledge Protocols using Signatures – p.14/24

Page 41: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Ideas of the Conversion

Start with a

-protocol �

= “

is true.”

Prover Verifier

�� � � � �

��

Convert to= “Either is true, or I know a signature for message w.r.t. .”

Strengthening Zero-Knowledge Protocols using Signatures – p.15/24

Page 42: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Ideas of the Conversion

Start with a

-protocol �

= “

is true.”

Prover Verifier

�� � � � �

��

Convert to� �

= “Either

is true, or I know a signature for message � w.r.t. �

.”

Strengthening Zero-Knowledge Protocols using Signatures – p.15/24

Page 43: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Protocol in More Details

� �

= “Either

is true, or I know a signature for message � w.r.t. � .”

� �

is from a digital signature scheme SIG � �

Gen � Sign � Verify

existential unforgeable against chosen message attack.

� �

is in the common reference string ( �

unknown).

� � � � �

is a fresh verification key of a one-time signature schemeSIG � � �

Gen � � Sign � � Verify � � .

Prover Verifier

Gensig

Sign tran Verify tran

Strengthening Zero-Knowledge Protocols using Signatures – p.16/24

Page 44: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

Protocol in More Details

� �

= “Either

is true, or I know a signature for message � w.r.t. � .”

� �

is from a digital signature scheme SIG � �

Gen � Sign � Verify

existential unforgeable against chosen message attack.

� �

is in the common reference string ( �

unknown).

� � � � �

is a fresh verification key of a one-time signature schemeSIG � � �

Gen � � Sign � � Verify � � .

Prover Verifier

� � � � � � � � Gen � � ! � � �

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

Strengthening Zero-Knowledge Protocols using Signatures – p.16/24

Page 45: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

How does it Work?

Prover Verifier

� � � � � � � � Gen � � ! � � �

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

Completeness — straightforward

Soundness — since unknown, infeasible to fake a signature

ZK-ness — generates and can produce signatures(non-rewinding simulation means concurrency)

Strengthening Zero-Knowledge Protocols using Signatures – p.17/24

Page 46: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

How does it Work?

Prover Verifier

� � � � � � � � Gen � � ! � � �

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

Completeness — straightforward

Soundness — since unknown, infeasible to fake a signature

ZK-ness — generates and can produce signatures(non-rewinding simulation means concurrency)

Strengthening Zero-Knowledge Protocols using Signatures – p.17/24

Page 47: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

How does it Work?

Prover Verifier

� � � � � � � � Gen � � ! � � �

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

Completeness — straightforward

Soundness — since �

unknown, infeasible to fake a signature

ZK-ness — generates and can produce signatures(non-rewinding simulation means concurrency)

Strengthening Zero-Knowledge Protocols using Signatures – p.17/24

Page 48: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

How does it Work?

Prover Verifier

� � � � � � � � Gen � � ! � � �

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

Completeness — straightforward

Soundness — since �

unknown, infeasible to fake a signature

ZK-ness —

#

generates

� � � � �and can produce signatures

(non-rewinding simulation means concurrency)

Strengthening Zero-Knowledge Protocols using Signatures – p.17/24

Page 49: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

How does it Work — Unbounded Simulation Soundness

VerifierADVERSARYProver

"prover""verifier"

Prover

Prover

simulator

We allow to (arbitrarily) interact with many (simulated) provers.

Still cannot produce a false proof.

Strengthening Zero-Knowledge Protocols using Signatures – p.18/24

Page 50: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

How does it Work — Unbounded Simulation Soundness

Prover Verifier

� � � � � � � � Gen � � ! � � �

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

“producing a false proof” = “faking a signature for � �

does not know � � � cannot reuse � �

fakes a signature for a fresh � � � breaks SIG

Strengthening Zero-Knowledge Protocols using Signatures – p.19/24

Page 51: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

How about Unbounded Non-malleability?

VerifierADVERSARYProver

"prover""verifier"

Prover

Prover

simulator

extractor

w

Non-malleable ZK = Simulation Sound ZK + non-rewinding POK

We allow to interact with many (simulated) provers.

Anything proves, a witness can be extracted.

Strengthening Zero-Knowledge Protocols using Signatures – p.20/24

Page 52: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

From -protocols to Unbounded Non-malleability

same construction, let

be an

-protocol

Prover Verifier

� � � � � � � � Gen � � ! � � �

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

� �

-protocol =

-protocol + non-rewinding POK

“failing to extract” = “faking a signature for � �

does not know � � � cannot reuse � �

fakes a signature for a fresh � � � breaks SIG

Strengthening Zero-Knowledge Protocols using Signatures – p.21/24

Page 53: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

From Unbounded Non-malleability to Universal Composability

Prover(

$&% ) Verifier($&' )

� � � � � � � � Gen � � ! � � � $% � $' � � ( ) � � ��

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

roughly speakingUCZK � unbounded non-malleable ZK�

easily augmentable to UCZK for non-adaptive corruption(add common input, ProverID, VerifierID, SessionID)

Strengthening Zero-Knowledge Protocols using Signatures – p.22/24

Page 54: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

UCZK: Adaptive Corruption (With Erasure)

start with the UCZK non-adaptive construction

technique from [Damgård 00, Jarecki Lysyanskaya 00]

Prover Verifier

* � first_message

� � � � � * �

� +

, � response

� � � � � * � + � z � verify

� � � * � + � , �

Prover Verifierfirst_message

commit

responsedecommit

erase a,d,z verifycom_verify

“Simulation Sound Trapdoor Commitment”: cannot fake adecommitment even after seeing a simulator faking

Strengthening Zero-Knowledge Protocols using Signatures – p.23/24

Page 55: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

UCZK: Adaptive Corruption (With Erasure)

start with the UCZK non-adaptive construction

technique from [Damgård 00, Jarecki Lysyanskaya 00]

Prover Verifier* � first_message

� � � � �

* - � commit

� * � * - �

� +

, � response

� � � � � * � + �

) � decommit

� * � * - �

erase

� � � a,d,z � verify

� � � * � + � , �

com_verify

� * � * - � ) �

“Simulation Sound Trapdoor Commitment”: cannot fake adecommitment even after seeing a simulator faking

Strengthening Zero-Knowledge Protocols using Signatures – p.23/24

Page 56: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

UCZK: Adaptive Corruption (With Erasure)

start with the UCZK non-adaptive construction

technique from [Damgård 00, Jarecki Lysyanskaya 00]

Prover Verifier* � first_message

� � � � �

* - � commit

� * � * - �

� +

, � response

� � � � � * � + �

) � decommit

� * � * - �

erase

� � � a,d,z � verify

� � � * � + � , �

com_verify

� * � * - � ) �

“Simulation Sound Trapdoor Commitment”: cannot fake adecommitment even after seeing a simulator faking

Strengthening Zero-Knowledge Protocols using Signatures – p.23/24

Page 57: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

What About Efficiency?

Prover Verifier

� � � � � � � � Gen � � ! � � �

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

Building by adding POK of signature toavoids the Cook-Levin Theoremefficient POK of signatures exists (Cramer-Shoup, DSA)

-protocols efficient composition of “OR”

Efficient one-time signatures and SSTCs

(honest-verifier ZK) + (additive const. pub. key operations)

(concurrent, non-malleable, and/or universally composable ZK)

Strengthening Zero-Knowledge Protocols using Signatures – p.24/24

Page 58: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

What About Efficiency?

Prover Verifier

� � � � � � � � Gen � � ! � � �

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

Building

� �

by adding POK of signature to�

avoids the Cook-Levin Theoremefficient POK of signatures exists (Cramer-Shoup, DSA)

-protocols efficient composition of “OR”

Efficient one-time signatures and SSTCs

(honest-verifier ZK) + (additive const. pub. key operations)

(concurrent, non-malleable, and/or universally composable ZK)

Strengthening Zero-Knowledge Protocols using Signatures – p.24/24

Page 59: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

What About Efficiency?

Prover Verifier

� � � � � � � � Gen � � ! � � �

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

Building

� �

by adding POK of signature to�

avoids the Cook-Levin Theorem�

efficient POK of signatures exists (Cramer-Shoup, DSA)� �

-protocols � efficient composition of “OR”

Efficient one-time signatures and SSTCs

(honest-verifier ZK) + (additive const. pub. key operations)

(concurrent, non-malleable, and/or universally composable ZK)

Strengthening Zero-Knowledge Protocols using Signatures – p.24/24

Page 60: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

What About Efficiency?

Prover Verifier

� � � � � � � � Gen � � ! � � �

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

Building

� �

by adding POK of signature to�

avoids the Cook-Levin Theorem�

efficient POK of signatures exists (Cramer-Shoup, DSA)� �

-protocols � efficient composition of “OR”

Efficient one-time signatures and SSTCs

(honest-verifier ZK) + (additive const. pub. key operations)

(concurrent, non-malleable, and/or universally composable ZK)

Strengthening Zero-Knowledge Protocols using Signatures – p.24/24

Page 61: Strengthening Zero-Knowledge Protocols using Signaturesyangke/papers/eurocrypt03.pdf · Strengthening Zero-Knowledge Protocols using Signatures – p.3/24 Issues of (Strengthening)

What About Efficiency?

Prover Verifier

� � � � � � � � Gen � � ! � � �

�� � � � �" �sig � � � � � �

��

� � Sign � � � � � tran

� � � Verify � � � � � tran � � �

Building

� �

by adding POK of signature to�

avoids the Cook-Levin Theorem�

efficient POK of signatures exists (Cramer-Shoup, DSA)� �

-protocols � efficient composition of “OR”

Efficient one-time signatures and SSTCs

(honest-verifier ZK) + (additive const. pub. key operations) �

(concurrent, non-malleable, and/or universally composable ZK)

Strengthening Zero-Knowledge Protocols using Signatures – p.24/24