Kryptológia

Terminológia

Až do novoveku kryptológia označovala takmer výlučne šifrovanie, proces zmeny otvoreného obsahu textu do nezrozumiteľnej podoby (zašifrového textu). Dešifrovanie je opačný proces k šifrovaniu, je to zmena zašifrovaného textu na otvorený text. Šifra je dvojica algoritmov (predpisov na spracovanie), ktorými sa vykonáva šifrovanie a dešifrovanie. Šifrovanie je riadené algoritmom a kľúčom. Kľúč je tajný parameter (v zásade je známy iba príjemcovi a odosielateľovi). Kľúče sú dôležité a šifry bez variabilných kľúčov sú ľahko prelomiteľné a preto menej používané. V minulosti sa vykonávalo šifrovanie a dešifrovanie šifry rovnakým predpisom a bez dodatočných overovacích procesov ako autentifikácia alebo integrácia (ochrana pred neoprávnenou modifikáciou).
V hovorovej reči sa termín kód často používa ako metóda šifrovania alebo zatajenia správy. V kryptografii má však kód špecifický význam; Kódovanie znamená zámenu jednotky otvoreného textu (napr. významového slova alebo frázy) s kódovacou jednotkou (napríklad slovo otvoreného textu prst sa zamieňa za slovo poď dole). Medzi najznámejšie príklady kódu sa zaraďuje ASCII a Morseova abeceda. Ak by sa napríklad odosielateľ dohodol s príjemcom na zmene poradia o jeden symbol v Morseovej abecede, v tom prípade by už išlo o šifru a kľúčom by bolo samotné posunutie. Cieľom kódu nie je obsah textu zatajiť, ale modifikovať tak, aby ho bolo možné spracovávať príslušným technickým zariadením.
Kryptografia je oblasť kryptológie, ktorej cieľom je skúmanie a navrhovanie šifrovacích systémov, ktoré budú spĺňať určité podmienky ako autenticitu, dôvernosť, dostupnosť, integritu a pôvod dát. Ich úlohou je teda urobiť určitý obsah správy nečitateľným v prípade jeho zachytenia treťou osobou. Kryptografiou sa zaoberajú kryptografi.
Kryptoanalýza je oblasť kryptológie, ktorej cieľom je skúmanie metód lúštenia šifrovacích systémov, čiže je to rozbor (analýza) zašifrovaných správ a ich metód šifrovania, ktorými sa hľadá spôsob preniknutia do šifrovacieho systému.
Steganografia je oblasť kryptológie, ktorej cieľom je zatajiť existenciu správy. Steganografické metódy obsahujú napríklad používanie neviditeľných atramentov a pod.

História kryptografie a kryptoanalýzy

V minulosti kryptológia slúžila výhradne k zatajeniu obsahu správ – zmenu obsahu textu správy z otvoreného textu do zašifrovaného textu a opačne v prípade zachytenia správy nepovolanou osobou alebo špiónom. V posledných desaťročiach, sa oblasť kryptológie rozšírila okrem cieľa utajenia obsahu správy k technikám pre zachovanie integrity správ, autentifikácie, digitálnych podpisov, dôvernosti, dostupnosti a mnohých ďalších.
Najskoršie formy zatajovania obsahov správ vyžadovali trocha viac ako špeciálne pero a model papiera, keď pre väčšinu ľudí boli nečitateľné. Väčšia gramotnosť alebo gramotnosť protivníkov vyžadovala účinnú kryptografiu. Hlavné klasické typy šifier sú transpozičné šifry ktoré spočívajú v zamiešaní poradia písmen otvoreného textu (napr. slovo "pomôž mi" sa zmodifikovalo na "opômž im") a substitučné šifry, ktoré spočívajú v systematickom nahradzovaní jednotlivých symbolov obsahu textu za určené ďalšie symboly alebo skupinu symbolov (napr. substitučná šifra slova "wikipedia" mohla vyzerať ako "xjljrfejb" pričom v tomto spôsobe sa symboly šifrovanej abecedy posunuli o jeden symbol oproti abecede otvoreného textu). Jednoduché verzie oboch šifier však poskytovali v prípade zachytenia správy nepovolanou osobou len malú ochranu a boli ľahko dešifrovateľné. Medzi najstaršie substitučné šifry patrila Cézarova šifra, ktorá spočívala v tom, že každé písmeno n otvoreného textu bolo nahradené písmenom určitej hodnoty n+k. Táto šifra je pomenovaná po Caesarovi, ktorý ju používal s posunutím k o 3 miesta v abecede pri komunikácií s jeho generálmi počas vojenských operácií, a táto šifra je podobná kódu EXCESS-3 v booleanskej algebre.
Kryptografia nepatrí medzi mladé disciplíny, práve naopak. Potreba šifrovať siaha hlboko do minulosti, až do čias faraónov. Prvá zmienka o šifrovaní pochádza z Egypta približne 4000 rokov dozadu.
Medzi ďalšie staršie kryptografické systémy patrí skytála. Skytála bola dômyselný a pritom jednoduchý kryptografický nástroj. Princíp spočíval v použití drevenej paličky istého priemeru, okolo ktorého sa navinul pásik papiera, na ktorý sa napísala krátka správa. Keď sa papier rozvinul, na voľné miesta sa doplnili písmená nesúvisiace so správou. Osoba, ktorej bola takto zašifrovaná správa určená, musela mať paličku rovnakého priemeru, inak bola správa nečitateľná. Tento nástroj sa používal hlavne v Sparte v 5. stor. pred Kr.
Ďalší významný rozvoj v kryptografii nastal začiatkom 20. storočia, keď došlo k vynájdeniu a zavedeniu telegrafu. V roku 1917 bol vynájdený prvý bezpečný kryptosystém Vernam, ktorý bol postavený na prúdovej šifre. Obdobie do konca 50-tych rokov je charakteristické hlavne používaním zložitých mechanických a elektromechanických šifrovacích strojov. Veľký pokrok v kryptografii nastal hlavne počas I. a II. svetovej vojny, keď sa šifrovanie stalo veľmi dôležitou disciplínou. Medzi najvýznamnejšie šifrovacie prístroje tej doby patrila Enigma, ktorá bola používaná Nemcami počas druhej svetovej vojny a dlhý čas predstavovala skutočne „tvrdý oriešok“. Nemci verili, že táto šifra je bez kľúča neprelomiteľná. Šifru však prelomili poľskí matematici Marian Rejewski, Henrik Zygalski a britský matematik Alan Turing. Kód bol prelomený predovšetkým vďaka práci poľských matematikov Mariana Rejewskiho a Henrika Zygalskiho. V roku 1932 Rejewski rozkódoval jeden z jednoduchších typov Enigmy. Bez jeho práce, by aj Alanovi Turingovi, trvalo rozkodovanie enigmy „priveľmi“ dlho a stalo by to mnoho spojeneckých životov. Novší typ Enigmy (tzv. ponorková Enigma) bola rozkódovaná aj vďaka šťastnej náhode, keď bola zajatá nemecká ponorka, ktorá mala na svojej palube jeden prístroj Enigma. Skôr, ako ju Nemci stihli zničiť sa dostala do rúk Angličanom a tí konečne rozlúštili „záhadu neprelomiteľného kódu“ šifrovacieho stroja Enigma.

Transpozičné šifrovacie systémy

Pri transpozičných šifrách sa znaky otvoreného textu nemenia, mení sa iba ich usporiadanie. Pri jednoduchej stĺpcovej transpozičnej šifre sa otvorený text zapisuje horizontálne na štvorčekovaný papier a zašifrovaný text sa získava jeho vertikálnym čítaním. Pri dešifrovaní sa šifrovaný text zapíše vertikálne opäť na štvorčekovaný list papiera rovnakej šírky a číta sa horizontálne.
Otvorený text: jednoduchastlpcovatranspozicnasifra; Šifrovaný text: jloepzdcinocovndaautscrihafanrssatp
Pretože znaky šifrovaného aj otvoreného textu sú rovnaké, bude sa frekvenčný výskyt jednotlivých znakov šifrovaného textu približne rovnať frekvenčnému výskytu znakov v príslušnom národnom jazyku. Navyše je tento systém náročný na pamäť a niekedy aj obmedzuje dĺžku správ. Sem patria napríklad: Cardanova mriežka, Richelieuova šifra.

Asymetrické šifrovacie systémy

Využívajú dva kľúče – verejný na šifrovanie, ktorý môže byť šírený verejne, a súkromný, ktorý slúži na dešifrovanie a je tajný. Zrejme najznámejším a najpoužívanejším z asymetrických šifrovacích systémov je RSA.