Informatika Ochrana dat Radim Farana Podklady předmětu Informatika pro akademický rok 2007/2008 Obsah Kryptografické systémy s veřejným klíčem, výměna tajných klíčů veřejným kanálem, systémy s veřejným klíčem. Elektronický podpis. Certifikační autorita. Metody zabezpečení komunikace. Výměna tajných klíčů ve veřejném kanálu Diffie-Hellman-Merkle Whitfield Diffie *.. 19 http://en.wikipedia.org/wik i/whitfield_diffie Martin E. Hellman * 2. 10. 19 New York http://en.wikipedia.org/ wiki/martin_hellman Ralph C. Merkle * 2. 2. 192 1. Oba účastníci si zvolí dvě čísla α a q. A to zcela veřejně. 2. Každý účastník si zvolí tajné číslo X i a odešle partnerovi Y i jako výsledek operace: X i Yi = α mod q. Kde i = 1, 2 pro jednotlivé účastníky.. Po výměně vypočítají společný (sdílený) klíč K 12 : X1 X1X 2 K = Y mod q = mod q, pro prvního účastníka a K 12 2 α X 2 X1X 12 Y1 q = α http://www.merkle.com/ 2 = mod mod q, pro druhého účastníka. 1
Systémy s veřejným klíčem Ze šifrovacího klíče nelze učit klíč dešifrovací. Funkce k = f(k -1 ) je neinverzibilní. Jednocestná funkce (je možno snadno určit f(x) a velmi nesnadno f -1 (x)). Základní principy: zavazadlový problém, faktorizace velkých čísel. RSA Ronald L. Rivest Adi Shamir 197, Schenectady, New York 192 Leonard M. Adleman http://en.wikipedia.org/wiki/adi_shamir * 1. 12. 19 San Francisco, USA http://theory.lcs.mit.edu/~rivest/ http://www.cirs-tm.org/researchers/researchers.php?id=17 1. Převedeme alfanumerické vyjádření znaků na numerické (obvykle se používá ASCII kód). 2. Text rozdělíme na bloky stejné délky. Obsah jednoho bloku vyjádříme jako x.. Zvolíme číslo N, které je součinem dvou náhodně zvolených 100-místných prvočísel N = p q. Číslo N má tedy 200 míst v dekadickém vyjádření. Přitom chceme, aby platilo 1 x < N.. Zvolíme šifrovací exponent s, tak aby byl nesoudělný s Φ(N), tedy aby platilo (s, Φ(N)) = (s, (p -1)(q - 1)) = 1.. Každý účastník zveřejní čísla N a s spolu se svou adresou v telefonním seznamu.. Dále najde číslo t, aby vyhovovalo kongruenci t s 1 mod Φ(N), respektive t s 1 mod (p -1)(q -1). Protože platí (s, Φ(N)) = 1, má tato kongruence jediné řešení. 7. K šifrování bude použita transformace y = x s mod N a k dešifrování transformace x = y t mod N. 8. Šifrovaný text se přenáší běžným přenosovým kanálem. RSA příklad použití volíme p = 1, q = 7, odtud N = 117 určíme Φ(N) = (p -1)(q - 1) = 1080 = 2.., zvolíme nesoudělný šifrovací exponent s = 7, určíme dešifrovací exponent t 7 1 mod 1080, neboli t.7 1 = i.1080 t =. 2
RSA realizace Šifrujeme: 100 7 mod 117 = 80, Dešifrujeme: 80 mod 117 = 100, pro násobení v modulo N platí: x.x mod N = (x 1 N + x 2 )( x 1 N + x 2 ) mod N = = (x 12 N + 2x 1 x 2 N + x 22 ) mod N = x 2 x 2 mod N, postupné násobení: ((x.x mod N).x mod N)... Algoritmus vyžaduje t-1 násobení. RSA realizace rozvojem Provedeme-li binární rozvoj exponentu, = 111001111 B, určíme mocniny x: x 2 mod N, x mod N = x 2 x 2 mod N,... a postupně násobíme: ((x.x 2 mod N).x mod N)... Algoritmus vyžaduje nejvýše 2(log 2 n) násobení. PGP Pretty Good Privacy 1991 první freeware verze. Tři roky vyšetřování pro narušení zákona o zákazu vývozu kryptografického software RSA a/nebo DH systém pro šifrování náhodného tajného klíče IDEA (International Data Encryption Algorithm) Řešení elektronického podpisu Philip Zimmermann http://www.philzimmermann.com
Elektronický podpis Zpráva Zpráva -1 Zpráva hash k Ā 1 k A -1 hash???????? Certifikační autorita Sdílení důvěry Certifikační autorita Ověření veřejného klíče Certifikace autorit vzájemně Platební karta žádost o platební kartu k účtu účet ověření stavu účtu vydání platební karty k účtu žádost o vydání peněz identifikace účtu a ověření stavu identifikace uživatele (PIN) on-line platební terminál 7 vydání peněz žádost o vydání zboží 8 10 vydání zboží off-line platební 11 inkaso z účtu 9 převzetí údajů karty (otisk)
Elektronická peněženka žádost o elektronickou účet peněženku k účtu ověření stavu účtu vydání elektronické peněženky k účtu žádost o načerpání peněz identifikace účtu a ověření stavu identifikace uživatele (PIN) on-line terminál 7 uložení peněz do peněženky převod peněz mezi dvojicí peněženek 8 9 vzájemné zúčtování 10 11 uložení na účet 21 12 Elektronické peníze žádost o 100 Kč z účtu vydání bankovky: 100-21-090 i - C - C E-1 (i) mod N účet ověření stavu účtu, vygenerování bankovky uložení na účet platba výplata ověření bankovky: (C E-1 (i) mod N) E(i) mod N = C Základní požadavky nepadělatelnost možnost ověření platnosti bankovky přenositelnost z osoby na osobu (fax, e-mail,...) anonymita plateb (neidentifikovatelnost) nízké náklady na výrobu dělitelnost problém dvojí úhrady
Zabezpečení mobilní komunikace Subscriber Identification Module Mobile Terminal Mobile Station Žádost o login GSM Net Authentication Centre Žádost o autentizaci RNG Klíč <SRES, Kc > Šifrovací klíč pro A <RAND> <SRES > Přístup povolen SRES =SRES ano <RAND, SRES, Kc> ne A8 SRES = A(RAND, Klíč) Kc = A8(RAND, Klíč) 0 1 9 SRES Kc A8(RAND, Klíč) Vlastní komunikace Kc Číslo TDMA rámce b 22 b A Časové sdílení kanálu: Time Division Multiple Access Opakování čísla TDMA rámce cca po, hod. komunikace 11 b uplink + 11 b downlink + Data burst (11 b + synchronizace) bit (časový slot 7,9 μs) hesla 0 1 7 Časový slot TDMA rámec Princip A LSFR R1 R1, 10 LSFR R2 LSFR R Posuvný registr s lineární zpětnou vazbou (LSFR - linear feedback shift register) + Nelineární řízení krokování (clock-controlled) LSFR C R2, 12 R, 12