Anubis
EN | CZ

Šifrování nejen hybridní

Jméno
Heslo

24.01.2009, 17:46

Stručně o symetrickém, asymetrickém a hybridním šifrování.


Stručný úvod do šifrování

Kryptologie, tedy nauka o šifrách, vznikla jako obor kryptografie v 9. století. Samotné šifrování je ovšem mnohem staršího data. Prvním způsobem, jak nepovolaným osobám překazit možnost získat doručovanou psanou informaci byla tzv. steganografie, tedy metoda, jak informaci nesoucí text co nejlépe skrýt. Mezi nejstarší šifry v pravém slova smyslu patří například tzv. Casearova šifra neboli monoalfabetická substituční šifra, která spočívá v nahrazování znaku jiným znakem podle určitého klíče. K dalším významným patří např. Vigenerova šifra (polyaflabetická šifra) nebo Vernamova šifra (jediná nerozluštitelná šifra, pokud je klíč k této šifře dlouhý jako samotný zašifrovaný text). K rozmachu šifrování došlo však až v 19. století, zejména díky vynálezu telegrafu. Zásadní mezník v dějinách šifrování jistě představovala druhá světová válka, kdy byl Němci použit do té doby nejlepší šifrovací stroj se čtyřmi rotory a názvem Enigma, nebo kdy byl Američany použit dešifrovací stroj Magic, s jehož pomocí se podařilo vyluštit šifrovací kód japonského námořnictva zvaný „purpurový“.

Skutečnou revoluci ovšem představoval vynález počítače, díky kterému může být šifra tvořena až několika tisíci složnými operacemi. Zároveň je počítač stejně výkonnou pomůckou i pro dešifrování. S rozvojem internetu nabyla na důležitosti i otázka přenášení šifrovaných zpráv pomocí počítačové sítě. Obecně se dá říci, že se používají tři metody šifrování počítačové komunikace. Jde o symetrické šifrování, asymetrické šifrování a šifrování hybridní.



Symetrické šifrování



Potíž symetrického šifrování spočívá v tom, že se jak pro šifrování, tak pro dešifrování používá stejný šifrovací klíč. Protože klíč musí být k dispozici oběma stranám, vzniká nepříjemné riziko při transferu klíče. Sice je možné využít pro jeho přenos nějakého zabezpečeného spojení, pak ovšem nastává otázka, zdali v případě takového zabezpečeného spojení je vůbec nutné přenášená data šifrovat. Největší výhodou symetrického šifrování je však jeho malá náročnost na výpočetní výkon, údajně až tisíckrát menší než v případě asymetrického šifrování.

Symetrické šifrování se dělí na proudové a blokové šifry. Proudové šifry šifrují i dešifrují tok dat postupně bit po bitu, blokové šifry oproti tomu rozdělují data na stejně dlouhé části (poslední část se dopočítává) a tyto části pak šifruje pomocí klíče zvlášť.

Nejznámějším algoritmem symetrického šifrování je DES (Data Encryption Standard), resp. DEA (Data Encryption Algorythm), který byl jako šifrovací standard v roce 1976 přijat americkým Národním úřadem pro standardy (NBS – National Bureau of Standards). Podmínkou ovšem bylo omezení délky šifrovacího klíče na 64 bitů (efektivních 56 bitů, každý osmý bit je párový). Takto dlouhý klíč byl téměř nerozluštitelný běžnými uživateli, ovšem superpočítači používanými v National Security Agency (NSA) obtížně, však přeci rozlomitelný. Šifrovací algoritmus spočívá v procesu na sebe navazujících šestnácti iteracích (rundách), při nichž jsou prováděny jak změny pozice jednotlivých bitů (permutace), tak jejich nahrazováním (substitucí) za použití pomocných tabulek. Toto všechno se kombinuje s „podklíčem“ vygenerovaným pro každou iteraci, který se sečte s upravenými bloky bitů logickou operací XOR. Název XOR pochází z anglického „eXclusive OR“. Jde o operaci NEBO, při níž může být pravdivý pouze jeden z operandů. Pokud jsou pravdivé oba, je výsledkem operace XOR nepravda.

V roce 2002 byl standard DES nahrazen standardem AES, ovšem DES se s oblibou používá dodnes, zvláště pro kryptování méně zásadních zpráv.



Asymetrické šifrování



Tento druh šifrování vznikl díky dvěma vědcům jmény Whitfield Diff a Martin Hellman. Ti v roce 1975 přišli s metodou šifrování založeného na privátním a veřejném klíči. Princip spočívá v tom, že veřejný klíč je dostupný všem, s jeho pomocí lze zakódovat jakoukoli zprávu a odeslat příjemci, který vlastní privátní klíč, jímž zašifrovanou zprávu následně dešifruje. Klíče je nutné pochopitelně na začátku komunikace vygenerovat. Nejrozšířenější systémem této metody je RSA.

RSA je akronymem tří tvůrců tohoto systému - Rivest, Shamir, Adelman – pracovníků laboratoře počítačových věd MIT. Algoritmus byl popsán v roce 1977 a v roce 1983 patentován v USA; patent vypršel v roce 2000. Princip RSA je založen na předpokladu, že je neexistuje algoritmus, který by spolehlivě rozložil velké číslo na součin prvočísel, oproti tomu násobení velkých čísel je základní matematická operace. Obecně se předpokládá, že RSA je bezpečný, pakliže je součin prvočísel dostatečně velký. Jestliže je součin 256 bitů dlouhý nebo kratší, může být již za několik hodin na osobním počítači faktorizován (tedy rozložen na prvočísla), jestliže je 512 bitů nebo kratší je údajně možné určit správná prvočísla za pomoci několika stovek počítačů. Uvažuje se o možnosti faktorizovat i 1024 bitů dlouhý klíč. V současné době se proto považuje za bezpečný součin, který je dlouhý alespoň 2048 bitů.

Další hojně využívaným asynchronním šifrovacím algoritmem je DSA (Digital Signature Algorithm) – systém navržený institutem NIST, sloužící jako americký standard pro digitální podpis. Prošel několika úpravami, naposledy v roce 2000 a nyní je označován jako FIPS 186-2.



Hybridní šifrování



Hybridní šifrování se snaží spojit výhody obou předchozích metod šifrování. Eliminuje výpočetní náročnost asymetrického klíče a odstraňuje bezpečnostní riziko přenosu šifrovacího klíče u symetrického šifrování.

Nejpoužívanějším systémem hybridního šifrování je systém Pretty Good Privacy (PGP), se kterým přišel americký programátor Phil Zimmermann. První verze PGP byla zveřejněna v roce 1991. Pomocí PGP může v podstatě každý zakódovat jakoukoli zprávu s tím nejmenším možným rizikem, že bude někým nepovolaným dekódována. Není jistě bez zajímavosti, že Phil Zimmermann byl za uveřejnění tohoto kryptovacího systému vyšetřování pro podezření z nelegálního vývozu zbraní. Podle tehdejších regulačních opatření pro export z USA byly totiž kryptosystémy používající klíč delší než 40 bitů považovány za zbraně; PGP ovšem používal klíče ne menší než 128 bitů. Zimmermann to údajně komentoval „Pokud bude soukromí mimo zákon, pak pouze ti, kteří stojí mimo zákon, budou mít soukromí… PGP pomáhá lidem vzít soukromí do vlastních rukou“. A nezůstalo pouze při tom. Zimmermann totiž vydal celý zdrojový kód PGP knižně a tato monografie byla s úspěchem prodávána po celém světě. Kterýkoli majitel knihy si mohl odtržením obalu, oddělením stran a jejich naskenováním za použití OCR vytvořit textový soubor s kompletním zdrojovým kódem, s jehož pomocí si pak mohl snadno vytvořit vlastní aplikaci. PGP tak byl v podstatě k dispozici po celém světě. Vtip spočívá v tom, že zatímco vývoz zbraní (včetně softwaru) je přísně omezován, volný vývoz knih je zaručen Prvním dodatkem ústavy USA.

Princip fungování PGP záleží v celé posloupnosti kroků. Na začátku procesu je zdrojová zpráva zkomprimována (u PGP se používá PKZIP). Takto zkomprimovaný text je zakódován symetrickým algoritmem, proto je kódování rychlé a nepříliš náročné na výpočetní výkon. PGP využívá tří symetrických blokových algoritmů pracující s bloky o délce 64 bitů. Jde o šifry IDEA (128-bitový klíč), DES a AES (128-bitový klíč). Další fází je zakódování tohoto symetrického klíče veřejným klíčem. Tento proces je sice již pomalejší, ale vzhledem k relativně malé velikosti symetrického klíče, je jeho rychlost mnohem vyšší než u asymetrického šifrování. U PGP probíhá šifrování za pomoci asymetrického systému RSA. Obě části jsou potom spojeny do jednoho souboru a tvoří výslednou zakódovanou zprávu.

Dualita privátního a veřejného klíče se jeví relativně bezpečná. Jedno riziko tu ovšem existuje. Veřejný klíč sice může být nechráněně šířen, jelikož s jeho pomocí lze zprávu pouze zašifrovat, nikoli dešifrovat, to však nikterak nebrání v manipulaci s tímto veřejným klíčem. Myšlena je situace, kdy útočník zamění vybraný veřejný klíč za svůj vlastní. Zpráva určená autorovi původního veřejného klíče je pak zašifrována zaměněným klíčem a odeslána. Útočník, vlastnící pochopitelně příslušný privátní klíč ke svému veřejnému klíči, tuto zprávu dešifruje, přečte a opět zašifruje; tentokrát původním veřejným klíčem. Pak už stačí šifrovanou zprávu odeslat skutečnému adresátovi a jak odesilatel, tak příjemce o tomto útoku nemá nejmenší potuchy. Způsobem, který tuto manipulaci eliminuje, je potvrzování pravosti veřejného klíče pomocí důvěryhodného prostředníka, který pro potvrzení autenticity veřejný klíč podepíše. Phil Zimmermann přišel v roce 1992 s konceptem „web of trust“. Jde o sítě důvěryhodných uživatelů internetu, kteří jsou navzájem schopni potvrdit si identitu. Někdy se takoví uživatelé nazývají „notáři“. Tento decentralizovaný systém má výhodu v osobnějším způsobu komunikace, v možnosti připojit se do sítě důvěryhodných osob i ve volnosti vybrat si, komu chceme důvěřovat. Centrálně řízené firmy mají své „notáře“ designované.

Literatura:
- IVÁNEK, Jiří. Vybrané kapitoly z kódování informací [online]. ÚISK FF UK : Praha, říjen 2007 [cit. 2009-01-05]. Dostupný z WWW:
- Mendelova zemědělská a lesnická univerzita v Brně. Komprimace a šifrování [online]. [cit. 2009-01-06]. Dostupný z WWW:
- MOUČKA, Bohuslav. Pretty Good Privacy (1). Zpravodaj ÚVT MU [online] : 1995, roč V, č. 4, s. 10-12. ISSN 1212-0901. Dostupný z WWW:
- MOUČKA, Bohuslav. Pretty Good Privacy (2). Zpravodaj ÚVT MU [online] : 1995, roč V, č. 4, s. 14-15. ISSN 1212-0901. Dostupný z WWW:
- Wikipedia. Pretty Good Privacy [online]. Last mod. 2009-01-05 20:01 [cit. 2009-01-07]. Dostupný z WWW:
- Wikipedia. RSA [online]. Last. mod. 2008-12-17 22:28 [cit. 2009-01-07]. Dostupný z WWW:
- BAAR, Ondřej. Šifrování, Hybridní šifrování. In Owebu.cz [online]. 2007-11-01 [cit. 2009-01-03]. Dostupný z WWW:
- Wikipedia. Web of trust [online]. Last. mod. 2009-01-07 10:13 [cit. 2009-01-08]. Dostupný z WWW: