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

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

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

Hlubší věty o počítání modulo

Hlubší věty o počítání modulo

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

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

ElGamal, Diffie-Hellman

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

Složitost a moderní kryptografie

Diskrétní logaritmus

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

MFF UK Praha, 22. duben 2008

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

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

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

Základy elementární teorie čísel

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

Asymetrická kryptografie

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

Informatika Ochrana dat

Cyklické grupy a grupy permutací

Lineární algebra nad obecným Z m, lineární kódy

Eliptické křivky a RSA

Jak funguje asymetrické šifrování?

asymetrická kryptografie

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

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.

Správa přístupu PS3-2

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

Základy elementární teorie čísel

Pokročilá kryptologie

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

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

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

21ˆx 0 mod 112, 21x p 35 mod 112. x p mod 16. x 3 mod 17. α 1 mod 13 α 0 mod 17. β 0 mod 13 β 1 mod 17.

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

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

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

C5 Bezpečnost dat v PC

KRYPTOGRAFIE VER EJNE HO KLI Č E

Diskrétní matematika

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

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

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

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

Okruh Lineární rovnice v Z m Těleso Gaussova eliminace (GEM) Okruh Z m. Jiří Velebil: X01DML 19. listopadu 2007: Okruh Z m 1/20

Odpřednesenou látku naleznete v kapitole 3.3 skript Diskrétní matematika.

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

Univerzita Karlova v Praze Matematicko fyzikální fakulta BAKALÁŘSKÁ PRÁCE

Algoritmy okolo teorie čísel

Polynomy nad Z p Konstrukce faktorových okruhů modulo polynom. Alena Gollová, TIK Počítání modulo polynom 1/30

Kryptografie a počítačová

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

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

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

Algoritmy okolo teorie čísel

online prostředí, Operační program Praha Adaptabilita, registrační číslo CZ.2.17/3.1.00/31165.

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

Principy indukce a rekurentní rovnice

Rekurentní rovnice, strukturální indukce

Matematické algoritmy (11MAG) Jan Přikryl

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

4 Počítání modulo polynom

Autentizace uživatelů

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

Prvočísla, dělitelnost

Kvantová kryptografie

Správa webserveru. Blok 9 Bezpečnost HTTP. 9.1 Úvod do šifrování a bezpečné komunikace Základní pojmy

Ochrana dat Obsah. Výměna tajných klíčů ve veřejném kanálu. Radim Farana Podklady pro výuku. Kryptografické systémy s tajným klíčem,

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

Matematické algoritmy (11MAG) Jan Přikryl. verze: :29

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

Počet kreditů: 5 Forma studia: kombinovaná. Anotace: Předmět seznamuje se základy dělitelnosti, vybranými partiemi algebry, šifrování a kódování.

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

Diskrétní matematika 1. týden

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

Kvantové počítání. Pavel Cejnar. Program: 1) Historie 2) Principy 3) Příklady 4) Realizace. ÚČJF MFF UK Praha mff.cuni.cz.

Zbytky a nezbytky Vazební věznice Orličky Kondr (Brkos 2010) Zbytky a nezbytky / 22

Č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

Úvod do kryptografie. Tomáš Dvořák

Subexponenciální algoritmus pro diskrétní logaritmus

Dosud jsme se zabývali pouze soustavami lineárních rovnic s reálnými koeficienty.

Obsah. 1 Protokoly Diffieho-Hellmanův a ElGamalův. 3 Hledání generátoru v Z p

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

Zpracování informací

Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁŘSKÁ PRÁCE. Jiří Mareš Srovnání algoritmů pro kryptografii s veřejným klíčem

Řetězové zlomky. již čtenář obeznámen. Důraz bude kladen na implementační stránku, protože ta je ve

Rekurentní rovnice, strukturální indukce

z nich byla poprvé dokázána v 19. století velikány analytické teorie čísel (Pafnutij Lvovič Čebyšev, Charles-Jean de la Vallée Poussin a další).

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

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

UNICORN COLLEGE BAKALÁŘSKÁ PRÁCE Marek ŠMÍD

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

Moderní metody substitučního šifrování

Šifrovací stroje. Dějiny kryptografie. Zpracováno podle knihy Simon Singh: Kniha kódů a šifer. Alena Gollová Dějiny kryptografie 1/44

Tel.: (+420)

Generující kořeny cyklických kódů. Generující kořeny. Alena Gollová, TIK Generující kořeny 1/30

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

Transkript:

Protokol RSA Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 1/18

Protokol RSA Autoři: Ronald Rivest, Adi Shamir a Leonard Adleman. a Publikováno: R. L. Rivest, A. Shamir a L. Adleman, A Method for Obtaining Digital Signatures and Public Key Cryptosystems, Commun. ACM 21 (1978), 294 299. V USA patentováno 20. září 1983. a James Ellis z Government Communication Headquarters (GCHQ) tentýž protokol zřejmě vytvořil již koncem 60. let 20. století. Historie šifrování a další info, například S. Singh, Kniha kódů a šifer, Argo + Dokořán, Praha, 2003 A. Hodges, Alan Turing: The Enigma, Random House, London, 1992 Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 2/18

Dva uživatelé A (Alice) a B (Bob) se veřejně dohodnou na čísle N a chtějí si vyměňovat tajné zprávy 0 z < N. Každý si vytvoří veřejný a soukromý klíč. Tvorba Aliciných klíčů (Bob postupuje analogicky) 1 Alice si tajně zvolí dvě různá prvočísla p A, q A tak, aby n A = p A q A > N. 2 Alice spočte ϕ(n A ) = (p A 1) (q A 1) a tajně zvolí v Z ϕ(na ) invertibilní prvek d A. 3 Alice tajně spočte e A = d 1 A v Z ϕ(n A ). 4 Alice zveřejní (n A, e A ) (veřejný klíč) a nezveřejní (n A, d A ) (soukromý klíč). Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 3/18

Provoz: Bob posílá zprávu z Alici 1 Šifrování: Bob vyhledá Alicin veřejný klíč (n A, e A ) a spočte x = z e A v Z na. 2 Bob veřejně odešle Alici číslo x. 3 Dešifrování: Alice přijme x a spočte z = x d A v Z na. Terminologie: n A Alicin modul. e A Alicin šifrovací (encryption) exponent. d A Alicin dešifrovací (decryption) exponent. Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 4/18

Příklad (Alice tvoří své klíče) Veřejně dohodnuto: N = 2 500. 1 Tajně: p A = 37, q A = 79. 2 Alicin modul: n A = p A q A = 2 923 > 2 500. 3 ϕ(n A ) = 36 78 = 2 808. 4 Alicin dešifrovací exponent: d A = 11 je invertibilní v Z 2 808. 5 Alicin šifrovací exponent: e A = d 1 A = 1 787 v Z 2 808. 6 Veřejný klíč: (n A, e A ) = (2 923, 1 787). 7 Soukromý klíč: (n A, d A ) = (2 923, 11). Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 5/18

Příklad (Posíláme Alici zprávu) Chceme poslat: z = 42. 1 Alicin veřejný klíč: (n A, e A ) = (2 923, 1 787). 2 Spočteme: x = 42 1 787 = 242 v Z 2 923 (algoritmus opakovaných čtverců). 3 Odešleme: číslo 242. Příklad (Alice přijímá zprávu) Přijala: x = 242. 1 Alicin soukromý klíč: (n A, d A ) = (2 923, 11). 2 Alice spočítá: x 11 = 242 11 = 42 v Z 2 923 (algoritmus opakovaných čtverců). 3 Původní zpráva: číslo 42. Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 6/18

Věta o korektnosti protokolu RSA Jestliže x = z e A v Z na, potom z = x d A v Z na. Důkaz. (z e A) d A = z kϕ(na)+1 pro nějaké celé k. 1 gcd(z, n A ) = 1: hotovo (Eulerova věta). 2 gcd(z, n A ) 1: rozbor případů a Eulerova věta. Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 7/18

Věta o bezpečnosti protokolu RSA Ať číslo n je součinem dvou neznámých různých prvočísel p a q. Znalost těchto prvočísel je ekvivalentní (v polynomiálním čase) znalosti čísla ϕ(n). Důkaz. 1 Známe p, q. Pak ϕ(n) = (p 1) (q 1) (polynomiální čas!). 2 Známe ϕ(n) a n. Takže známe pq = n a p + q = n + 1 ϕ(n). Pak p, q jsou kořeny kvadratické rovnice (polynomiální čas!) (x p) (x q) = x 2 (n + 1 ϕ(n))x + n = 0 Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 8/18

Lov na prvočísla (The Great Internet Mersenne Prime Search) Ke dni 2. 12. 2010 je největším známým prvočíslem číslo (tým z UCLA, 23. srpna 2008). Má 12 978 189 cifer. Viz např. 2 43 112 609 1 1 http://primes.utm.edu/primes/ 2 http://www.mersenne.org/ 3 nebo dodatky skript. Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 9/18

Útok hrubou silou Útok outsidera při sdíleném modulu Útok při stejném malém veřejném exponentu Jednoduché útoky 1 Útok hrubou silou. 2 Útok insidera při sdíleném modulu (nepovinný). 3 Útok outsidera při sdíleném modulu. 4 Útok při stejném malém veřejném exponentu. Rafinovanější útoky 1 Wienerův útok (dodatek skript nepovinné). 2 Řada dalších viz literatura, např. D. Boneh, Twenty Years of Attacks on the RSA Cryptosystem, Notices Amer. Math. Soc. (AMS) 46(2), 1999, 203 213 http://crypto.stanford.edu/ dabo/abstracts/rsaattacksurvey.html Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 10/18

Útok hrubou silou Útok outsidera při sdíleném modulu Útok při stejném malém veřejném exponentu Příklad (Útok hrubou silou) Eve a zachytila zprávu 11 pro Alici, zná Alicin veřejný klíč (36 181, 3 989). Eve postupuje takto: 1 Hrubou silou faktorizuje 36 181 = 97 373. Vyzkouší prvočísla 36 181 191. 2 Spočte ϕ(36 181) = ϕ(97) ϕ(373) = 96 372 = 35 712. 3 Spočte 3 989 1 = 16 601 v Z 35 712 a zná Alicin soukromý klíč (36 181, 16 601). 4 11 16 601 = 9 703 v Z 36 181 (čínská věta, opakované čtverce a Eulerova věta minulá přednáška). 9 703 je odeslaná zpráva. a Z anglického eavesdropper ten, kdo tajně naslouchá. Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 11/18

Útok hrubou silou Útok outsidera při sdíleném modulu Útok při stejném malém veřejném exponentu Slabiny útoku hrubou silou Jediná, ale zásadní: faktorizační algoritmus hrubou silou. Pracuje v exponenciálním čase, únosný pro čísla < 10 12. Modernější faktorizační algoritmy: 1 Pollardova p 1 metoda, Pollardova ρ metoda (dodatek skript nepovinné). 2 Number Field Sieve nemáme vybudovanou teorii, viz např. V. Shoup, A Computational Introduction to Number Theory and Algebra, Cambridge Univ. Press, 2005. 3 Shorův kvantový faktorizační algoritmus (polynomiální čas!), viz předmět Kvantové počítání, Libor Nentvich & Jiří Velebil. Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 12/18

Útok hrubou silou Útok outsidera při sdíleném modulu Útok při stejném malém veřejném exponentu Příklad (Útok outsidera při sdíleném modulu) Alice posílá stejnou zprávu z dvěma účastníkům s veřejnými klíči (n, e 1 ) = (703, 11) a (n, e 2 ) = (703, 7). Eve zachytí dvě zprávy c 1 = 694 a c 2 = 78 v Z 703. Eve postupuje takto: 1 Spočítá gcd(11, 7) = 1. Bezoutova rovnost 1 = 11 2 + 7 ( 3) neboli 7 3 + 1 = 11 2 v Z. 2 Dále čili z 7 3+1 = z 11 2 v Z 703 78 3 z = 694 2 v Z 703 Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 13/18

Útok hrubou silou Útok outsidera při sdíleném modulu Útok při stejném malém veřejném exponentu Příklad (Útok outsidera při sdíleném modulu) 3 Takže máme vyřešit 27 z = 81 v Z 703 Protože gcd(703, 27) = 1, existuje jediné řešení z = 3. 4 Odeslaná zpráva je z = 3. Co kdyby výše uvedená rovnice neměla jednoznačné řešení? To poznáme nalezením gcd. Pak ale faktorizujeme modul RSA v polynomiálním čase. Viz skripta. Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 14/18

Útok hrubou silou Útok outsidera při sdíleném modulu Útok při stejném malém veřejném exponentu Ztížení útoku outsidera Soudělnost exponentů: pak musíme řešit problém diskrétní odmocniny: z d = x v Z n z = d x v Z n Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 15/18

Útok hrubou silou Útok outsidera při sdíleném modulu Útok při stejném malém veřejném exponentu Příklad (Útok při stejném malém veřejném exponentu) Tři účastníci s veřejnými klíči (n 1, e) = (253, 3), (n 2, e) = (51, 3) a (n 3, e) = (145, 3). Eve zachytí zprávy c 1 = 86, c 2 = 9 a c 3 = 40 pro tyto účastníky, které vznikly zašifrováním stejné neznámé zprávy z. Eve postupuje takto: 1 Platí soustava rovnic x = z 3 = 86 v Z 253 x = z 3 = 9 v Z 51 x = z 3 = 40 v Z 145 2 x = 3 375 v Z 1 870 935 (čínská věta, protože moduly n 1 = 253, n 2 = 51 a n 3 = 145 jsou navzájem nesoudělné). 3 Platí 3 375 = z 3 < n 1 n 2 n 3 = 1 870 935. Eve nalezne zprávu z obyčejnou třetí odmocninou: z = 15. Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 16/18

Útok hrubou silou Útok outsidera při sdíleném modulu Útok při stejném malém veřejném exponentu Ztížení útoku při stejném malém veřejném exponentu Soudělnost modulů a současně velká zpráva: pak nemůžeme použít čínskou větu o zbytcích, ani její zobecnění. Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 17/18

založené na počítání modulo 1 Výměna klíče podle Diffieho a Helmanna (viz skripta nepovinné). 2 Elgamalův protokol (viz skripta nepovinné). 3 k-threshold System for Sharing a Secret (viz skripta nepovinné). 4... a řada dalších, viz např. M. J. Atallah, Algorithms and Theory of Computation Handbook, CRC Press, New York, 1999 Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 18/18