Asymetrická kryptografie a elektronický podpis. Ing. Dominik Breitenbacher Mgr. Radim Janča

Podobné dokumenty
Asymetrická kryptografie a elektronický podpis. Ing. Mgr. Martin Henzl Mgr. Radim Janča ijanca@fit.vutbr.cz

ElGamal, Diffie-Hellman

Šifrová ochrana informací věk počítačů PS5-2

Šifrová ochrana informací věk počítačů PS5-2

Diffieho-Hellmanův protokol ustanovení klíče

Asymetrické šifry. Pavla Henzlová FJFI ČVUT v Praze. Pavla Henzlová (FJFI ČVUT v Praze) Asymetrické šifry 28.3.

Složitost a moderní kryptografie

Kryptografie založená na problému diskrétního logaritmu

asymetrická kryptografie

MFF UK Praha, 22. duben 2008

RSA. Matematické algoritmy (11MA) Miroslav Vlček, Jan Přikryl. Ústav aplikované matematiky ČVUT v Praze, Fakulta dopravní. čtvrtek 21.

Čínská věta o zbytcích RSA

Diskrétní logaritmus

RSA. Matematické algoritmy (11MAG) Jan Přikryl. Ústav aplikované matematiky ČVUT v Praze, Fakulta dopravní. verze: :01

Digitální podepisování pomocí asymetrické kryptografie

Digitální podepisování pomocí asymetrické kryptografie

Jak funguje asymetrické šifrování?

Kryptografie - Síla šifer

8. RSA, kryptografie s veřejným klíčem. doc. Ing. Róbert Lórencz, CSc.

Základy kryptologie. Kamil Malinka Fakulta informačních technologií

Kryptografie, elektronický podpis. Ing. Miloslav Hub, Ph.D. 27. listopadu 2007

Protokol RSA. Tvorba klíčů a provoz protokolu Bezpečnost a korektnost protokolu Jednoduché útoky na provoz RSA Další kryptosystémy

Asymetrická kryptografie

České vysoké učení technické v Praze Fakulta elektrotechnická Katedra telekomunikační techniky Asymetrické kryptosystémy I

MPI - 7. přednáška. Hledání inverzí v Z n. Rychlé mocnění modulo n. Lineární rovnice v Z + n. Soustavy lineárních rovnic v Z + n.

Základy šifrování a kódování

Pokročilá kryptologie

C5 Bezpečnost dat v PC

Šifrová ochrana informací věk počítačů KS - 5

Matematika IV - 5. přednáška Polynomy

Základy kryptografie. Beret CryptoParty Základy kryptografie 1/17

Pokročilá kryptologie

Karel Klouda c KTI, FIT, ČVUT v Praze 28. února, letní semestr 2010/2011

Od Enigmy k PKI. principy moderní kryptografie T-SEC4 / L3. Tomáš Herout Cisco. Praha, hotel Clarion dubna 2013.

Správa přístupu PS3-2

Eliptické křivky a RSA

CO JE KRYPTOGRAFIE Šifrovací algoritmy Kódovací algoritmus Prolomení algoritmu

Projekt 2 - Nejčastější chyby. Ing. Dominik Breitenbacher

Kvantové algoritmy a bezpečnost. Václav Potoček

Matematika IV - 5. přednáška Polynomy

KRYPTOGRAFIE VER EJNE HO KLI Č E

Osnova přednášky. Seznámení s asymetrickou kryptografií, díl 2. Podpisová schémata -elementární principy- (1)

Osnova přednášky. Seznámení s asymetrickou kryptografií, díl 1. O pojmu bezpečnost Poznámka o hodnocení kryptografické bezpečnosti.

Komerční výrobky pro kvantovou kryptografii

Obsah. Protokol RSA. Protokol RSA Bezpečnost protokolu RSA. 5. a 6. přednáška z kryptografie

Problematika převodu zprávy na body eliptické křivky

příklad Steganografie Matematické základy šifrování šifrování pomocí křížů Hebrejské šifry

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY SOFTWAROVÁ PODPORA VÝUKY KRYPTOSYSTÉMŮ ZALOŽENÝCH NA PROBLÉMU DISKRÉTNÍHO LOGARITMU

5. a 6. přednáška z kryptografie

MINIMÁLNÍ POŽADAVKY NA KRYPTOGRAFICKÉ ALGORITMY. doporučení v oblasti kryptografických prostředků

DSY-6. Přenosový kanál kódy pro zabezpečení dat Základy šifrování, autentizace Digitální podpis Základy měření kvality přenosu signálu

PA159 - Bezpečnostní aspekty

Jihomoravske centrum mezina rodnı mobility. T-exkurze. Teorie c ı sel, aneb elektronicky podpis a s ifrova nı

MPI - 5. přednáška. 1.1 Eliptické křivky

Šifrová ochrana informací věk počítačů PS5-1

Y36PSI Bezpečnost v počítačových sítích. Jan Kubr - 10_11_bezpecnost Jan Kubr 1/41

České vysoké učení technické v Praze Fakulta elektrotechnická Katedra telekomunikační techniky. 7.přednáška. Kryptosystémy veřejného klíče II

Návrh a implementace bezpečnosti v podnikových aplikacích. Pavel Horal

pomocí asymetrické kryptografie 15. dubna 2013

PSK2-16. Šifrování a elektronický podpis I

Programování: základní konstrukce, příklady, aplikace. IB111 Programování a algoritmizace

Modulární aritmetika, Malá Fermatova věta.

Miroslav Kureš. Aplikovaná matematika Ostravice workshop A-Math-Net Sít pro transfer znalostí v aplikované matematice

kryptosystémy obecně další zajímavé substituční šifry klíčové hospodářství kryptografická pravidla Hillova šifra Vernamova šifra Knižní šifra

Informatika / bezpečnost

Čínská věta o zbytcích RSA

19. a 20. přednáška z kryptografie

Veronika Čadová O DSA BAKALÁŘSKÁ PRÁCE. Univerzita Karlova v Praze. Matematicko-fyzikální fakulta. Katedra algebry

MODERNÍ ASYMETRICKÉ KRYPTOSYSTÉMY

Obsah. Euler-Fermatova věta. Reziduální aritmetika. 3. a 4. přednáška z kryptografie

Úvod. Karel Klouda c KTI, FIT, ČVUT v Praze 18. dubna, letní semestr 2010/2011

Šifrování veřejným klíčem

Kvantová informatika pro komunikace v budoucnosti

Digitální podepisování pomocí asymetrické kryptografie

Kerchhoffův princip Utajení šifrovacího algoritmu nesmí sloužit jako opatření nahrazující nebo garantující kvalitu šifrovacího systému

Úvod do kryptologie. 6. března L. Balková (FJFI ČVUT v Praze) Primality Testing and Factorization 6. března / 41

Úvod RSA Aplikace, související témata RSA. Ing. Štěpán Sem Festival Fantazie, Štěpán Sem

Generátory náhodných a

Identifikátor materiálu: ICT-2-04

Rozlišujeme dva základní typy šifrování a to symetrické a asymetrické. Symetrické

Informatika Ochrana dat

9. DSA, PKI a infrastruktura. doc. Ing. Róbert Lórencz, CSc.

Matematické základy šifrování a kódování

KRYPTOGRAFICKÝ PROTOKOL VÝMĚNY KLÍČŮ DIFFIE-HELLMAN

doc. Ing. Róbert Lórencz, CSc.

Andrew Kozlík KA MFF UK

bit/p6d-h.d 22. března

Bezpečnost internetového bankovnictví, bankomaty

Modulární aritmetika, Malá Fermatova věta.

KPB. Režimy činnosti symetrických šifer - dokončení. KPB 2015/16, 7. přednáška 1

Elektronický podpis. Základní princip. Digitální podpis. Podpis vs. šifrování. Hashování. Jednosměrné funkce. Odesílatel. Příjemce

Autentizace uživatelů

Základy elementární teorie čísel

Šifrování pro úplné začátečníky

12. Bezpečnost počítačových sítí

Trocha teorie Ošklivé lemátko První generace Druhá generace Třetí generace Čtvrtá generace O OŠKLIVÉM LEMÁTKU PAVEL JAHODA

Základy elementární teorie čísel

Kvantová kryptografie

Ochrana dat pomocí šifrovacích algoritmů. Bc. Tomáš Studený

Transkript:

Asymetrická kryptografie a elektronický podpis Ing. Dominik Breitenbacher ibreiten@fit.vutbr.cz Mgr. Radim Janča ijanca@fit.vutbr.cz

Obsah cvičení Asymetrická, symetrická a hybridní kryptografie Kryptoanalýza Elektronický podpis a hašovací funkce Matematické problémy, na kterých je založena asymetrická k. RSA Faktorizace RSA 2

Symetrická kryptografie Symetrické šifry symetrický klíč stejný pro šifrování i dešifrování výrazně rychlejší než asymetrická kryptografie nutnost sdílet stejný klíč problém spolehlivé distribuce doporučená velikost klíče 128, 256, 512 bitů příklady symetrických šifer AES, DES, Blowfish, Serpent 3

Asymetrická kryptografie Asymetrické šifry - klíčový pár veřejný a soukromý klíč - veřejný klíč použití pro šifrování nebo ověření podpisu - soukromý klíč použití pro dešifrování nebo vytvoření podpisu - doporučená velikost klíče 1024(!), 2048, 4096 bitů - příklady asymetrických šifer RSA, Diffie-Hellman, ElGamal 4

Hybridní šifrování Kombinuje výhody symetrické a asymetrické kryptografie Rychlost šifrování vs. jednoduchá distribuce klíčů Symetrické šifry mohou být až 100000x rychlejší než asymetrické Postup šifrování vstupních dat: 1. Vygenerujeme náhodný symetrický klíč (musí sdílet obě strany) 2. Tímto klíčem zašifrujeme vstupní data 3. Pomocí veřejného klíče příjemce zašifrujeme symetrický klíč 4. Odešleme zašifrovaná data a zašifrovaný klíč 5. Příjemce pomocí svého privátního klíče dešifruje symetrický klíč 6. Pomocí symetrického klíče (předán bezpečným způsobem) dešifruje data 5

Elektronický podpis a hašovací funkce Elektronický podpis zajišťuje: integritu autenticitu podepsaného nepopiratelnost na rozdíl od šifrování nic neutajuje Hašovací funkce Asymetrická kryptografie je pomalá, abychom podepisovali celý dokument Podepisuje se pouze haš dokumentu vytvořená hašovací funkcí Typicky se používá hašovací funkce z rodiny SHA (160, 384, 512 bitů) Hašovací funkce musí splňovat několik vlastností: Odolnost vůči získání předlohy, Odolnost vůči získání jiné předlohy, Odolnost vůči nalezení kolize 6

RSA Generování klíčů Zvolíme dvě různá prvočísla p, q Spočteme n = p*q (veřejný modulus) Dále φ = π(p)*π(q) = (p 1)*(q 1) Volba náhodného přirozeného e, 1 < e < φ, GCD(e, φ) = 1 Vypočteme d tak, že e*d 1 mod φ neboli d e -1 mod φ Veřejný klíč je dvojice (n, e), privátní klíč je dvojice (n, d) Šifrování a dešifrování zpráva m, 0 m n - 1 šifrovaná zpráva c = m e mod n původní zpráva m = c d mod n 7

Diffie-Hellman 1. Jeden z účastníků zveřejní čísla α, m, která jsou společná 2. Každý účastník komunikace zvolí vlastní parametr Alice a a Bob b 3. Alice a Bob spočte hodnotu A = α a mod m, B = α b mod m 4. K = α a.b mod m = B a mod m = A b mod m protokol slouží k ustanovení společného tajemství protokol je postaven na problému diskrétních logaritmů protokol je zranitelný útokem typu man-in-the-middle 8

Matematické problémy asymetrické kryptografie Problém faktorizace velkých čísel (RSA) násobení čísel je snadné (výpočetně, časově) problém faktorizace velkého čísla je NP problém (viz dále) Diskrétní logaritmus (Diffie-Hellman, ElGamal) mějme čísla Y, α, m, k, kde α je generátorem cyklické grupy Y = α k mod m číslo k nazveme diskrétním logaritmem čísla Y při základu α číslo k není tímto vztahem určeno jednoznačně, se vzrůstající hodnotou čísla k se zvyšuje náročnost výpočtu 9

RSA Generování klíčů Zvolíme dvě různá prvočísla p, q Spočteme n = p*q (veřejný modulus) Dále φ = π(p)*π(q) = (p 1)*(q 1) Volba náhodného přirozeného e, 1 < e < φ, GCD(e, φ) = 1 Vypočteme d tak, že e*d 1 mod φ neboli d e -1 mod φ Veřejný klíč je dvojice (n, e), privátní klíč je dvojice (n, d) Šifrování a dešifrování zpráva m, 0 m n - 1 šifrovaná zpráva c = m e mod n původní zpráva m = c d mod n 10

RSA Trochu matematiky před příkladem Horní celá část a = n 5.6 = 6 5.1 = 6 Modulo Dělení, ale zajímá nás pouze zbytek 7 mod 3 = 1 6 mod 2 = 0 Pro jednoduchost si povolíme, že = = a 2 čtverec 11

RSA Příklad Generování klíčů Zvolíme p = 47 a q = 59 φ = (47-1)*(59-1) = 2668 Zvolíme e = 17 Pak d = 17-1 mod 2668 = 157 Veřejný klíč k pub = (2773, 17) Soukromý klíč k priv = (2773, 157) 12

RSA Příklad Šifrování Zadání: Zašifrujte text:,,its ALL, znaky abecedy jsou reprezentovány celým číslem, které reprezentuje jejich pozici v abecedě. Tzn. A = 01,, Z = 26, mezera = 00. Řešení: ITS ALL = 0920 1900 0112 1200 C 1 = 0920 17 mod 2773 = 0948 C 2 = 1900 17 mod 2773 = 2342 C 3 = 0112 17 mod 2773 = 1084 C 4 = 1200 17 mod 2773 = 1444 Zašifrovaná zpráva: 0948 2342 1084 1444 13

RSA Příklad Rozšifrování Přijatá zpráva: 0948 2342 1084 1444 Řešení: M 1 = 0948 157 mod 2773 = 0920 M 2 = 2342 157 mod 2773 = 1900 M 3 = 1084 157 mod 2773 = 0112 M 4 = 1444 157 mod 2773 = 1200 Podepisování: S = M d mod n 14

Faktorizace Proces, při kterém se snažíme zpětně nalézt faktory složeného čísla Nelze efektivně řešit v polynomiálním čase (NP-problem) co to znamená? Délka čísla Doba faktorizace 40 dec 1,32s 50 dec 10,72s 60 dec 32,23s 70 dec 9m 44s 80 dec 1h 54m 90 dec 5h 58m 100 dec 2d 16h 13m 60 dekadických číslic: 397065232130193047814752568290263592317550422290020341635017 15

Faktorizace RSA Metody Zkusmé dělení (Metoda kanadských dřevorubců): Nejjednodušší faktorizační metoda Exponenciální složitost V každém kroku pouze inkrementuje dělitele a zkouší, zda zadané číslo je dělitelné tímto dělitelem Př: Faktorizujte číslo n = 35 metodou zkusmého dělení: 35 / 3 = 11 zb. 2 X 35 / 4 = 8 zb. 3 X 35 / 5 = 7 zb. 0 => Výsledek je 35 = 5*7 Nápady na vylepšení? 16

Faktorizace RSA Metody Fermatova metoda: Efektivní pro faktorizaci čísla složeného ze sobě blízkých čísel Exponenciální složitost Základ nejpoužívanějších metod Založena na: n = a 2 b 2 = (a b)*(a + b) Což lze přepsat do tvaru: b 2 = a 2 n Nejdříve nastavíme a na: a = n Pokud rovnice neplatí, inkrementujeme a o 1 a znovu ověříme platnost rovnice 17

Faktorizace RSA Fermatova metoda Příklad Faktorizujte číslo n = 1649 Fermatovou metodou a = n x = 41 2 1649 = 32 x = 42 2 1649 = 115 x = 43 2 1649 = 200 x = 57 2 1649 = 1600 = 40 2 = b 2 n = 57 2 40 2 = (57 40)*(57+40) = 17*97 18

Faktorizace RSA Metody Pollardova p 1 metoda: Exponenciální složitost Založena na Malé Fermatově větě: a p-1 1 mod p Pokud chceme pokrýt m prvočísel, pak volíme M = (p 1 1)* *(p m 1) Položíme tedy c = a M 1 Pokud je zadané číslo n dělitelné některým prvočíslem p, pak bude platit: GCD(c, n) = p 19

Faktorizace RSA Pollardova p 1 metoda Příklad Faktorizujte číslo n = 133 Pollardovou p 1 metodou Řešení: Odhadneme, že číslo bude dělitelné jedním z prvních 3 lichých prvočísel, tzn. 3, 5 nebo 7. Vytvoříme tak M = (3 1)*(5 1)*(7 1) = 48 a a = 2 Položíme c = a M 1 = a 48 1 = 2 48 1 = 281474976710655 Výsledkem je GCD(281474976710655, 133) = 7 a tedy n = 7*19 Co ale třeba n = 91 = 7*13 anebo n = 679 = 7*97? 281474976710655 = 3 2 *5*7*13*17*97*241*257*673 20

Faktorizace Další metody Kvadratické síto QS Multipolynomiální kvadratické síto MPQS Samoinicializující se kvadratické síto SIQS Obecné číselně teoretické síto GNFS Eliptické křivky a další 21

Projekt Zadání naleznete na stránkách předmětu 22

Děkuji za pozornost 23