Hashing (hašovací funkce)

Hashing (hašovací funkce) je kryptografická technika, která transformuje data libovolné velikosti do výstupu s pevnou velikostí a často se používá pro zajištění integrity dat, digitálních podpisů nebo pro ukládání hesel.

 


 

Co je to hashing?

Hashing je kryptografická metoda, která převádí vstupní data (libovolné velikosti) na jedinečný řetězec pevné délky – tzv. hash. Tento výstup slouží jako digitální otisk dat. Hashování se široce využívá v IT bezpečnosti, například pro ověřování integrity dat, ochranu hesel nebo při podepisování dokumentů.

 

Kde se hashing používá v praxi

Příklady využití hashování:

  • Ověření integrity souborů – při stahování softwaru může být uveden hash, aby si uživatel ověřil, že soubor nebyl poškozen nebo pozměněn.
  • Ukládání hesel – hesla se v databázích neukládají v čitelné podobě, ale jako hashe, které nelze zpětně rozšifrovat.
  • Digitální podpisy – hash dokumentu se šifruje soukromým klíčem, čímž vznikne podpis potvrzující autenticitu.
  • Řízení přístupu – hashované tokeny nebo cookies pro ověřování uživatelů.
  • Detekce změn v systému – antivirové nástroje sledují, zda se hash souboru nezměnil, což může znamenat zásah malwaru.

 

Hashování je tedy nenápadný, ale klíčový bezpečnostní prvek, který pomáhá zajistit, že s daty nebylo neoprávněně manipulováno.

 

Jaký je rozdíl mezi hashingem a souvisejícími termíny?

  • Hashing vs. šifrování – hashing je jednosměrný (nelze dešifrovat zpět), šifrování je obousměrné.
  • Hashing vs. kontrolní součet (checksum) – checksum je jednoduchý a náchylný k manipulaci, hashing je silnější a kryptograficky bezpečnější.
  • Hashing vs. salting – salting znamená přidání náhodných dat před hashování, aby byl výsledek bezpečnější.

 

Znalost těchto rozdílů je klíčová například při nastavování bezpečného ukládání hesel nebo implementaci ověřovacích mechanismů. Hash samotný nestačí – pokud je předvídatelný, útočník jej může obejít. Proto se běžně kombinuje se saltingem nebo jinými technikami.

 

Jak správně používat hashování ve firmě

Kroky pro zavedení nebo kontrolu:

  1. Zkontrolujte, zda jsou hesla v systémech ukládána jako hashe, ne v čitelné podobě.
  2. Používejte moderní hashovací algoritmy (např. SHA-256, bcrypt, Argon2).
  3. Přidejte salting pro vyšší bezpečnost u hesel.
  4. Implementujte kontrolu integrity souborů pomocí hashů.
  5. Zajistěte, aby zaměstnanci neukládali hashe nevhodně nebo nezabezpečeně.

 

Hashing je často vnímán jako technický detail. Ve skutečnosti je to základní stavební kámen kybernetické bezpečnosti. Při špatné implementaci (např. použití zastaralého MD5) může vést ke snadnému prolomení hesel nebo podvržení dat – bez toho, aby si toho někdo všiml.