Hashovací funkce
Z MiS
(Rozdíly mezi verzemi)
m (Rozdíl od šifrování) |
m (Přidán zdroj.) |
||
Řádka 9: | Řádka 9: | ||
Výstup nazýváme „otisk“ (fingerprint). | Výstup nazýváme „otisk“ (fingerprint). | ||
<div class="Poznamka">Různé vstupní texty tedy mohou generovat stejný výstup.</div> | <div class="Poznamka">Různé vstupní texty tedy mohou generovat stejný výstup.</div> | ||
+ | |||
== Požadavky == | == Požadavky == | ||
Aby hashovací funkce plnila svou funkcí, musí být výpočetně složité: | Aby hashovací funkce plnila svou funkcí, musí být výpočetně složité: | ||
− | * získat z otisku vstupní text | + | * získat z otisku vstupní text |
− | * vyrobit (libovolný) text se zadaným | + | * vyrobit (libovolný) text se zadaným otiskem |
* vyrobit dva texty se stejným otiskem | * vyrobit dva texty se stejným otiskem | ||
Dále: | Dále: | ||
Řádka 19: | Řádka 20: | ||
* podobné vstupy generují velmi odlišné otisky (podobnost vstupů se neprojeví v podobnosti 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. | ||
+ | |||
+ | <div class="Poznamka"> | ||
+ | Při použití hashovacích funkcí neříkejte, že zprávu ''zašifrujeme''!!! | ||
+ | |||
+ | Viz také: [[K%C3%B3dov%C3%A1n%C3%AD-%C5%A1ifrov%C3%A1n%C3%AD-hashov%C3%A1n%C3%AD]] | ||
+ | </div> | ||
== Příklady == | == Příklady == | ||
Řádka 31: | Řádka 47: | ||
<div class="Priklad">Zkuste si spočítat hashovací funkci SHA 256 pro své jméno a příjmení, nebo pro jiný text: | <div class="Priklad">Zkuste si spočítat hashovací funkci SHA 256 pro své jméno a příjmení, nebo pro jiný text: | ||
− | [http://www.xorbin.com/tools/sha256-hash-calculator XorBin.com → | + | [http://www.xorbin.com/tools/sha256-hash-calculator XorBin.com → SHA256 Hash Calculator] |
</div> | </div> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Řádka 49: | Řádka 56: | ||
* Podporuje mnoho hashovacích funkcí. | * Podporuje mnoho hashovacích funkcí. | ||
− | |||
− | |||
− | + | ||
− | + | == Zdroje == | |
+ | * [https://security.blogoverflow.com/2013/09/about-secure-password-hashing/ Security.BlogOverflow.com → About secure password hashing] |
Verze z 28. 5. 2019, 10:53
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í.