Dawn ¡Song ¡
¡Crypto: ¡Public-‑Key ¡Cryptography ¡
Computer ¡Security ¡Course. ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Dawn ¡Song ¡
Slides credit: Dan Boneh, Doug Tygar
Crypto: Public-Key Cryptography Slides credit: Dan Boneh, Doug - - PowerPoint PPT Presentation
Computer Security Course. Dawn
Dawn ¡Song ¡
Computer ¡Security ¡Course. ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Dawn ¡Song ¡
Slides credit: Dan Boneh, Doug Tygar
– ex: ¡ ¡ ¡Protec@ng ¡public ¡binaries ¡on ¡disk. ¡ ¡ ¡ ¡ Alice Bob k k Message m tag
Generate tag: tag ← S(k, m) Verify tag: V(k, m, tag) = `yes’ ?
note: ¡ ¡ ¡ ¡non-‑keyed ¡checksum ¡(CRC) ¡is ¡an ¡insecure ¡MAC ¡ ¡!! ¡
Alice1
E m1 E(pk, m1)=c1 Bob D c D(sk, c)=m
Alice2
E m2 E(pk, m2)=c2
¡ ¡ ¡ ¡ ¡ ¡set ¡ ¡ ¡ ¡e ¡← ¡216+1 ¡= ¡65537 ¡ ¡ ¡ ¡ ¡; ¡ ¡ ¡ ¡ ¡ ¡d ¡← ¡e
¡Inver@ng ¡this ¡func@on ¡is ¡believed ¡to ¡be ¡as ¡hard ¡as ¡factoring ¡N ¡ ¡ ¡
G(): ¡ ¡ ¡ ¡ ¡generate ¡ ¡ ¡ ¡pk ¡ ¡and ¡ ¡ ¡sk ¡
E(pk, ¡m): ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ – ¡choose ¡random ¡ ¡ ¡x ¡∈ ¡domain(F) ¡ ¡ ¡ ¡and ¡set ¡ ¡ ¡ ¡k ¡← ¡H(x) ¡ ¡ – ¡ ¡ ¡ ¡ ¡c0 ¡← ¡ ¡F(pk, ¡x) ¡ ¡ ¡ ¡, ¡ ¡ ¡ ¡c1 ¡← ¡ ¡E(k, ¡ ¡m) ¡ ¡ ¡ ¡ ¡ ¡ ¡(E: ¡symm. ¡cipher) ¡ – ¡send ¡ ¡ ¡ ¡ ¡ ¡c ¡= ¡(c0, ¡c1) ¡ D(sk, ¡c=(c0,c1) ¡): ¡ ¡ ¡ ¡ ¡ ¡x ¡← ¡ ¡F-‑1(sk, ¡c0) ¡, ¡ ¡ ¡k ¡← ¡H(x) ¡, ¡ ¡ ¡m ¡← ¡D(k, ¡c1) ¡ ¡
c0 ¡ c1 ¡
Bob agrees to pay Alice 1$ Bob agrees to pay Alice 100$
F(pk,⋅)
F-1(sk,⋅) sig ¡
sig ¡
accept
reject
Microsor’s ¡signature ¡on ¡file ¡