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

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

ElGamal, Diffie-Hellman

asymetrická kryptografie

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

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

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

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

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

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

Andrew Kozlík KA MFF UK

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

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

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

MFF UK Praha, 22. duben 2008

Diskrétní logaritmus

Složitost a moderní kryptografie

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

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

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

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

Hashovací funkce. Andrew Kozlík KA MFF UK

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

Asymetrická kryptografie

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

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

Proudové šifry a posuvné registry s lineární zpětnou vazbou

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

C5 Bezpečnost dat v PC

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

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

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

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

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

Komerční výrobky pro kvantovou kryptografii

Správa přístupu PS3-2

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

Jak funguje asymetrické šifrování?

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

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

Vzdálenost jednoznačnosti a absolutně

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

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

pomocí asymetrické kryptografie 15. dubna 2013

Kryptografie - Síla šifer

Informatika Ochrana dat

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

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

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

Pokročilá kryptologie

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

Pokročilá kryptologie

Konstrukce šifer. Andrew Kozlík KA MFF UK

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

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

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

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

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

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

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

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

Eliptické křivky a RSA

Autentizace uživatelů

Šifrování Autentizace Bezpečnostní slabiny. Bezpečnost. Lenka Kosková Třísková, NTI TUL. 22. března 2013

KRYPTOGRAFIE VER EJNE HO KLI Č E

PSK2-16. Šifrování a elektronický podpis 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.

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

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

Data Encryption Standard (DES)

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

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

Úvod do kryptologie. 6. března L. Balková (FJFI ČVUT v Praze) Primality Testing and Factorization 6. března / 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

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

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

Standard Ministerstva financí k provozování hazardních her dle zákona č. 186/2016 Sb., o hazardních hrách

3. Podmíněná pravděpodobnost a Bayesův vzorec

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,

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

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

Mixy a systémy pro poskytování anonymity. Marek Kumpošt, Vašek Matyáš Fakulta informatiky, MU Brno {xkumpost

Bezpečnost internetového bankovnictví, bankomaty

Základy elementární teorie čísel

212/2012 Sb. VYHLÁŠKA

15. Moduly. a platí (p + q)(x) = p(x) + q(x), 1(X) = id. Vzniká tak struktura P [x]-modulu na V.

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


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

Základy elementární teorie čísel

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

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

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

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

Cyklické grupy a grupy permutací

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

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

UKRY - Symetrické blokové šifry

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

Generátory náhodných a

Transkript:

Diffieho-Hellmanův protokol ustanovení klíče Andrew Kozlík KA MFF UK

Diffieho-Hellmanův protokol ustanovení klíče (1976) Před zahájením protokolu se ustanoví veřejně známé parametry: Konečná grupa (G, ). Prvek g G řádu q. Protokol: 1. Alice: a R {0, 1,..., q 1}, A := g a Bob: b R {0, 1,..., q 1}, B := g b 2. Alice Bob: A Bob Alice: B 3. Alice: k 1 := B a Bob: k 2 := A b Platí k 1 = g ab = k 2.

Příklad Máme-li G = Z 11 a g = 2, pak řád g je q = 10. Alice si náhodně zvolí tajnou hodnotu a = 9 a spočte A = 2 9 = 6. Bob si náhodně zvolí tajnou hodnotu b = 8 a spočte B = 2 8 = 3. Strany si vymění hodnoty A a B. Alice spočte B a = 3 9 = 4. Bob spočte A b = 6 8 = 4.

Bezpečnost Výměna hodnot A a B probíhá po kanálu, který nemusí zajišťovat utajení, ale musí zajišťovat autentizaci původců zpráv (systém by jinak byl zranitelný útokem typu man-in-the-middle). Cíl útočníka: Ze znalosti g, g a a g b určit g ab. (Diffieho-Hellmanův problém). Problém diskrétního logaritmu: Ze znalosti g G a g s určit s {0, 1,..., ord(g) 1}. Útočník, který umí efektivně řešit problém diskrétního logaritmu, umí efektivně řešit Diffieho-Hellmanův problém.

K čemu je Diffie-Hellman dobrý? Alice chce poslat Bobovi zprávu x šifrovaně, ale nemá s ním dohodnutý klíč symetrické šifry. Alice zná Bobův veřejný RSA klíč k v. Možnost první: Alice náhodně zvolí klíč symetrické šifry k. Alice pošle Bobovi (RSA kv (k), AES-CBC k (x)). Po skončení, účastníci zapomenou k. Nevýhoda: Postrádá perfect forward secrecy. Útočník odposlechne komunikaci. Útočník v budoucnu ukradne Bobovi jeho soukromý klíč. Útočník zpětně dešifruje k a následně x.

Perfect forward secrecy Možnost druhá: Bob náhodně zvolí b, spočítá B = g b a podpis RSA ks (B). Bob pošle Alici (B, RSA ks (B)). Alice ověří podpis. Alice náhodně zvolí a, spočítá A = g a a spočítá k = B a. Alice pošle Bobovi (A, AES-CBC k (x)). Po skončení, účastníci zapomenou a, b a k. Nevýhoda: Vyžaduje součinnost Boba. Klíče a a b se generují pro každou relaci znovu. Označují se jako ephemeral (efemérní, prchlavé). Bobův veřejný RSA klíč k v se používá dlouhodobě. Definice Říkáme, že protokol ustanovení klíče zaručuje perfect forward secrecy, jestliže odhalení dlouhodobého klíče neohrozí utajení klíčů ustanovených v dřívějších relacích.

Volba grupy G a prvku g Používáme například G = Z p, kde p je prvočíslo. Typicky volíme p o velikosti alespoň 2048 bitů. Z bezpečnostních důvodů volíme prvočíslo p ve tvaru p = qa + 1, kde q je velké prvočíslo a a je celé číslo. Prvek g volíme tak, aby jeho řád byl roven q. Tato volba parametrů znemožňuje efektivní použití Pohligova-Hellmanova algoritmu k výpočtu diskrétního logaritmu nebo částečné informace o diskrétním logaritmu.

Sestrojení prvočísla p a prvku g Algoritmus pro sestrojení prvočísla p a prvku g řádu q: 1. Zvol velké prvočíslo q náhodně. 2. Zvol malé a N tak, aby p := aq + 1 bylo prvočíslo. 3. Zvol h Z p tak, aby g := h a 1. Podle čeho víme, že prvek g vrácený algoritmem je řádu q? Podle malé Fermatovy věty je g q = h aq = h p 1 = 1. Řád prvku g tedy dělí q. Dělitelé q jsou pouze 1 a q, přičemž g řádu 1 jsme vyloučili.

Princip Pohligova-Hellmanova algoritmu Nechť p = 31 a g = 3. Máme ϕ(p) = 30 = 2 3 5 = p 1 p 2 p 3. V Z p lze sestrojit následující tabulku: s 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15... 29 g s 1 3 9 27 19 26 16 17 20 29 25 13 8 24 10 30... 21 (g s ) 15 1 30 1 30 1 30 1 30 1 30 1 30 1 30 1 30... 30 (g s ) 10 1 25 5 1 25 5 1 25 5 1 25 5 1 25 5 1... 5 (g s ) 6 1 16 8 4 2 1 16 8 4 2 1 16 8 4 2 1... 2 To, že poslední 3 řádky tabulky vykazují periodické chování, není náhoda. Zapíšeme-li totiž s ve tvaru s = q i p i + r i, kde r i = s mod p i, pak (g s ) ϕ(p)/p i = g (q i p i +r i )ϕ(p)/p i = g q i ϕ(p)+r i ϕ(p)/p i = (g r i ) ϕ(p)/p i.

Princip Pohligova-Hellmanova algoritmu Vyřešte g s = 23. [Hrubou silou 30 možností pro s.] Vyřešíme 3 jednodušší úlohy 23 15 = 30 = (g 15 ) r 1 r 1 = 1, [2 možnosti pro r 1 ] 23 10 = 1 = (g 10 ) r 2 r 2 = 0, [3 možnosti pro r 2 ] 23 6 = 8 = (g 6 ) r 3 r 3 = 2. [5 možností pro r 3 ] Potom vyřešíme soustavu kongruencí: s 1 (mod 2) s 0 (mod 3) s 27 (mod 30) s 2 (mod 5)

ElGamalův šifrovací systém (1985) Generování klíčů: 1. Zvol velké prvočíslo p, generátor g grupy Z p a náhodnou tajnou hodnotu s Z p 1. 2. Spočti v = g s mod p. 3. Označ k s = (s, p, g) a k v = (v, p, g). Šifrování zprávy x: 1. Zvol tajnou nonci r Z p 1. 2. Spočti y 1 = g r mod p a y 2 = xv r mod p. 3. Šifrový text je y = (y 1, y 2 ). Dešifrování: Spočti x = y 2 y 1 s. Důkaz správnosti: y 2 y 1 s (xv r )(g r ) s xg sr g rs x (mod p). Použije-li se k šifrování dvou zpráv x 1 a x 2 stejná hodnota r, pak lze z šifrových textů odhalit x 1 x 2 1 (mod p).

ElGamalovo podpisové schéma (1985) Generování klíčů: 1. Zvol velké prvočíslo p, generátor g grupy Z p a náhodnou tajnou hodnotu s Z p 1. 2. Spočti v = g s mod p. 3. Označ k s = (s, p, g) a k v = (v, p, g). Předzpracování zprávy x: Spočti otisk zprávy h = h(x) Z p 1. Podepsání zprávy: 1. Zvol tajnou nonci r Z p 1. 2. Spočti y 1 = g r mod p a y 2 = (h sy 1 )r 1 mod (p 1). 3. Pokud y 2 = 0, vrať se ke kroku 1. 4. Podpis je y = (y 1, y 2 ). Ověření podpisu zprávy: Ověř, že v y 1 y 1 y 2 g h (mod p) a 1 y 1 < p. Důkaz úplnosti: v y 1 y 1 y 2 (g s ) y 1 (g r ) (h sy 1)r 1 g sy 1+h sy 1 g h (mod p).

Bezpečnost ElGamalova podpisového schématu Použije-li se schéma bez hashovací funkce, pak lze docílit existenčního podvržení podpisu: Zvol a Z p libovolně. Spočti y 1 = g a v mod p Spočti y 2 = y 1 mod (p 1) Potom (y 1, y 2 ) je podpis zprávy x = ay 2 mod (p 1). Z podepsané zprávy a z hodnoty r lze s vysokou pravděpodobností vypočítat soukromý klíč. Použije-li se k podpisu dvou různých zpráv stejná hodnota r, pak lze z podpisů odhalit soukromý klíč. Proti ověřovateli, který neověří, že 1 y 1 < p, lze provést univerzální podvržení podpisu.

Schnorrovo podpisové schéma (1989) Generování klíčů: 1. Nechť p a q jsou prvočísla, kde q p 1. 2. Nechť g Z p je prvek řádu q. 3. Zvol náhodnou tajnou hodnotu s Z q. 4. Spočti v = g s mod p. 5. Označ k s = (s, p, q, g) a k v = (v, p, q, g). Podepsání zprávy: 1. Zvol tajnou nonci r Z q. 2. Spočti y 1 = h ( (g r mod p) x ). 3. Spočti y 2 = (r sy 1 ) mod q. 4. Podpis je y = (y 1, y 2 ). Ověření podpisu zprávy: Ověř, že h ( (v y 1 g y 2 mod p) x ) = y 1. Důkaz úplnosti: h ( (v y 1 g y 2 mod p) x ) = h ( (g sy 1 g r sy 1 mod p) x ) = h ( (g r mod p) x ) = y1

Digital Signature Algorithm (DSA, 1991) Generování klíčů: (Stejné, jako u Schnorrova schématu.) 1. Nechť p a q jsou prvočísla, kde q p 1. 2. Nechť g Z p je prvek řádu q. 3. Zvol náhodnou tajnou hodnotu s Z q. 4. Spočti v = g s mod p. 5. Označ k s = (s, p, q, g) a k v = (v, p, q, g). Předzpracování zprávy x: 1. Spočti otisk h(x). 2. Pokud je h(x) delší než log 2 q bitů, odřež bity vpravo. 3. Výsledek označ h.

Digital Signature Algorithm (DSA, 1991) Podepsání zprávy: 1. Zvol tajnou nonci r Z q. 2. Spočti y 1 = (g r mod p) mod q. 3. Spočti y 2 = (h + sy 1 )r 1 mod q. 4. Pokud y 1 = 0 nebo y 2 = 0, vrať se ke kroku 1. 5. Podpis je y = (y 1, y 2 ). Ověření podpisu zprávy: 1. Ověř, že 1 y 1 < q a 1 y 2 < q. 2. Označ y 2 inverzní prvek k y 2 v Z q. 3. Ověř, že ((g h v y 1 ) y 2 mod p) mod q = y1. Důkaz úplnosti: ((g h v y 1 ) y 2 mod p) mod q = ((g h g sy 1 ) y 2 mod p) mod q = (g (h+sy 1)y 2 mod p) mod q = (g r mod p) mod q = y 1

Vlastnosti DSA cvičení Ukažte, že z podepsané zprávy a z hodnoty r lze vypočítat soukromý klíč. Ukažte, že použije-li se k podpisu dvou různých zpráv stejná hodnota r, pak lze z podpisů odhalit soukromý klíč.

Úroveň bezpečnosti V závislosti na požadované úrovni bezpečnosti je doporučeno volit následující velikosti parametrů (v bitech): Sym. šifra Délka DH / DSA / ElGamal RSA k hashe p q N 80 160 1024 160 1024 112 224 2048 224 2048 128 256 3072 256 3072 192 384 7680 384 7680 256 512 15360 512 15360 Zdroj: NIST Special Publication 800-57 Part 1 Revision 4

Srovnání RSA, DSA a ElGamalova podpisu Srovnání stejně bezpečného ElGamalova podpisu a DSA: Délka ElGamalova podpisu je 6 až 30 větší než DSA. Vytvoření DSA podpisu je 6 až 30 rychlejší. Ověření DSA podpisu je 4 až 20 rychlejší. Srovnání stejně bezpečného RSA podpisu a DSA: Délka RSA podpisu je 3 až 15 větší než DSA. Vytvoření DSA podpisu je až 7 rychlejší než RSA. Ověření RSA podpisu je 42 až 135 rychlejší než DSA.