11
Keeping Secrets with Zero Knowledge Proof Stephanie Lin 6.UAP Concept Talk 1

Keeping Secrets with Zero Knowledge Proof

  • Upload
    jera

  • View
    58

  • Download
    0

Embed Size (px)

DESCRIPTION

Keeping Secrets with Zero Knowledge Proof. Stephanie Lin 6.UAP Concept Talk. You have a Secret!. You. Your Friend. The Secret. The Cave. The Solution. Probability. ¼. ½. ⅛. ½*½. ½*½*½. Real World Use. Authentication on the Internet. I am Stephanie. - PowerPoint PPT Presentation

Citation preview

Page 1: Keeping Secrets with Zero  Knowledge Proof

1

Keeping Secretswith

Zero Knowledge Proof

Stephanie Lin6.UAP Concept Talk

Page 2: Keeping Secrets with Zero  Knowledge Proof

2

You have a Secret!

Your Friend You The Secret

Page 3: Keeping Secrets with Zero  Knowledge Proof

Jean-Jacques, et al. 1998. 3

The Cave

Page 4: Keeping Secrets with Zero  Knowledge Proof

Jean-Jacques, et al. 1998. 4

The Solution

Page 5: Keeping Secrets with Zero  Knowledge Proof

5

Probability

½ ⅛

½*½*½½*½

¼

Page 6: Keeping Secrets with Zero  Knowledge Proof

6

Real World UseAuthentication on the Internet

Banker You

Who Are You?

I amStephanie.

How do I know you are

Stephanie?

Page 7: Keeping Secrets with Zero  Knowledge Proof

7

Practical Use with Feige -Fiat-Shamir

Authentication on the Internet

Math Tools:• Hard One Way Problems• Prime Factorization• Modulus Roots

Page 8: Keeping Secrets with Zero  Knowledge Proof

8

Prime Factorization

Answer: 91 = 7 * 13 644773 = 797 * 809

Large Prime:93E8965DAFD9DFECFD00B466B68F90EA68AF5DC9FED915278D1B3A137471E65596C37FED0C7829FF8F8331F81A2700438ECDCC09447DC397C685F397294F722BCC484AEDF28BED25AAAB35D35A65DB1FD62C9D7BA55844FEB1F9401E671340933EE43C54E4DC459400D7AD61248B83A2624835B31FFF2D9595A5B90B276E44F9

Example : 15 = 3 * 5 91 = ? * ? 644773 = ? * ?

Page 9: Keeping Secrets with Zero  Knowledge Proof

9

Modulus Roots

Example : 7 = 42 (mod 9) 7 = ?2 (mod 9) 1 = ?2 (mod 9)

Answer: 7 = 1032 (mod 9) 1 = 1072 (mod 9)

Page 10: Keeping Secrets with Zero  Knowledge Proof

Feige, Fiat, Shamir. 1987. 10

The ProtocolProver

Primes p, q s.t. n = p*qFind s s.t. gcd(s,n) = 1v = s2 (mod n)[s = secret]

Verifier

[given v, n]

Page 11: Keeping Secrets with Zero  Knowledge Proof

11

The Protocol

y = r*sa (mod n)

rand int r, x = r2 (mod n)

a = 0 or 1

y2 = x*va (mod n)

x

a

y