240 likes | 378 Views
Horst Feistel 1915-1990 Německo, USA IBM. Feistlovy kryptos ystémy . Lucifer DES, AES. Posuvné registry . Blok bitů – délka 2n Klíč – posloupnost k funkcí f 1 , f 2 ,…, f k {0,1} n → {0,1} n , k – hlou b ka kl íč e. Posuvné registry, šifrování. (m 0 , m 1 ) = X
E N D
Horst Feistel 1915-1990 Německo, USA IBM Feistlovy kryptosystémy Lucifer DES, AES
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)
Lucifer (1970) • Délka bloku 2n=128, n=64 • Hloubka klíče k=2 až 16 • Funkce f1,…,f16 jsou odvozené z přičtení klíče K.
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
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 Leonard Adelman *1945 Adi Shamir *1952 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
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
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
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íčů
X.509 • Hierarchická struktura certifikátů • Certifikační agentura • http://www.mvcr.cz/clanek/prehled-kvalifikovanych-poskytovatelu-certifikacnich-sluzeb-a-jejich-kvalifikovanych-sluzeb.aspx
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
Protokol SSL,SSH,HTTPS • Asymetrická šifra: Diffie-Hellman, RSA • Symetrická šifra: IDEA,AES • Hešovací funkce: MD5,SHA • Je možné nastavit na straně serveru i na straně klineta, které algoritmy jsou povolené