170 likes | 402 Views
Inovace pro informatiky. Asymetrická kryptografie. Asymetrická kryptografie. Skupina kryptografických metod, ve kterých se pro šifrování a dešifrování používají odlišné klíče. Používá se nejen pro šifrování zpráv, ale i pro jejich podepisování (ověření původu). Základní principy.
E N D
Inovace pro informatiky Asymetrická kryptografie
Asymetrická kryptografie • Skupina kryptografických metod, ve kterých se pro šifrování a dešifrování používají odlišné klíče. • Používá se nejen pro šifrování zpráv, ale i pro jejich podepisování (ověření původu)
Základní principy • Šifrovací klíč sestává ze dvou částí • Veřejný klíč – používá se pro zašifrování zprávy, je veřejně dostupný • Soukromý klíč – používá se pro dešifrování zprávy, je vlastníkem pečlivě uschován. • Tím je vyřešen základní problém distribuce klíčů, není třeba sdílet žádné veřejné tajemství a komunikace může probíhat asynchronně.
Analogie se zámky • Alice navrhne zámek a jeho kopie distribuuje po celém světě, klíč si ponechá. • Bob uloží tajnou zprávu do krabice, na které zaklapne Alicin zámek. • Alice si vyzvedne krabici a odemkne ji svým klíčem.
Mechanismy šifrovací funkce • Asymetrická kryptografie je založena na jednocestných funkcích. • Princip spočívá v nesnadné faktorizaci velkých čísel.
RSA – Rivest, Shamir, Adelman • V podstatě první použitelná asymetrická metoda. • Vznik roku 1977, dva roky po uveřejnění principu Diffiem. • Tvůrci – výzkumníci laboratoře počítačových věd MIT. • Algoritmus byl v USA v roce 1983 patentován jako patent č. 4,405,829. Patent vypršel 21.9.2000.
Tvorba klíčového páru • Zvolí se dvě velká náhodná prvočísla p, q. • Určí se jejich součin n=p*q • Spočítá se hodnota Eulerovy funkce φ(n)=(p-1)(q-1) • Zvolí se číslo e menší než φ(n) a které je s φ(n) nesoudělné. • Nalezne se číslo daby platilo: de ≡ 1 (mod φ(n)).
Tvorba klíčového páru • Veřejným klíčem je pak dvojice (n,e), kde n je modul a e je šifrovací exponent • Soukromým klíčem je dvojice (n, d), kde d se označuje jako dešifrovací či soukromý exponent. • V praxi se klíče uchovávají v mírně upravené formě, která umožňují rychlejší zpracování.
Šifrování zprávy • Bob nyní chce Alici zaslat zprávu M. • Zpráva je převede na číslo m . • Šifrovým textem odpovídajícím této zprávě pak je číslo c = me (mod n) • Tento šifrový text poté zašle nezabezpečeným kanálem Alici.
Dešifrování zprávy • Alice od Boba získá šifrový text c. • Původní zprávu m získá následujícím výpočtem: m = cd (mod n)
Důkaz možnosti dešifrování • Fakt, že výpočtem získáme původní zprávu, je důsledkem následující rovnosti: cd ≡ (me)d ≡ med (mod n). • A jelikož ed ≡ 1 (mod p − 1) a ed ≡ 1 (mod q − 1), pak platí, že med ≡ m (mod p) • a zároveň med ≡ m (mod q) • Jelikož p a q jsou různá prvočísla, pak med ≡ m (mod pq). • Tudíž cd ≡ m (mod n).
Příklad • p = 61 (první prvočíslo) • q = 53 (druhé prvočíslo) • n = pq = 3233 (modul, veřejný) • e = 17 (veřejný, šifrovací exponent) • d = 2753 (soukromý, dešifrovací exponent)
Příklad – pokračování • Pro zašifrování zprávy 123 probíhá výpočet: šifruj(123) = 12317 (mod 3233) = 855 • Pro dešifrování pak: dešifruj(855) = 8552753 (mod 3233) = 123
Bezpečnost RSA • Bezpečnost šifrovacího systému RSA je založena na matematickém problému faktorizace velmi vysokých čísel. • Plné dešifrování RSA šifrovaného textu je obtížné v podstatě neproveditelné, jelikož neexistuje žádný známý algoritmus, pomocí nějž by se to dalo provést.
Bezpečnost RSA • RSA je bezpečný jestliže n je dostatečně velké. • Jestliže n je 256 bitů nebo kratší, může být za pár hodin faktorizován na osobním počítači, za použití volně dostupného software. • Jestliže n je 512 bitů nebo kratší, může být faktorizován několika sty počítačů. • Běžně se používá klíč o délce 1024–2048 bitů
Rychlost • Asymetrická kryptografie je o hodně pomalejší než symetrická. • V praxi se typicky zašifruje tajná zpráva symetrickým algoritmem, šifrování a následně se přenese symetrický klíč i symetricky šifrovaná zpráva příjemci.
PGP – Pretty Good Privacy • Umožňuje šifrování a podepisování. • Je založeno na algoritmu RSA. • První verze PGP byla uvolněna Philem Zimmermanem v roce 1991. • Později bylo PGP standardizováno. • V dnešní době existují nekomerční verze (OpenPGP, GnuPG…)