Hashovací funkce
Z MiS
Obsah |
Hashovací funkce
Je to matematické funkce s následujícími vlastnostmi:
- vstup: libovolný text
- výstup: číslo pevné délky (daný počet bitů)
- splňuje požadavky viz dále.
Výstup nazýváme „otisk“ (fingerprint).
Různé vstupní texty tedy mohou generovat stejný výstup.
Požadavky
Aby hashovací funkce plnila svou funkcí, musí být výpočetně složité:
- získat z otisku vstupní text
- vyrobit (libovolný) text se zadaným otiskem
- vyrobit dva texty se stejným otiskem
Dále:
- stejný vstup generuje stejný otisk
- podobné vstupy generují velmi odlišné otisky (podobnost vstupů se neprojeví v podobnosti otisků)
Použití
- ukládání hesel
- elektronický (digitální) podpis
- ověření správnosti staženého dokumentu
- na stránkách je dokument a jeho otisk
- stáhneme dokument
- vygenerujeme otisk
- porovnáme se správným otiskem.
Při použití hashovacích funkcí neříkejte, že zprávu zašifrujeme!!!
Viz také: Kódování-šifrování-hashování
Příklady
- SHA
- Verze SHA-1, SHA-2 (délky klíčů 224, 256 a 512 bitů).
- V nových aplikacích se nedoporučuje používat SHA-1 (2012: V tuto chvíli považována ještě za bezpečnou, ale délka klíče 160 bitů nejspíš do budoucna bezpečná nebude.)
- MD5
- dnes už není považována za bezpečnou
- 128bitový otisk
- Tiger
- Stejní autoři jako šifrovací metoda Serpent
Zkuste si spočítat hashovací funkci SHA 256 pro své jméno a příjmení, nebo pro jiný text:
Nástroje
- HashCalc
- Generování otisku souboru nebo zadaného textu.
- Podporuje mnoho hashovacích funkcí.