Feistlovy kryptos ystémy
description
Transcript of Feistlovy kryptos ystémy
Feistlovy kryptosystémy
•Posuvné registry
•Lucifer
•DES, AES
Horst Feistel 1915-1990Německo, USAIBM
Posuvné registry
• Blok bitů – délka 2n
• Klíč – posloupnost k funkcí f1, f2,…, fk {0,1}n → {0,1}n , k – hloubka klíče
Posuvné registry, šifrování
• (m0, m1) = X
• mi+1 = mi-1+fi(mi)
• Y = (mk,mk+1)
Posuvné registry, dešifrování
• (mk,mk+1) = Y
• mi-1 = mi+1+fi(mi)
• X = (m0, m1)
Příklad šifrování
• Délka bloku 2n=8, hloubka klíče k=2
• f1: permutace (1234) → (2143)
• f2: funkce (1234) → (1124)
Příklad šifrování
• X = (01000001)
• m0 = (0100), m1 = (0001)
• m2= m0+ f1(m1)=(0100)+ f1(0001)=(0100)+(0010)=(0110)
• m3= m1+ f2(m2)=(0001)+ f2(0110)=(0001)+(0010)=(0011)
• Y = (01100011)
Dešifrování
• Y = (01100011)
• m2 = (0110), m3 = (0011)
• m1= m3+ f2(m2)=(0011)+ f2(0110)=(0011)+(0010)=(0001)
• m0= m2+ f1(m1)=(0110)+ f1(0001)=(0110)+(0010)=(0100)
• X = (01000001)
Počet klíčů• Počet funkcí {0,1}n → {0,1}n je F = (2n) 2n
• Počet klíčů je Fk
• V našem případě n=4 , k=2, 2n=16, F=1616=18446744073709600000
• Počet klíčů 184467440737096000002 = 340282366920938000000000000000000000000
DES funkce f1,…, f16
6 6
Data Encryption Standard (1975)generování klíče
DES, šifrování a dešifrování• Délka bloku 2n = 64,
• Hloubka klíče K = 16
• Počet klíčů 256 = 72057594037927900 ~ 7*1016
• Při 100 000 000 klíčích/sec: 7*108 sekund ~ 22 let
• Prolomeno v roce 1999 216
AES
• Počet klíčů 264 ~ 1.8*1019
• Za stejných podmínek je pro vyluštění třeba 1,8*1011s ~ 5707 let
Distribuce klíčů D-H *1976
Whitfield Diffie *1944 Martin Hellban *1945
Massachusetts Institute of Technology (Boston)
Protokol SSL
Metoda Diffie Hellman
• Použiji jednosměrnou funkci f(x)=px mod q p,q jsou velká prvočísla.
• Uživatel A zvolí tajný klíč t, uživatel B tajný klíč s.
• Uživatel A spočítá f(t) = pt mod q = α a pošle• Uživatel B spočítá f(s) = ps mod q = β a pošle
Metoda Diffie Hellman
• A spočítá βt mod q = pst mod q = K.
• B spočítá αs mod q = pts mod q = K.
• K se použije jako klíč pro jednorázovou šifru (např. DES)
RSA šifra *1977
• Ronald Rivest *1947
Adi Shamir *1952
Leonard Adelman *1945
University of Southern California, Los Angeles
Protokol PGP
RSA šifra
• Dvě prvočísla p,q
• Šifrovací modul N=p.q
• Dešifrovací exponent t nesoudělný s N
• Φ(N)=(p-1).(q-1)
• s je řešení kongurence s.t mod Φ(N)=1
• Veřejný klíč: N,s
• Tajný klíč: p,q, Φ(N), t
RSA šifra
• Šifrovací zobrazení y=xs mod N
• Dešifrovací zobrazení x=yt mod N
• xst mod N = xkΦ(N)+1 mod N = 1k.x mod N = x
Příklad
• p=7, q=13
• N=91, Φ(N)=6.12=72
• t=7
• s.7 mod 72 = 1, s=31
• Veřejný klíč s=31, N=91, y=x31mod 91
• Tajný klíč t=7, p=7, q=13, Φ(N)=72, x=y7 mod 91
Příklad
• x=24• y= x31mod 91= 2431mod 91 =
(2416mod 91). (248mod 91). (244mod 91). (242mod 91). (241mod 91) = 24.30.81.9.81mod 91= 42515280 mod 91 = 80
• x = 807 mod 91= (801 mod 91). (802 mod 91). (804 mod 91) = 80.30.81 mod 91 = 24
Elektronický podpis
• X=yt mod N, y =xs mod A
• y=yst mod N = y
Hybridní kryptosystémy
Hybridní kryptosystémy
• Symetrická šifra – bezpečná, rychlá, nutná výměna klíčů
• Asymetrická šifra – není nutná výměna klíčů, pomalá
Hybridní kryptosystémy
• Text se zašifruje symetrickou šifrou s náhodným klíčem
• Klíč se zašifruje asymetrickou šifrou
Symetrické šifry
• Všechny dnes používané jsou založené na Feistlově principu
• DES,AES,3DES
• IDEA (International Data Encryptin Algorithm, 1991), pro nekomerční účely volně šiřitelný algoritmus, Xuejia Lai, Švýcarsko
Asymetrické šifry
• (McEllis)
• RSA
• DSA (Digital Signature Algorithm)
• Diffie Hellman
Elektronický podpis
• Ze zprávy se vytvoří otisk pomocí otiskové (Hešovací, hash) funkce
• Otisk se zašifruje tajným klíčem• Otisk se pošle spolu se zprávou• Bob z přijaté zprávy vytvoří pomocí téže
funkce otisk• Přijatý otisk dešifruje pomocí veřejného klíče• Oba otisky porovná
Hešovací (otiskovací funkce)• Jednocestná funkce
– Je snadné pro danou zprávu spočítat otisk– Je obtížné z daného otisku rekonstruovat zprávu
• Jakkoli dlouhá zpráva vytvoří otisk stejné délky (obvykle 64 bitů)
• Lokální nestabilita– Malá změna vstupních dat způsobí velkou změnu
otisku
• Odolnost vůči kolizi– Je obtížné najít dvě zprávy se stejným otiskem
Hešovací funkce• MD5 (Message Digest, 1991, R.Rivest) –
částečně prolomena v roce 2004
• SHA (Secure Hash algorithm)– SHA 0, 1993, nepoužilo se– SHA 1, 1995, v roce 2005 zveřejněn algoritmus
pro nalezení kolize, který vyžaduje prošetřit 280
variant– SHA 2 (SHA-224, SHA-256, SHA-384,SHA-
512),1999, považováno za standard– SHA 3, 2007
PGP – Pretty Good PrivacyPhill Zimmermann 1991
• Symetrická šifra: IDEA, DES, AES• Asymetrická šifra: RSA• Hešovací funkce: MD5, SHA• Autorizace: DSA• Generování klíčů pro RSA (seznam
Carmichaelových čísel)• Evidence klíčů
PGP – Evidence klíčů
• ID
• Jméno uživatele
• Veřejný klíč (N,s)
• Další informace o uživateli (adresa, fotka, …)
• Podpis autorizační agentury
• Odkaz na agenturu
Protokol SSH,SSL• Podání rukou (handshake)
– Klient pošle serveru požadavek na spojení– Server odešle veřejný klíč a certifikát– Klient ověří certifikát, vygeneruje svůj tajný klíč a
odešle číslo alfa– Server vygeneruje tajný klíč a odešle číslo beta– Klient a server si vzájemně potvrdí existenci klíče
pro symetrickou šifru
• Probíhá šifrovaná komunikace domluvenou symetrickou šifrou