úvod
šifrovanie
Prenos dát
Typy
algoritmov
Výhody, nevýhody
algoritmus
DES
prezentácia
príručka
 
 
 
 
 
Šifrovanie
 

Pri dnešnom tempe nárastu objemu prenášaných dát v informačných technológiách je vysokým kritériom pri komunikácii bezpečnosť prenášaných dát. V minulosti nebol objem prenášaných dát cez verejné siete taký obrovský ako je v dnešnej dobe, kedy vysoké percento komunikácie zabezpečuje Internet. Dáta prenášané takýmito verejnými linkami, ktoré nie je ťažké odpočúvať, môžu byť jednoducho odchytené, či pri prenose pozmenené. Prenášané informácie môžu byť pre komunikujúcich dôverné, alebo pre verejnosť prísne tajné.

Prenos dát

Jedným zo spôsobov ako zamedziť tretej osobe dostať sa k dátam je použiť také komunikačné cesty, ktoré nie je možné odpočúvať. Takýchto ciest je však málo a ich nevýhodou je aj vysoká cena a tým aj nedostupnosť pre bežných používateľov. Druhým a oveľa prijateľnejším spôsobom je prenášané informácie zašifrovať (kryptovať). V prípade, že sa k zašifrovaným dátam dostane nežiadúca osoba, je veľmi malá pravdepodobnosť, že dokáže tieto dáta odšifrovať. Pri šifrovaní sa informácia nestráca, častým prípadom je naopak zväčšenie veľkosti správy oproti nezašifrovanej. Najčastejším prípadom šifrovania je také, pri ktorom sa používa aj vlastný šifrovací kľúč. Je to zväčša postupnosť znakov, podľa ktorej sa šifrovací algoritmus pri šifrovaní vetví, či určuje samotné šifrovanie. Aby bola komunikácia prostredníctvom zašifrovaných správ možná, je potrebné, aby oba komunikujúce uzly mali rovnaký šifrovací kľúč. Na ňom sa pri inicializácii komunikácie obe strany dohodnú.


Ako už bolo spomenuté vyššie, kryptografia sa používa na dosiahnutie dôvernosti (utajenie) informácie (ochrana proti neautorizovanému sprístupneniu dôvernej informácie), pre zaručenie integrity informácie (ochrana proti neautorizovanej zmene dát, resp. ochrana proti nasadeniu vírusov do programov), pri autentifikácii (preukázanie totožnosti subjektu), pri riadenom prístpe k objektom a pri zaručenom preukazovaní pôvodu správy (nepopieratelnosť). Kryptografický mechanizmus je tvorený dvoma samostatnými (komplementárnými) algoritmami, algoritmom šifrovania a algoritmom dešifrovania, viď obr.1.
   Kryptografický mechanizmus je ale tvorený nielen kryptografickým algoritmom, ale aj kryptografickým kľúčom, ktorý je jedným z dvoch vstupných parametrov algoritmu šifrovania a dešifrovania. Pokiaľ komunikujúci partneri používajú rovnaký kryptografický kľúč, K = K', hovoríme o modeli symetrickej kryptografie alebo tiež o kryptografii s tajným kľúčom. Tajnému kľúču hovoríme aj zdieľaný kľúč. Znalosť tajného kľúča naviac môže slúžiť aj ako dôkaz identity. Okrem toho je možné symetrickú kryptografiu mimo služby zaistenia dôvernosti použiť aj pre autentifikáciu. Pokiaľ sa kryptografické kľúče komunikujúcich partnerov vzájomne líšia, ide o model asymetrickej kryptografie. Typickým príkladom aplikácie asymetrickej kryptografie je kryptografia s verejným kľúčom, presnejšie s dvojicou kľúčov {verejný kľúč, súkromný kľúč}. Pri nej môže ľubovoľný subjekt použitím všeobecne známeho verejného šifrovacieho kľúča KV zašifrovať zrozumiteľný (otvorený) text správy, ale šifru môže previesť spät do zrozumiteľného textu jedine ten, kto vlastní (pozná) súkromný dešifrovací kľúč KS.



Obr.1  Kryptografický systém

Jedinečnosť znalosti súkromného kľúča umožňuje použiť asymetrický model pre implementáciu nielen dôvernosti a autentifikácie, ale pri splnení istých organizačných požiadaviek aj pre implementáciu nepopierateľnosti aplikácie digitálneho podpisu. Princíp asymetrickej kryptografie je pomerne nová myšlienka, ktorá vznikla v polovici 70. rokov. V tejto dobe matematici zvládli potrebný matematický základ a teóriu zložitosti, tj. umenie pracovať s preukázateľne výpočtovo náročnými problémami.
   Šifrátor, ktorý po sebe idúce časti (postupnosť bitov, resp. blokov) zrozumiteľného (otvoreného) textu, správy M, šifruje rovnakým kľúčom K, nazývame blokový šifrátor. Šifrátor, ktorý generuje "prúd" kľúčov K1, K2 ..., ktorými sú šifrované po sebe idúce prvky zrozumiteľného textu (resp. otvoreného textu alebo správy M), nazývame prúdový šifrátor. Najznámejším predstaviteľom blokového šifrátora je algoritmus DES.


Hlavnými výhodami šifrovania sú hlavne relatívna rýchlosť, cenová dostupnosť, jednoduchosť z hľadiska použitia a to, že je možné šifrovanie kedykoľvek povoliť a zakázať. Môže byť vykonávané ako programovo tak aj hardvérovo a stupeň zašifrovania, pod ktorým sa myslí ako zložito boli dáta prekódované, je možné meniť. Softvérové šífrovanie má svoje nevýhody, ktorými sú nižšia rýchlosť a možnosť odhalenia šifrovacieho algoritmu krokovaním programu. Na druhej strane je však veľmi lacné. Hadvérové šifrovanie so sebou prináša rýchlosť a znemožňuje odhalenie algoritmu, keďže tento je priamo implementovaný do čipu a reprezentovaný jeho vnútorným zapojením. Nevýhodou je však vysoká cena takýchto šifrátorov. So šifrovaním je možné použiť aj kompresiu, ktorá napomáha k menšiemu zaťaženiu prenosového kanála.

Predstavovaný algoritmus DES je pomerne rýchly a jednoducho implementovateuný. Jeho jednoduchosť však so sebou prináša istú nevýhodu. Zo 64-bitového vstupného kuúča algoritmus využíva len 56 bitov, čo je v súčasnej dobe oproti algoritmom s 128 a viac bitovými kuúčmi veumi málo. Neuchováva si predchádzajúce stavy šifrovania, čo znamená že ak šifrujeme to isté slovo tým istým kuúčom viac krát, dostaneme vždy rovnaký zašifrovaný text. Kvôli tomuto nedostatku sa častejšie využíva jeho modifikácia 3DES (TripleDES), ktorá predstavuje tri šifrátory DES zapojené za sebou.

Algoritmus DES bol štandardizovaný inštitúciou ANSI. Označuje sa tiež ako šifrovací algoritmus DEA (Data Encryption Algorithm). Od 80. rokov je platným štandardom v celom svete na základe definície medzinárodnou organizáciou ISO (International Standardization Organization) ako DEA-1. Do slovenčiny preložený štandard DES môžete nájsť tu.