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

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

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

ElGamal, Diffie-Hellman

Asymetrická kryptografie

asymetrická kryptografie

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

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

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

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

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

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

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

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

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

C5 Bezpečnost dat v PC

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

Informatika Ochrana dat

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

Komerční výrobky pro kvantovou kryptografii

Složitost a moderní kryptografie

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

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

KRYPTOGRAFIE VER EJNE HO KLI Č E

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

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

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

Eliptické křivky a RSA

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

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

Autentizace uživatelů

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

Pokročilá kryptologie

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

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

Správa přístupu PS3-2

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

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

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

MFF UK Praha, 22. duben 2008

Jak funguje asymetrické šifrování?

Č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

Diskrétní logaritmus

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,

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

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

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

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

pomocí asymetrické kryptografie 15. dubna 2013

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

Směry rozvoje v oblasti ochrany informací PS 7

Pokročilá kryptologie

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

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

Kryptografie - Síla šifer

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

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

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

Moderní komunikační technologie. Ing. Petr Machník, Ph.D.

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

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

Šifrování dat, kryptografie

dokumentaci Miloslav Špunda

Bezpečnost v sítích Cíl. Kryptografické funkce. Existují čtyři oblasti bezpečnosti v sítích. Každá úroveň se může podílet na bezpečnosti


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

Hesla a bezpečnost na internetu MjUNI 2019 Dětská univerzita,

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

Bezpečnost internetového bankovnictví, bankomaty

MODERNÍ ASYMETRICKÉ KRYPTOSYSTÉMY

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

PA159 - Bezpečnostní aspekty

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

Směry rozvoje v oblasti ochrany informací KS - 7

klasická kryptologie základní pojmy požadavky na kryptosystém typologie šifer transpoziční šifry substituční šifry

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

Projekt: 1.5, Registrační číslo: CZ.1.07/1.5.00/ Digitální podpisy

České vysoké učení technické v Praze FAKULTA INFORMAČNÍCH TECHNOLOGIÍ katedra počítačových systémů. Digitální důvěra. Jiří Smítka

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

Šifrování a bezpečnost. Bezpečnost. Definice. Úvod do počítačových sítí Lekce 12 Ing. Jiří ledvina, CSc.

Tel.: (+420)

Rozdělení šifer Certifikáty a jejich použití Podání žádosti o certifikát. Martin Fiala digri@dik.cvut.cz

Základní definice Aplikace hašování Kontrukce Známé hašovací funkce. Hašovací funkce. Jonáš Chudý. Úvod do kryptologie

Historie Kryptografie

Základy počítačových sítí Šifrování a bezpečnost

Informatika / bezpečnost

Využití Diffie-Hellmanova protokolu pro anonymní autentizaci

UKRY - Symetrické blokové šifry

Bezpečnost dat. Možnosti ochrany - realizována na několika úrovních

Michaela Sluková, Lenka Ščepánková

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

Matematické algoritmy (11MAG) Jan Přikryl

Vzdálenost jednoznačnosti a absolutně

klasická kryptologie základní pojmy požadavky na kryptosystém typologie šifer transpoziční šifry substituční šifry

Šifrování. Tancuj tak, jako když se nikdo nedívá. Šifruj tak, jako když se dívají všichni! Martin Kotyk IT Security Consultnant

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

PV157 Autentizace a řízení přístupu

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

Transkript:

České vysoké učení technické v Praze Fakulta elektrotechnická Katedra telekomunikační techniky Asymetrické kryptosystémy I Ing. Tomáš Vaněk, Ph.D. tomas.vanek@fel.cvut.cz

Osnova obecné informace IFP RSA DLP Diffie-Hellman DSA ECDLP Jiné 2

Šifrovací algoritmy - rozdělení symetrické blokové (DES, 3DES, IDEA, RC6, Blowfish, CAST, AES - Rijndael.) proudové (Enigma, SEAL, RC4, A5, ) asymetrické IFP (RSA, Rabin-Williams, Lucas, ) DLP (DSA, Diffie-Hellman, El-Gamal, ) ECDLP (ECDSA, PSEC, ) 3

Šifrovací algoritmy - srovnání Symetrické algoritmy dnes velmi rychlé algoritmy hodící se k šifrování velkých objemů dat malé (relativně) délky klíčů (128-bit, 256-bit) obě dvě strany musí znát stejný tajný klíč problém distribuce/změny klíčů v případě velkého množství komunikujících stran nelze prokázat totožnost autora zašifrovaných dat (data mohla zašifrovat kterákoliv strana vlastnící klíč) 4 4

Šifrovací algoritmy - srovnání Asymetrické algoritmy pomalé (100-1000x) velké délky klíčů (1024b, 2048b, ) různé klíče pro šifrování a dešifrování klíče spolu vzájemně souvisejí Hybridní systémy využívají kladné vlastnosti obou předchozích skupin. zpráva je zašifrována symetrickým algoritmem s náhodně vygenerovaným klíčem a tento klíč je zašifrován asymetrickým algoritmem příklad - PGP 5 5

Použití kryptosystémů veřejného klíče Tři možné oblasti použití: šifrování /dešifrování podepisování (digitální podpis) výměna klíčů Ne všechny kryptosystémy veřejného klíče umožňují realizovat všechny činnosti! 8

Šifrování s asymetrickým algoritmem 1) Vygeneruji pár klíčů veřejný (šifrovací) soukromý (dešifrovací). Veřejný klíč může být volně dostupný. Lze ho zveřejnit např. na Internetu. Není žádný důvod ho tajit. Soukromý (dešifrovací) klíč je potřeba uchovávat v tajnosti. 2) Pokud mi někdo chce poslat tajnou zprávu, zašifruje ji mým veřejným klíčem. 3) Pouze já (jakožto držitel tajného klíče) mohu dešifrovat zprávu svým soukromým klíčem. EN terminologie: Veřejný = Public Soukromý/Tajný = Private 9

Podepisování s asymetrickým algoritmem 1) Vygeneruji dva klíče soukromý (pro vytváření podpisu) a veřejný (pro ověřování podpisu). Veřejný klíč může být volně dostupný. Není žádný důvod ho tajit. Soukromý klíč je potřeba uchovávat v tajnosti. 2) Pokud chci podepsat zprávu, podepíši (tato transformace je identická s šifrováním) ji s využitím svého soukromého klíčem. 3) Pokud chce někdo ověřit autorství zprávy, ověřím platnost podpisu (= transformace dešifrování) s využitím mého veřejného klíče. Protože pouze držitel tajného klíče mohl zprávu podpesat Nezaměňovat podepisování a šifrování! 11

Autentizace pomocí asymetrické kryptografie Alice pošle výzvu někomu, kdo se představil jako Bob Náhodné číslo # (nonce) zašifrované Bobovým veřejným klíčem Pokud je neznámý skutečně Bob, dokáže zprávu dešifrovat {Udělej HAF! } PK(Bob) HAF! Bob Alice {Řekni sýr } PK(Bob) Eva?????

Co neřeší asymetrická kryptografie Stačí takto definované principy asymetrické kryptografie (soukromý a veřejný klíč) k bezpečné prokázání toho, že konkrétní klíč patří konkrétní entitě (osoba, systém)? 14

Certifikát, Certifikační autorita a PKI Důvěryhodná třetí strana (Trusted Third Party) - CA ověřuje vlastníků klíčových párů CA autentizuje Boba & vytváří certifikát obsahující jeho veřejný klíč (spojuje Bobovu identitu s jeho veřejným klíčem) Public Key Infrastructure (PKI): CA + všechno další potřebné pro šifrování veřejným klíčem Detailní informace viz přednáška o elektronickém podpisu.

Využití asymetrických kryptosystémů PGP Pretty Good Privacy GPG implementace OpenPGP SSH Secure Shell SSL/TLS Secure Socket Layer/Transport Layer Security IKE (Internet Key Exchange) součást IPsec ESP Encapsulated Secure Payload součást IPsec 16

Historie 1970 James Ellis (UK CESG) popsal myšlenku asymetrické kryptografie Secure Non-secret Encryption odtajněna až v roce 1999 v CESG nejprve objevili RSA a až potom DH veřejně to bylo obráceně. 1970, W.Diffie & M.E.Hellman představili myšlenku kryptosystému veřejného klíče zatím bez konkrétní možné realizace 1973 Clifford Cocks (GCHQ - Government Communications Headquarters) možnost konstrukce kryptosystémů veřejného klíče na stejném principu veřejně publikováno v roce 1997

Historie 1976: W.Diffie & M.E. Hellman veřejně publikovali první asymetrický kryptografický algoritmus - bezpečná výměna tajného klíče 1978: L.M. Adleman, R.L. Rivest and A. Shamir publikovali šifrování pomocí RSA 2011 - C. Cocks objevil první bezpečné schéma pro IBE (Identity Based Encryption) založené na kvadratických reziduích ve složených grupách nepoužívá se v praxi kvůli velkému nárůstu velikosti ŠT (řádově 100-1000x) jedno z mála IBE schémat, která nepoužívají bilinéární párování, ale závisí na lépe prozkoumaných matematických problémech

Od 70. let 20.století bylo představeno mnoho kryptosystémů veřejného klíče Řada z nich není bezpečných, nebo jsou velmi nepraktické (např.: vyžadují příliš velké klíče, nebo ŠT je výrazně větší než OT). Pouze několik málo algoritmů je současně jak bezpečných tak i praktických. Některé algoritmy lze použít jen šifrování, některé jen k podepisování a některé k obojímu. Pouze tři algoritmy je možné použít jak pro šifrování, tak pro podepisování: RSA, El-Gamal, a Rabinův. 19

Faktorizace obecně jde o problém rozložení čísla na součin menších čísel nejčastěji se myslí rozklad celého čísla na součin prvočísel lze rozkládat i jiné objekty (např. polynom x 4 4 lze vyjádřit jako součin dvou polynomů (x 2 2) (x 2 +2)) libovolné celé číslo lze jednoznačně rozložit na součin prvočísel rozklad složeného čísla na prvočísla je považován za obtížný dnes neznáme efektivní algoritmus není známa klasifikace tohoto problému do třídy složitosti předpokládá se, že neleží v P, NP-complete, co-npcomplete 20

RSA 1978 pojmenován po svých třech objevitelích: Ron Rivest Adi Shamir Leonard Adleman první asymetrický šifrovací algoritmus nejznámější kryptosystém veřejného klíče používán v řadě protokolů (např.: SSL/TLS, IPsec, ) umožňuje jak šifrování, tak i podepisování 21

RSA založen na umocňování celých čísel modulo prvočíslo používá velká prvočísla (více než 100 dekadických míst ~1024 bitů) dvě prvočísla p a q, které mají x a y dekadických čísel je možné podle vynásobit s obtížností O(log 2 x log 2 y) bitových operací opačná úloha tj. pro dané n = p q najít prvočíselné dělitele je výrazně těžší. toto tvrzení však dodnes nebylo dokázáno (tj. je možné, že k vyřešení IFP není nutné provádět faktorizaci) 3 složitost při šifrování je O((log n) ) log n log log n faktorizace pokusným dělením zabírá Oe ( ) operací nejefektivnější faktorizační metoda (Brent-Pollardova ρ- metoda) vyžaduje 2ln pln ln p e O( ) ln p 22

RSA RSA generování klíčových párů Nechť p a q jsou velká a náhodně zvolená prvočísla Číslo N = pq nazveme modul Zvolíme e, které je relativním prvočíslem k φ(n)=(p-1)(q-1) Nalezneme d takové, že ed = 1 mod φ(n) Veřejný klíč je dvojice (N,e) Soukromý klíč je dvojice (N,d) 23

RSA šifrování a dešifrování Šifrování zprávy M: Dešifrování zprávy M: C = M e mod N M = C d mod N N, e jsou veřejně známé. Pokud útočník je schopný najít rozklad N, pak je jednoduché najít d, protože ed = 1 mod (p-1)(q-1) Rozklad modulu je cesta k prolomení RSA. Není jisté, zda-li je faktorizace jediná možnost jak prolomit RSA. 24

RSA před šifrováním je potřeba upravit text formátovací pravidla - PKCS#1 (http://www.rsasecurity.com/rsalabs/node.asp?id=2124) jinak hrozí, že pro vybrané vstupní texty M bude zašifrovaný text lehce prolomitelný bezpečnost RSA závisí na obtížnosti rozkladu modulu N Na stejném zařízení je při HW implementaci : RSA cca 1000x pomalejší nežli DES. při SW implementaci : RSA cca 100x pomalejší nežli DES. 27

Efektivita RSA RSA s velkými moduly je neefektivní Se vzrůstající délkou modulu roste bezpečnost pomalu, ale výpočetní nároky rychle. složitost RSA-1024 je srovnatelná se symetrickou šifrou s klíčem délky 80bitů složitost RSA-2048 přibližně odpovídá klíči délky 112 bitů (3-DES) složitost RSA-3072 přibližně odpovídá klíči délky 128 bitů (např. AES-128) složitost RSA-7680 přibližně odpovídá klíči délky 192 bitů (např. AES-192) složitost RSA-15,380 přibližně odpovídá klíči délky 256 bitů (např. AES-256) 28

Efektivita RSA Výkon RSA s velkými moduly je velmi nízký Čas nutný k podepisování roste s třetí mocninou délky klíče K výpočtu podpisu pomocí RSA-2048 je potřebuje přibližně 8x delší čas než s RSA-1024 Např. 60ms pro RSA-1024 se změní na 480 ms pro RSA-2048 RSA-15,360 by zabrala 3375-ta násobek trvání RSA- 1024 (~ 200 sekund) Existuje řešení pro bezpečné délky klíčů a rozumné výpočetní nároky algoritmy ze skupiny Suite B 29

Proč je RSA bezpečný? Dosud nebyl objeven rychlý algoritmus pro rozklad velkých složených čísel. Nebylo dokázáno, že takový algoritmus existuje (a nebo, že neexistuje). To znamená, že není pravda, že k prolomení RSA musíme faktorizovat modul, pouze dnes takový algoritmus neznáme! Peter Shor objevil velmi rychlý algoritmus pro kvantový počítač (až se někdy postaví )

Metody faktorizace prvočíselných modulů Pokusné dělení (Trial Division) Metoda řetězových zlomků (Continued Fraction Method) Metoda p-1 Metoda p+1 Pollardova ρ metoda Kvadratické síto (Quadratic Sieve) Síto číselného pole (Number Field Sieve) Zobecněné síto číselného pole (General NFS) Metoda eliptických křivek 31

Největší faktorizovaný RSA modul RSA-768 = 123018668453011775513049495838496272 077285356959533479219732245215172640050726365751 874520219978646938995647494277406384592519255732 630345373154826850791702612214291346167042921431 160222124047927473779408066535141959745985690214 3413 RSA-768 = 334780716989568987860441698482126908 177047949837137685689124313889828837938780022876 14711652531743087737814467999489 367460436667995904282446337996279526322791581643 43087642676032283815739666 5112792333734171433968 10270092798736308917 32

Číslo Počet číslic Odměna Faktorizováno RSA-100 100 04/1991 RSA-110 110 04/1992 RSA-120 120 06/1993 RSA-129 129 $100 04/1994 RSA-130 130 10.4.1996 RSA-140 140 2.2. 1999 RSA-150 150 16. 4. 2004 RSA-155 155 22.8. 1999 RSA-160 160 1.4. 2003 RSA-200 200 9.5. 2005 RSA-576 174 $10,000 3. 12. 2003 RSA-640 193 $20,000 4.11. 2005 RSA-704 212 $30,000 Doposud se RSA-768 232 $50,000 12.12.2009 RSA-896 270 $75,000 nepodařilo RSA-1024 309 $100,000 faktorizovat RSA-1536 463 $150,000 Čeká možná RSA-2048 617 $200,000 na Vás! 33

DLP Discrete Logartithm Problem 34

Diskrétní logaritmus Obecná definice problému mějme konečnou cyklickou grupu G řádu r prvek grupy takový, že je generátor grupy prvky grupy a mod n, b mod n pro neznámé hodnoty a, b cílem je najít prvek takový, že = ab mod n číslo ab je diskrétní logaritmus o základu z pro srovnání zápis týž hodnot u klasického logaritmu ab=log diskrétní logaritmus je zobecnění normálního logaritmu pro konečné cyklické grupy bezpečnost kryptostémů pak závisí na obtížnosti výpočtu diskrétního logaritmu v konečném poli GF (Galois Field) 35

Diffie-Helmannův protokol 1974 - M.J. Williamson (GCHQ) Non-Secret Encryption Using a Finite Field předchůdce D-H 1976 Whitfield Diffie a Martin Hellman a nezávisle na nich i Ralph Merkle zcela první veřejně publikovaný kryptosystém veřejného klíče nelze použít k šifrování nelze použít k podepisování lze ho použít pouze pro výměnu klíčů používá se k ustanovení sdíleného (symetrického) klíče bezpečnost závisí na obtížnosti řešení diskrétního logaritmu 36

Diffie-Helmannův protokol Diffie-Helmannův protokol Nechť p je prvočíslo a g je generátor pro každé x {1,2,,p-1} existuje n takové, že x = g n mod p 1. Alice vygeneruje tajné náhodné číslo a 2. Bob vygeneruje tajné náhodné číslo b 3. Alice odešle Bobovi g a mod p 4. Bob pošle Alici g b mod p 5. oba si spočítají sdílenou tajnou hodnotu (g b mod p) a modp =(g a mod p) b mod p =g ab mod p 6. toto číslo g ab mod p lze použít jako sdílený tajný klíč 37

Diffie-Helmannův protokol Diffie-Helmannův protokol Bob a Alice použijí g ab mod p jako symetrický klíč Útočník může zjistit g a mod p a g b mod p Poznámka: g a g b mod p = g a+b mod p g ab mod p Systém je prolomen, pokud útočník zjistí hodnotu a nebo b Systém je také možné prolomit vyřešením diskrétního logaritmu 38

Diffie-Helmannův protokol Diffie-Helmannův protokol Veřejný klíč: g, p Tajný klíč: pro Alici a, pro Boba b g a mod p g b mod p Alice, a Bob, b Alice spočítá (g b ) a = g ba mod p = g ab mod p Bob spočítá (g a ) b = g ab mod p K = g ab mod p je možné použít jako klíč pro symetrickou šifru potencionální útočník může zachytit pouze g,p, g a g b 39

Diffie-Helmannův protokol DH protokol a útok Man-in-the-middle g a mod p g x mod p g x mod p g b mod p Alice, a Padouch, x Bob, b Padouch sdílí tajemství g ax mod p s Alicí Padouch sdílí tajemství g bx mod p s Bobem Alice ani Bob nemají ani potuchy, že nekomunikují přímo ale prostřednictvím Padoucha 40

Diffie-Helmannův protokol DH protokol a útok Man-in-the-middle Jak zabránit útoku MiM? Šifrovat DH výměnu pomocí sdíleného tajemství Šifrovat DH výměnu pomocí veřejného klíče Podepsat DH výměnu pomocí soukromého klíče Jinak? V případě použití protokolu DH je nutné počítat s možností MitM útok. 41

Dotazy 42