+ All Categories
Home > Documents > ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in...

ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in...

Date post: 20-Mar-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
45
BIU WINTER SCHOOL | February 2019 ZERO-KNOWLEDGE for NP ALON ROSEN IDC HERZLIYA
Transcript
Page 1: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

BIU WINTER SCHOOL | February 2019

ZERO-KNOWLEDGE for NP

ALON ROSEN IDC HERZLIYA

Page 2: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Perfect ZK

Perfect ZK: โˆ€๐‘ƒ๐‘ƒ๐‘‡ ๐‘‰โˆ— โˆƒ๐‘ƒ๐‘ƒ๐‘‡ ๐‘† โˆ€๐‘ฅ โˆˆ ๐ฟ โˆ€๐‘ง

๐‘† ๐‘ฅ, ๐‘ง โ‰… ๐‘ƒ ๐‘ค , ๐‘‰โˆ— ๐‘ง ๐‘ฅ

Proposition: ๐‘„๐‘…๐‘ โˆˆ PZK

๐‘๐‘ƒ complete

๐‘†๐ด๐‘‡

๐ฟ๐ผ๐‘ P

NP

๐‘„๐‘…๐‘

Page 3: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Can ๐‘†๐ด๐‘‡ be proved in ZK?

Why do we care?

โ€ข ๐‘„๐‘…๐‘ is specific

โ€ข ๐‘†๐ด๐‘‡ is NP-complete

โ€ข If ๐‘†๐ด๐‘‡ โˆˆ ZK then every ๐ฟ โˆˆ NP is provable in ZK

Theorem [Fโ€™87, BHZโ€™87]: If ๐‘†๐ด๐‘‡ โˆˆ PZK then the

polynomial-time hierarchy collapses to the second level

Possible relaxations:

โ€ข Computational indistinguishability (now)

โ€ข Computational soundness (later)

Page 4: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Statistical

Zero-Knowledge

Page 5: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Statistical Indistinguishabi lity

Let ๐‘‹ and ๐‘Œ be random variables taking values in a set ฮฉ

Perfect indistinguishability (๐‘‹ โ‰… ๐‘Œ): โˆ€๐‘‡ โŠ† ฮฉ

๐‘ƒ๐‘Ÿ๐‘‹ ๐‘‹ โˆˆ ๐‘‡ = ๐‘ƒ๐‘Ÿ๐‘Œ ๐‘Œ โˆˆ ๐‘‡

๐œ€-indistinguishability (๐‘‹ โ‰…๐‘  ๐‘Œ): โˆ€๐‘‡ โŠ† ฮฉ

๐‘ƒ๐‘Ÿ ๐‘‹ โˆˆ ๐‘‡ โˆ’ ๐‘ƒ๐‘Ÿ ๐‘Œ โˆˆ ๐‘‡ โ‰ค ๐œ€

โ€ข ๐‘‹ = ๐‘‹๐‘› and ๐‘Œ = ๐‘Œ๐‘›

โ€ข ๐œ€ = ๐œ€ ๐‘›

Page 6: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Statistical Indistinguishabi lity

Let ๐‘‹ and ๐‘Œ be random variables taking values in a set ฮฉ

Perfect indistinguishability (๐‘‹ โ‰… ๐‘Œ): โˆ€๐‘‡ โŠ† ฮฉ

๐‘ƒ๐‘Ÿ๐‘‹ ๐‘‹ โˆˆ ๐‘‡ = ๐‘ƒ๐‘Ÿ๐‘Œ ๐‘Œ โˆˆ ๐‘‡

๐œ€-indistinguishability (๐‘‹ โ‰…๐‘  ๐‘Œ): โˆ€๐‘‡ โŠ† ฮฉ

๐‘ƒ๐‘Ÿ ๐‘‹ โˆˆ ๐‘‡ โˆ’ ๐‘ƒ๐‘Ÿ ๐‘Œ โˆˆ ๐‘‡ โ‰ค ๐œ€

Triangle inequality: if

โ€ข ๐‘‹, ๐‘Œ are ๐œ€1 -indistinguishable and

โ€ข ๐‘Œ, ๐‘ are ๐œ€2-indistinguishable then

โ€ข ๐‘‹, ๐‘ are ๐œ€1 + ๐œ€2 -indistinguishable

Page 7: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Statistical Indistinguishabi lity

Let ๐‘‹ and ๐‘Œ be random variables taking values in a set ฮฉ

Perfect indistinguishability (๐‘‹ โ‰… ๐‘Œ): โˆ€๐‘‡ โŠ† ฮฉ

๐‘ƒ๐‘Ÿ๐‘‹ ๐‘‹ โˆˆ ๐‘‡ = ๐‘ƒ๐‘Ÿ๐‘Œ ๐‘Œ โˆˆ ๐‘‡

๐œ€-indistinguishability (๐‘‹ โ‰…๐‘  ๐‘Œ): โˆ€๐‘‡ โŠ† ฮฉ

๐‘ƒ๐‘Ÿ ๐‘‹ โˆˆ ๐‘‡ โˆ’ ๐‘ƒ๐‘Ÿ ๐‘Œ โˆˆ ๐‘‡ โ‰ค ๐œ€

Indistinguishability of multiple samples: if

โ€ข ๐‘‹, ๐‘Œ are ๐œ€-indistinguishable then

โ€ข ๐‘‹๐‘ž , ๐‘Œ๐‘ž are ๐‘ž๐œ€-indistinguishable

Hybrid argument: ๐‘‹๐‘žโˆ’๐‘–๐’€๐‘Œ๐‘–โˆ’1 โ‰…๐‘  ๐‘‹๐‘žโˆ’๐‘–๐‘ฟ๐‘Œ๐‘–โˆ’1

Page 8: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

๐‘‹๐‘žโˆ’๐‘–๐’€๐‘Œ๐‘–โˆ’1 โ‰…๐‘  ๐‘‹๐‘žโˆ’๐‘–๐‘ฟ๐‘Œ๐‘–โˆ’1

๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹โ‰…๐‘  ๐‘Œ๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹โ‰…๐‘  ๐‘Œ๐‘Œ๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹โ‰…๐‘  ๐‘Œ๐‘Œ๐‘Œ๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹๐‘‹

โ‹ฎ

โ‰…๐‘  ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘‹โ‰…๐‘  ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ๐‘Œ

By triangle inequality: ๐œ€ + ๐œ€ + โ‹ฏ+ ๐œ€ = ๐‘ž๐œ€

Hybrid Argument

๐‘– = 0 ๐‘‹๐‘ž โ†’

โ†’ ๐‘Œ๐‘ž

๐‘– = 1

๐‘– = 2๐‘– = 3

๐‘– = ๐‘ž โˆ’ 1๐‘– = ๐‘ž

Page 9: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Statistical ZK: โˆ€๐‘ƒ๐‘ƒ๐‘‡ ๐‘‰โˆ— โˆƒ๐‘ƒ๐‘ƒ๐‘‡ ๐‘† โˆ€๐‘ฅ โˆˆ ๐ฟ โˆ€๐‘ง

๐‘† ๐‘ฅ, ๐‘ง โ‰…๐‘  ๐‘ƒ, ๐‘‰โˆ— ๐‘ง ๐‘ฅ

โ€ข SZK - all ๐ฟ that have a statistical ZK proof

โ€ข ๐‘† ๐‘ฅ, ๐‘ง and ๐‘ƒ, ๐‘‰โˆ— ๐‘ง ๐‘ฅ are indexed by ๐‘ฅ, ๐‘ง

โ€ข Typically ๐‘› = ๐‘ฅ (actually, ๐‘› = ๐‘ค )

Theorem [Fโ€™87, BHZโ€™87]: If ๐‘†๐ด๐‘‡ โˆˆ SZK then the polynomial-

time hierarchy collapses to the second level

Statistical ZK

Page 10: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Computational

Zero-Knowledge

Page 11: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

๐œ€-indistinguishability (๐‘‹ โ‰…๐‘  ๐‘Œ): โˆ€๐‘‡ โŠ† ฮฉ

๐‘ƒ๐‘Ÿ ๐‘‹ โˆˆ ๐‘‡ โˆ’ ๐‘ƒ๐‘Ÿ ๐‘Œ โˆˆ ๐‘‡ โ‰ค ๐œ€

๐‘ก, ๐œ€ -indistinguishability (๐‘‹ โ‰…๐‘ ๐‘Œ): โˆ€๐‘‡ โŠ† ฮฉ that are

โ€œdecidable in time ๐‘กโ€

๐‘ƒ๐‘Ÿ ๐‘‹ โˆˆ ๐‘‡ โˆ’ ๐‘ƒ๐‘Ÿ ๐‘Œ โˆˆ ๐‘‡ โ‰ค ๐œ€

๐‘‡ โŠ† ๐ด is decidable in time ๐‘ก if โˆƒtime-๐‘ก ๐ท such that โˆ€๐‘ฅ โˆˆ ๐ด

๐‘ฅ โˆˆ ๐‘‡ โŸท ๐ท ๐‘ฅ = 1

Computational Indistinguishabi lity

Page 12: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

๐œ€-indistinguishability (๐‘‹ โ‰…๐‘  ๐‘Œ): โˆ€๐‘‡ โŠ† ฮฉ

๐‘ƒ๐‘Ÿ ๐‘‹ โˆˆ ๐‘‡ โˆ’ ๐‘ƒ๐‘Ÿ ๐‘Œ โˆˆ ๐‘‡ โ‰ค ๐œ€

๐‘ก, ๐œ€ -indistinguishability (๐‘‹ โ‰…๐‘ ๐‘Œ): โˆ€time-๐‘ก ๐ท

๐‘ƒ๐‘Ÿ ๐ท ๐‘‹ = 1 โˆ’ ๐‘ƒ๐‘Ÿ ๐ท ๐‘Œ = 1 โ‰ค ๐œ€

Triangle inequality: if

โ€ข ๐‘‹, ๐‘Œ are ๐‘ก1, ๐œ€1 -indistinguishable and

โ€ข ๐‘Œ, ๐‘ are ๐‘ก2, ๐œ€2 -indistinguishable then

โ€ข ๐‘‹, ๐‘ are ๐‘š๐‘–๐‘› ๐‘ก1, ๐‘ก2 , ๐œ€1 + ๐œ€2 -indistinguishable

Computational Indistinguishabi lity

Page 13: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

๐œ€-indistinguishability (๐‘‹ โ‰…๐‘  ๐‘Œ): โˆ€๐‘‡ โŠ† ฮฉ

๐‘ƒ๐‘Ÿ ๐‘‹ โˆˆ ๐‘‡ โˆ’ ๐‘ƒ๐‘Ÿ ๐‘Œ โˆˆ ๐‘‡ โ‰ค ๐œ€

๐‘ก, ๐œ€ -indistinguishability (๐‘‹ โ‰…๐‘ ๐‘Œ): โˆ€time-๐‘ก ๐ท

๐‘ƒ๐‘Ÿ ๐ท ๐‘‹ = 1 โˆ’ ๐‘ƒ๐‘Ÿ ๐ท ๐‘Œ = 1 โ‰ค ๐œ€

Indistinguishability of multiple samples: if

โ€ข ๐‘‹, ๐‘Œ are ๐‘ก, ๐œ€ -indistinguishable then

โ€ข ๐‘‹๐‘ž , ๐‘Œ๐‘ž are ๐‘ก, ๐‘ž๐œ€ -indistinguishable

Hybrid argument (non-uniform):

๐‘‹๐‘žโˆ’๐‘–๐’€๐‘Œ๐‘–โˆ’1 โ‰…๐‘  ๐‘‹๐‘žโˆ’๐‘–๐‘ฟ๐‘Œ๐‘–โˆ’1

Computational Indistinguishabi lity

Page 14: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Computational Indistinguishabi lity

Typically:

โ€ข ๐‘ก = ๐‘๐‘œ๐‘™๐‘ฆ ๐‘›โ€ข ๐œ€ = ๐‘›๐‘’๐‘” ๐‘›

Definition: ๐œ€ = ๐œ€ ๐‘› is negligible if it is eventually smaller

than 1/๐‘ ๐‘› for every polynomial ๐‘

๐œ€ = ๐‘›๐‘’๐‘” ๐‘› , ๐‘ž = ๐‘๐‘œ๐‘™๐‘ฆ ๐‘› โ†’ ๐‘ž๐œ€ = ๐‘›๐‘’๐‘” ๐‘›

๐‘‹1 โ‰…๐œ€ ๐‘‹2โ‹ฏ โ‰…๐œ€ ๐‘‹

๐‘ž โ†’ ๐‘‹1 โ‰…๐‘ž๐œ€ ๐‘‹๐‘ž

In practice: concrete choices of ๐‘ก,q and ๐œ€

Page 15: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Computational ZK: โˆ€๐‘ƒ๐‘ƒ๐‘‡ ๐‘‰โˆ— โˆƒ๐‘ƒ๐‘ƒ๐‘‡ ๐‘† โˆ€๐‘ฅ โˆˆ ๐ฟ โˆ€๐‘ง

๐‘† ๐‘ฅ, ๐‘ง โ‰…๐‘ ๐‘ƒ, ๐‘‰โˆ— ๐‘ง ๐‘ฅ

PZK โŠ† SZK โŠ† CZK

Theorem [GMWโ€™86]: Suppose one-way functions exist.

Then NP โŠ† CZK

Computational ZK

Page 16: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Definition: ๐‘“: 0,1 โˆ— โ†’ 0,1 โˆ— is ๐‘ก, ๐œ€ -one-way if โˆ€time-๐‘ก ๐ด

๐‘ƒ๐‘Ÿ๐‘‹ ๐ด inverts ๐‘“ ๐‘‹ โ‰ค ๐œ€

Candidate OWFs:

โ€ข Rabin/RSA: ๐‘ฅ2 ๐‘š๐‘œ๐‘‘ ๐‘ ๐‘ฅ๐‘’ ๐‘š๐‘œ๐‘‘ ๐‘

โ€ข Discrete exponentiation: ๐‘”๐‘ฅ ๐‘š๐‘œ๐‘‘ ๐‘ƒ

โ€ข SIS/LWE: ๐ด๐‘ฅ ๐‘š๐‘œ๐‘‘ ๐‘ž ๐ด๐‘ฅ + ๐‘’ ๐‘š๐‘œ๐‘‘ ๐‘ž

โ€ข AES: ๐ด๐ธ๐‘†๐‘ฅ 0๐‘›

โ€ข SHA: โ„Ž ๐‘ฅ

One-way Functions

Page 17: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Commitment Schemes

Page 18: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Commitment Scheme

โ€ข Two-stage protocol between Committer and Receiver

Completeness: ๐ถ can always generate valid

๐‘ = ๐ถ๐‘œ๐‘š ๐‘š, ๐‘Ÿ

R๐‘ = ๐ถ๐‘œ๐‘š ๐‘š, ๐‘Ÿ

๐‘š, ๐‘Ÿ = ๐ท๐‘’๐‘ ๐‘

Commit

Reveal

Page 19: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Commitment Scheme

โ€ข Two-stage protocol between Committer and Receiver

RCommit

Reveal

๐ถ๐‘œ๐‘š ๐‘š, ๐‘Ÿ is

๐‘…โˆ—โ€™s view of the

commit phase

๐ท๐‘’๐‘ ๐‘ is

๐‘…โˆ—โ€™s view of the

reveal phase

Canonical reveal:

๐ท๐‘’๐‘ ๐‘ = ๐‘š, ๐‘Ÿ

Page 20: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Statistical ly-binding Commitments

Definition: A statistically-binding ๐ถ๐‘œ๐‘š,๐ท๐‘’๐‘ satisfies:

Computational hiding: ๐‘ƒ๐‘ƒ๐‘‡ ๐‘…โˆ— โˆ€๐‘š1, ๐‘š2

๐ถ๐‘œ๐‘š ๐‘š1 โ‰…๐‘ ๐ถ๐‘œ๐‘š ๐‘š2

Statistical binding: ๐ถโˆ— โˆ€๐‘š1 โ‰  ๐‘š2

๐‘ƒ๐‘Ÿ ๐ถโˆ— wins the binding game โ‰ค ๐‘›๐‘’๐‘” ๐‘›

๐ถโˆ— wins the binding game if it generates ๐‘ along with

โ€ข ๐‘š1, ๐‘Ÿ1 = ๐ท๐‘’๐‘ ๐‘โ€ข ๐‘š2, ๐‘Ÿ2 = ๐ท๐‘’๐‘ ๐‘

โ€ข Note: hiding holds even if ๐‘š1, ๐‘š2 are known

โ€ข Later: statistically-hiding commitments

Page 21: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

โ€ข El-Gamal (assuming DDH):

๐ถ๐‘œ๐‘š๐‘”,โ„Ž ๐‘š, ๐‘Ÿ = ๐‘”๐‘Ÿ , โ„Ž๐‘Ÿ โˆ™ ๐‘”๐‘š

โ€ข Any OWP:

๐ถ๐‘œ๐‘š ๐‘š, ๐‘Ÿ = ๐‘“ ๐‘Ÿ , ๐‘ ๐‘Ÿ โŠ• ๐‘š

โ€ข Any PRG (and hence OWF):

๐ถ๐‘œ๐‘š๐‘Ÿ ๐‘, ๐‘  = แ‰Š๐บ ๐‘  ๐‘ = 0๐บ ๐‘  โŠ• ๐‘Ÿ ๐‘ = 1

Examples (statistical ly-binding)

Page 22: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

NP โŠ† CZK

Page 23: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Theorem [GMWโ€™86]: If statistically-binding commitments

exist then NP โŠ† CZK

Theorem [Bโ€™86]: If statistically-binding commitments

exist then ๐ป๐ด๐‘€ โˆˆ CZK

๐ป๐ด๐‘€ = ๐บ| ๐บ has a Hamiltomian cycle

Ham cycle: passes via each vertex exactly once

๐ป๐ด๐‘€ โˆˆ CZK

Page 24: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Every ๐ฟ โˆˆ NP is poly-time reducible to ๐ป๐ด๐‘€

โˆƒpoly-time computable ๐‘“ such that โˆ€๐‘ฅ

๐‘ฅ โˆˆ ๐ฟ โ‡” ๐‘“ ๐‘ฅ โˆˆ ๐ป๐ด๐‘€

To prove ๐ฟ โˆˆ CZK, sufficient to prove ๐ป๐ด๐‘€ โˆˆ CZK

๐ป๐ด๐‘€ i s NP -complete

VP ๐‘ฅ โˆˆ ๐ฟโ†•

๐‘“ ๐‘ฅ โˆˆ ๐ป๐ด๐‘€

ACCEPT/REJECT

๐‘ค for ๐‘ฅ โˆˆ ๐ฟโ†•

๐‘”(๐‘ค) for ๐‘“ ๐‘ฅ โˆˆ ๐ป๐ด๐‘€

Page 25: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

Adjacency Matrix Representation

0 1 0 0 1 1

1 0 1 1 0 0

1 1 0 0 1 0

0 0 1 0 1 1

1 0 1 1 0 1

1 1 0 1 1 0

Graph ๐บ Ham cycle ๐‘ค

0 ๐Ÿ 0 0 1 1

1 0 1 ๐Ÿ 0 0

1 1 0 0 ๐Ÿ 0

0 0 ๐Ÿ 0 1 1

1 0 1 1 0 ๐Ÿ

๐Ÿ 1 0 1 1 0

Page 26: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

0 ๐Ÿ 0 0 1 1

1 0 1 ๐Ÿ 0 0

1 1 0 0 ๐Ÿ 0

0 0 ๐Ÿ 0 1 1

1 0 1 1 0 ๐Ÿ

๐Ÿ 1 0 1 1 0

Committing to ๐บ and opening cycle ๐‘ค

Graph ๐บ ๐’„ = ๐ถ๐‘œ๐‘š ๐บ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

โ†’

0 ๐Ÿ 0 0 1 1

1 0 1 ๐Ÿ 0 0

1 1 0 0 ๐Ÿ 0

0 0 ๐Ÿ 0 1 1

1 0 1 1 0 ๐Ÿ

๐Ÿ 1 0 1 1 0

๐‘ค โˆˆ ๐ท๐‘’๐‘ ๐‘๐บ = ๐ท๐‘’๐‘ ๐‘

Page 27: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

An interactive proof for ๐ป๐ด๐‘€

VP

๐‘ = 0: ๐‘ข โˆˆ ๐ท๐‘’๐‘ ๐’„

๐‘

๐บ โˆˆ ๐ป๐ด๐‘€

๐‘ โˆˆ๐‘… 0,1

๐’„ = ๐ถ๐‘œ๐‘š ๐œ‹(๐บ)๐œ‹ โˆˆ๐‘… ๐‘†๐‘›

Ham cycle ๐‘ค

๐‘ = 1: ๐œ‹, ๐ป = ๐ท๐‘’๐‘ ๐’„

In either case,

verify hat ๐ท๐‘’๐‘ are valid

๐‘ข=๐œ‹(๐‘ค) Verify that ๐‘ข is a cycle

Verify that ๐ป = ๐œ‹ ๐บ

Page 28: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

When ๐‘ = 0

๐’„ = ๐ถ๐‘œ๐‘š ๐œ‹(๐บ)

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐‘ข โˆˆ ๐ท๐‘’๐‘ ๐’„

๐‘ = 0

Verify :

โ€ข That ๐ท๐‘’๐‘ is valid

โ€ข That ๐‘ข is a cycle

Page 29: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

When ๐‘ = 1

0 1 0 0 1 1

1 0 1 1 0 0

1 1 0 0 1 0

0 0 1 0 1 1

1 0 1 1 0 1

1 1 0 1 1 0

6 1 3 2 5 4

๐ป = ๐ท๐‘’๐‘ ๐’„๐’„ = ๐ถ๐‘œ๐‘š ๐œ‹(๐บ)

๐œ‹

๐‘ = 1

Verify :

โ€ข That ๐ท๐‘’๐‘ is valid

โ€ข That ๐ป = ๐œ‹ ๐บ

Page 30: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Soundness

Claim: If ๐ถ๐‘œ๐‘š,๐ท๐‘’๐‘ is statistically binding then ๐‘ƒ, ๐‘‰is an interactive proof for ๐ป๐ด๐‘€

Soundness:

If ๐‘ƒ๐‘Ÿ๐‘ ๐‘ƒโˆ—, ๐‘‰ accepts ๐‘ฅ > 1/2

then both

โ€ข ๐‘ข is a cycle in ๐ป

โ€ข and ๐ป = ๐œ‹ ๐บ

So ๐œ‹โˆ’1 ๐‘ข is a cycle in ๐บ

VP*

๐‘ = 0: ๐‘ข

๐‘

๐ถ๐‘œ๐‘š ๐œ‹(๐บ)

๐‘ = 1: ๐œ‹, ๐ป ๐ป = ๐œ‹ ๐บ

๐‘ข is a cycle

Page 31: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Computational ZK

Simulator ๐‘†๐‘‰โˆ—๐บ :

1. Set ๐บ0 = ๐‘ข for ๐‘ข โˆˆ๐‘… ๐‘๐‘ฆ๐‘๐‘™๐‘’๐‘›2. Set ๐บ1 = ๐œ‹(๐บ) for ๐œ‹ โˆˆ๐‘… ๐‘†๐‘›3. Sample ๐‘ โˆˆ๐‘… โ„ค๐‘

โˆ—

๐‘ = 0: Set ๐’„ = ๐ถ๐‘œ๐‘š ๐บ0๐‘ = 1: Set ๐’„ = ๐ถ๐‘œ๐‘š ๐บ1

4. If ๐‘‰โˆ— ๐’„ = ๐‘

๐‘ = 0: Output ๐’„,๐‘, ๐‘ข

๐‘ = 1: Output ๐’„,๐‘, ๐œ‹,๐บ1

5. Otherwise repeat

V*P

๐‘ = 0: ๐‘ข

๐‘ = ๐‘‰โˆ— ๐‘

๐’„

๐‘ = 1: ๐œ‹, ๐ป

Page 32: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

0 ๐Ÿ 0 0 0 0

0 0 0 ๐Ÿ 0 0

0 0 0 0 ๐Ÿ 0

0 0 ๐Ÿ 0 0 0

0 0 0 0 0 ๐Ÿ

๐Ÿ 0 0 0 0 0

Computational ZK

๐บ0

๐‘ = 0

๐บ1

๐‘ = 1

๐œ‹

6 1 3 2 5 4

0 1 0 0 1 1

1 0 1 1 0 0

1 1 0 0 1 0

0 0 1 0 1 1

1 0 1 1 0 1

1 1 0 1 1 0

Page 33: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Computational ZK

๐‘ = 0

๐’„ = ๐ถ๐‘œ๐‘š ๐บ0

๐‘ = 1

๐’„ = ๐ถ๐‘œ๐‘š ๐บ1

โ‰…๐‘

Page 34: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

Computational ZK

If ๐‘‰โˆ— ๐’„ = 0(otherwise repeat)

If ๐‘‰โˆ— ๐’„ = 1(otherwise repeat)

๐บ0 = ๐‘ข ๐บ1 = ๐œ‹(๐บ)

๐œ‹

6 1 3 2 5 4

0 1 0 0 1 1

1 0 1 1 0 0

1 1 0 0 1 0

0 0 1 0 1 1

1 0 1 1 0 1

1 1 0 1 1 0

Page 35: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Claim: If ๐ถ๐‘œ๐‘š is computationally hiding then ๐‘†๐‘‰โˆ—๐บ runs

in polynomial time

1. From hiding of ๐ถ๐‘œ๐‘š and the fact that ๐‘‰โˆ—is ๐‘ƒ๐‘ƒ๐‘‡:

๐‘ƒ๐‘Ÿ๐’„,๐‘ ๐‘‰โˆ— ๐ถ๐‘œ๐‘š ๐บ๐‘ = ๐‘ โ‰ˆ 1/2

Exercise: otherwise ๐‘‰โˆ— distinguishes between

๐ถ๐‘œ๐‘š ๐บ0 and ๐ถ๐‘œ๐‘š ๐บ1

2. This implies: ๐”ผ #repetitions โ‰ˆ 2

Computational ZK

Page 36: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Claim: If ๐ถ๐‘œ๐‘š is computationally hiding then โˆ€๐บ โˆˆ ๐ป๐ด๐‘€

๐‘†๐‘‰โˆ—๐บ โ‰…๐‘ ๐‘ƒ(๐‘ค), ๐‘‰โˆ— ๐บ

1. Let ๐ป๐‘‰โˆ— ๐บ,๐‘ค act identically to ๐‘†๐‘‰โˆ—๐บ except that:

โ€ข ๐ป commits to ๐บ1 instead of ๐บ0โ€ข When ๐‘‰โˆ— ๐‘ = 0, ๐ป outputs ๐œ‹(๐‘ค) instead of ๐‘ข

2. Exercise:

๐‘†๐‘‰โˆ—๐บ โ‰…๐‘ ๐ป

๐‘‰โˆ— ๐บ,๐‘ค โ‰… ๐‘ƒ(๐‘ค), ๐‘‰โˆ— ๐บ

Hint: ๐ถ๐‘œ๐‘š ๐บ0 โ‰…๐‘ ๐ถ๐‘œ๐‘š ๐บ1 even if ๐บ,๐‘ค, ๐œ‹ are known.

Computational ZK

Page 37: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

๐Ÿ

Computational ZK

๐‘†๐‘‰โˆ—๐บ | ๐‘ = 0

๐’„ = ๐ถ๐‘œ๐‘š ๐บ0 ๐’„ = ๐ถ๐‘œ๐‘š ๐บ1

โ‰…๐‘

๐’„ = ๐ถ๐‘œ๐‘š ๐บ0 โˆ’ ๐ถ๐‘œ๐‘š(๐œ‹(๐‘ค)) ๐’„ = ๐ถ๐‘œ๐‘š ๐บ1 โˆ’ ๐ถ๐‘œ๐‘š(๐œ‹(๐‘ค))

๐ป๐‘‰โˆ— ๐บ,๐‘ค | ๐‘ = 0

Page 38: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

One-way functions (or rather some weak form of them)

are necessary for non-trivial ZK

Theorem [OWโ€™90]: If โˆƒZK proofs for languages outside of

BPP then there exist functions with one-way instances

Theorem [OWโ€™90]: If โˆƒZK proofs for languages that are

hard on average then there exist one-way functions

Unconditional characterization of ZK [Vadโ€™06]:

โ€ข HVZK = ZKโ€ข ZK is closed under union

โ€ข Public-coin ZK equals private-coin ZKโ€ข ZK w/ imperfect compl. equals ZK w/ perfect compl.

Techniques borrowed from the study of SZK [SVโ€™90โ€™s]

Computational ZK โ€“ some more

Page 39: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Summary

BPP โŠ† PZK โŠ† SZK โŠ‚ CZK = IP

Defined:

โ€ข Statistical indistinguishability

โ€ข Computational indistinguishability

โ€ข SZK, CZK

โ€ข One way-functions

โ€ข Statistically-binding commitments

Saw:

โ€ข Examples of statistically-binding commitments

โ€ข NP โŠ† CZK via ๐ป๐ด๐‘€ โˆˆ CZK

Page 40: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Food for Thought

Page 41: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

โ€ข Efficiency of reduction to ๐ป๐ด๐‘€โ€ข Classic reduction from ๐‘†๐ด๐‘‡ to ๐ป๐ด๐‘€ has quadratic blowup

โ€ข Ideally: linear blowup (with small constants)

โ€ข Communication complexityโ€ข Statistically-binding commitments imply linear communication

โ€ข Next lecture: statistically-hiding commitments

โ€ข Open up the possibility of sublinear communication

โ€ข Efficiency of prover and/or verifierโ€ข May have to optimize ๐‘ƒ, ๐‘‰ even if sublinear communication

โ€ข Both time and space complexities โ€“ tradeoff between ๐‘ƒ, ๐‘‰

โ€ข Round complexityโ€ข Much research devoted to minimizing rounds (see next lecture)

Other considerations

Page 42: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Define

โ€ข what it means to break the system

โ€ข Adversaryโ€™s access/resources

Build

โ€ข In ZK first there were protocols, only then defs

Prove

โ€ข We still do not have good โ€œlanguageโ€ for proofs

โ€ข ML theory vs Crypto theory (crypto theory is essential)

First feasibility then efficiency

โ€ข Optimize (round/comm. complexity, verifier time/space)

Relax definition (Argument/WI/WH/NIZK)

Modern Crypto Methodology

Page 43: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

Auxi l iary input to ๐ท and Non-uniform ๐‘‰โˆ—

Computational ZK: โˆ€๐‘ƒ๐‘ƒ๐‘‡ ๐‘‰โˆ— โˆƒ๐‘ƒ๐‘ƒ๐‘‡ ๐‘† โˆ€๐‘ท๐‘ท๐‘ป ๐‘ซ โˆ€๐‘ฅ โˆˆ ๐ฟ โˆ€๐‘ง

๐‘ƒ๐‘Ÿ ๐ท ๐‘ฅ,๐‘ง, ๐‘† ๐‘ฅ, ๐‘ง = 1 โˆ’ ๐‘ƒ๐‘Ÿ ๐ท ๐‘ฅ, ๐‘ง, ๐‘ƒ, ๐‘‰โˆ— ๐‘ง ๐‘ฅ , ๐‘ง = 1 โ‰ค ๐‘›๐‘’๐‘”(|๐‘ฅ|)

Advanced comment:

โ€ข ๐ท is also given ๐‘ง

โ€ข If ๐‘ง is sufficiently long, ๐ท can make use of its suffix

โ€ข ๐‘‰โˆ— and ๐‘† cannot (๐ท is determined after them)

โ€ข implies indistinguishability against non-uniform circuits ๐ท

โ€ข Making ๐‘‰โˆ— also non uniform yields โ€œweakerโ€ security

reduction (from ๐‘‰โˆ— to ๐‘†)

Page 44: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

History

Oded Goldreich Avi Wigderson Manuel Blum

Moni Naor Salil VadhanRafail Ostrovsky Amit Sahai

Page 45: ZERO-KNOWLEDGE for NPcyber.biu.ac.il/wp-content/uploads/2018/08/WS-19-2-ZK...Can ๐ด be proved in ZK? Why do we care? โ€ข ๐‘ is specific โ€ข ๐ด is NP-complete โ€ข If ๐ด โˆˆZKthen

The End

Questions?


Recommended