Spat na hlavnu stranku



 
Page MapMapa Stránok

 
Princípy kryptografie - Hashovacie funkcie

Neoddeliteľnou súčasťou tvorby digitálneho podpisu sú hashovacie funkcie, ktoré ľubovoľne dlhý reťazec znakov transformujú na reťazec pevnej dĺžky, nazývaný tiež odtlačok prsta - fingerprint. Hashovacie funkcie pôvodne boli vyvinuté na ukladanie a vyhľadávanie údajov veľkých databánk a na základe dosiahnutých výsledkov ich s obľubou využíva aj kryptografia. Na hashovacie funkcie sú kladené nasledujúce požiadavky:

  • Prakticky nie je možné k danému výstupu zostrojiť dokument t.j. matematicky vyjadrené neexistuje inverzná funkcia k hashovacej funkcie.
  • Prakticky neexistujú dva dokumenty, ktoré majú rovnakú hashovaciu hodnotu t.j. matematicky vyjadrené funkcia je takmer.
  • Ak zmením jeden bit v dokumente, hashovacia hodnota sa musí zmeniť viac ako v jednom bite oproti pôvodnému dokumentu.

Týmto podmienkam vyhovuje najčastejšie používaná hashovacia funkcia SHA (Standard Hash Algoritmus). Jej vstupom je reťazec dĺžky maximálne 2^64 bitov a výstupom 160 bitový string (hash hodnota = message digest). Často sa používa na výpočet hash hodnoty metóda MD4 a jej modifikácia MD5, ako 32 bitový CRC algoritmus doporučený s CCITT. Kryptovaním hodnoty fingerprintu s privátnym kľúčom vzniká reťazec, ktorý sa nazýva elektronický podpis. V porovnaní s ručným podpisom, ktorý nám zaručuje len autentitu podpísanej osoby, elektronický podpis nás ubezpečí aj o integrite, neporušenosti dokumentu. Viac sa o tom môžete dočítať v časti "Bezpečná komunikácia".