1 / 25

Kriptografija sa javnim ključevima

Kriptografija sa javnim ključevima. Kriptografija sa javnim ključevima. Dva ključa Pošiljalac koristi javni ključ primaoca za šifrovanje Primaoc koristi s voj privat ni (tajni) k ljuč za dešifrovanje Zasniva se na trap door, ili jednosmernim ( one way ) fun kcijama

taya
Download Presentation

Kriptografija sa javnim ključevima

An Image/Link below is provided (as is) to download presentation 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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Kriptografija sa javnim ključevima

  2. Kriptografija sa javnim ključevima • Dva ključa • Pošiljalac koristi javni ključprimaoca za šifrovanje • Primaoc koristi svoj privatni (tajni) ključza dešifrovanje • Zasniva se na trap door, ili jednosmernim (one way) funkcijama • Lako se izračunavaju u jednom smeru • Teško se izralunavaju u drugom smeru • “Trap door” se koristi za generisanje tajnog ključa • Primer: Za zadate p i q, proizvod N=pq se lako računa, ali za dato N, teško je naći p i q

  3. Kriptografija sa javnim ključevima • Šifrovanje • Pretpostavimo da se M šifruje Bobovim javnim ključem • Samo Bobov privatni ključ može da dešifruje poruku M • Digitalni potpis • Potpisati “šifrovanjem” sa privatnim ključem • Svako može da verifikujepotpis “dešifrovanjem” sa javnim ključem • Samovlasnik privatnog ključaje mogao da potpiše • Sličan je klasičnom potpisivanju

  4. Ranac

  5. Problem ranca • Za zadate težineW0,W1,...,Wn-1i sumu S, da li je moguće naćiai {0,1} tako da važi S = a0W0+a1W1 +...+ an-1Wn-1 (tehnički, ovo je problem “sume podskupova”) • Primer • Težine (62,93,26,52,166,48,91,141) • Problem: Naći podskup čija je suma S=302 • Odgovor: 62+26+166+48=302 • (Opšti) problem ranca (knapsack)je NP-kompletan

  6. Problem ranca • Opšti problem ranca (general knapsac - GK) je težak za rešavanje • Alisuperincreasing knapsack (SIK) je lak za rešavanje • SIK each weight greater than the sum of all previous weights • Primer • Težine (2,3,7,14,30,57,120,251) • Problem: Naći podskupove čija je suma S=186 • Rešava se polazeći od najvećih do najmanjih težina • Odgovor: 120+57+7+2=186

  7. Knapsack Cryptosystem • Generate superincreasing knapsack (SIK) • Convert SIK into “general” knapsack (GK) • Public Key: GK • Private Key: SIK plus conversion factors • Easy to encrypt with GK • With private key, easy to decrypt (convert ciphertext to SIK) • Without private key, must solve GK (???)

  8. Knapsack Cryptosystem • Let (2,3,7,14,30,57,120,251) be the SIK • Choose m = 41 and n = 491 with m, n rel. prime and n greater than sum of elements of SIK • General knapsack 2  41 mod 491 = 82 3  41 mod 491 = 123 7  41 mod 491 = 287 14  41 mod 491 = 83 30  41 mod 491 = 248 57  41 mod 491 = 373 120  41 mod 491 = 10 251  41 mod 491 = 471 • General knapsack: (82,123,287,83,248,373,10,471)

  9. Knapsack Example • Private key:(2,3,7,14,30,57,120,251) m1 mod n = 411 mod 491 = 12 • Public key:(82,123,287,83,248,373,10,471), n=491 • Example: Encrypt 10010110 82 + 83 + 373 + 10 = 548 • To decrypt, • 548 · 12 = 193 mod 491 • Solve (easy) SIK with S = 193 • Obtain plaintext 10010110

  10. Knapsack Weakness • Trapdoor: Convert SIK into “general” knapsack using modular arithmetic • One-way: General knapsack easy to encrypt, hard to solve; SIK easy to solve • This knapsack cryptosystem is insecure • Broken in 1983 with Apple II computer • The attack uses lattice reduction • “General knapsack” is not general enough! • This special knapsack is easy to solve!

  11. RSA

  12. RSA • Izumljen od strane Cocks-a (GCHQ), i nezavisno od Rivest-a, Shamir-ai Adleman-a (MIT) • Neka su p i q dva velika prosta broja • Neka je N = pq modulus • Izabrati broj e uzajamno prost u odnosu na (p1)(q1) • Naći d takvo da je ed = 1 mod (p1)(q1) • Javni ključ: (N,e) • Privatni ključ: d

  13. RSA • Da bi se šifrovala porukaMračuna se • C = Me mod N • Da bi se dešifrovaloCračuna se • M = Cd mod N • Podsetimo se da sueiNjavni • Ukoliko bi napadač faktorisao N, može zatim da upotrbi e u cilju lakog nalaženja d pošto je ed = 1 mod (p1)(q1) • Faktorizacija modulusa razbija RSA • Nije poznato da li je faktorizacija jedini način za razbijanje RSA

  14. Dali RSA zaista radi? • Za zadatoC = Me mod Nmoramo pokazati • M = Cd mod N = Med mod N • IskoristićemoOjlerovuteoremu • Ako je x uzajamno prost u odnosu na n tada je x(n) = 1 mod n • Činjenice: • ed = 1 mod (p  1)(q  1) • Po definiciji “mod-a”, ed = k(p  1)(q  1) + 1 • (N) = (p  1)(q  1) • Tada je ed  1 = k(p  1)(q  1) = k(N) • Med = M(ed  1) + 1 = MMed  1 = MMk(N) = M(M(N))k mod N = M1k mod N = M mod N

  15. Jednostavan RSA primer • Primer RSA • Izabrati “velike” proste brojeve p = 11, q = 3 • Tada je N = pq = 33 i (p1)(q1) = 20 • Izabrati e = 3 (uzajamno prost u odnosu na 20) • Naći d takvo da je ed = 1 mod 20, što daje d = 7 • Javni ključ: (N, e) = (33, 3) • Privatni ključ: d = 7

  16. Jednostavan RSA primer • Javni ključ : (N, e) = (33, 3) • Privatni ključ : d = 7 • Neka je poruka M = 8 • Šifrat C se računa na sledeći način C = Me mod N = 83 = 512 = 17 mod 33 • Dešifrovanje C u cilju dobijanja M se vrši na sledeći način M = Cd mod N = 177 = 410,338,673 = 12,434,505  33 + 8 = 8 mod 33

  17. Efikasniji RSA • Modularno stepenovanje - primer • 520 = 95367431640625 = 25 mod 35 • Bolji način: sukcesivno kvadriranje • 20 = 10100 base 2 • (1, 10, 101, 1010, 10100) = (1, 2, 5, 10, 20) • Primetimo da 2 = 1 2, 5 = 2  2 + 1, 10 = 2  5, 20 = 2  10 • 51= 5 mod 35 • 52= (51)2 = 52 = 25 mod 35 • 55= (52)2 51 = 252 5 = 3125 = 10 mod 35 • 510 = (55)2 = 102 = 100 = 30 mod 35 • 520 = (510)2 = 302 = 900 = 25 mod 35 • Na ovaj način se ne susrećemo sa velikim brojevima!

  18. Efikasniji RSA • Neka jee = 3za sve korisnike (ali ne i istoNilid) • Operacije vezane za javni ključ zahtevaju samo dva množenja • Operacije vezane za privatni ključ osatju ekstenzivne • Ako je M < N1/3 tada je C = Me = M3i tada se može preduzetinapad trećeg korena • Za svako M, ako je C1, C2, C3poslatotrima korisnicima, realan je napad trećeg korena (uz upotrebu kineske teoreme o ostacima) • Napad trećeg korena se može izbeći dopunjavanjem poruka slučajnim bitima • Primedba: e = 216 + 1se takodje koristi

  19. Diffie-Hellman

  20. Diffie-Hellman • Predložen od Williamson-a (Government Communications Headquarters - GCHQ) i, nezavisno od Diffie i Hellmana (Stanford) • Predstavlja algoritam “razmene ključeva” • Koristi se za uspostavljanje zajedničkog simetričnog ključa • Nije predvidjen za šifrovanje ili digitalno potpisivanje • Sigurnost se zasniva na težini problema diskretnog logaritma:za zadate g, p, i gk mod p naći k

  21. Diffie-Hellman • Neka je p prost broj, i neka je g generator • Za svako x  {1,2,…,p-1} postoji n takvo da je x = gn mod p • Alisa bira tajnu vrednost a • Bob selektuje tajnu vrednost b • Alisa šalje ga mod p Bobu • Bob šalje gb mod p Alisi • Oboje računaju zajedničku tajnu vrednost gab mod p • Ta zajednička tajna vrednost se može koristiti kao simetričan ključ

  22. Diffie-Hellman • Pretpostavimo da Bob i Alisakoriste gab mod p kao simetričan ključ • Trudi može da vidi ga mod p i gb mod p • Primetimo da je ga gb mod p = ga+b mod p  gab mod p • Ako bi Trudi mogla naći a ili b, sistem je razbijen • Ako bi Trudi mogla da reši problemdiskretnog logaritma, tada bi mogla da nadje a ili b

  23. Diffie-Hellman • Javno: g i p • Tajno: Alisin eksponent a i Bobov eksponent b ga mod p gb mod p Alice, a Bob, b • Alisa računa (gb)a = gba = gab mod p • Bob računa (ga)b = gab mod p • Mogao bi se K = gab mod p koristiti kao simetričan ključ

  24. Diffie-Hellman • Podložan je man-in-the-middle (MiM) napadu ga mod p gt mod p gt mod p gb mod p Trudy, t Bob, b Alice, a • Trudi deli tajnu gat mod p sa Alisom • Trudi deli tajnu gbt mod p sa Bob • Alisa i Bob ne mogu znati da Trudi postoji!

  25. Diffie-Hellman • Kako osujetiti MiM napad? • Šifrovati DH razmenu sa simetričnim ključem • Šifrovati DH razmenu sa javnim ključem • Digitalno potpisati DH vrednosti sa privatnim ključem • Ostale mogućnosti? • Moramo biti svesni realnosti MiM napada na Diffie-Hellman proceduru

More Related