Hash funkcia berie akýkoľvek vstup (text, súbor, údaje) a produkuje reťazec znakov pevnej dĺžky nazývaný hash alebo digest. Ten istý vstup vždy produkuje ten istý hash, ale aj malá zmena vo vstupe produkuje úplne iný hash. Táto vlastnosť robí hashe nevyhnutnými pre overenie integrity údajov, ukladanie hesiel a digitálne podpisy.
Bežné hash algoritmy
MD5 produkuje 128-bitový (32-znakový) hash. Hoci je rýchly, už sa nepovažuje za bezpečný na kryptografické účely, ale stále sa široko používa na kontrolné súčty a aplikácie, ktoré nie sú bezpečnostné. SHA-1 produkuje 160-bitový (40-znakový) hash a je tiež zastaraný na bezpečnostné použitie. SHA-256 a SHA-512 (časť rodiny SHA-2) sú aktuálnym štandardom pre bezpečné hashovanie, produkujú 256-bitové (64-znakové) a 512-bitové (128-znakové) hashe.
Praktické využitie hashovacích funkcií
Vývojári používajú hashe na overovanie integrity súborov (porovnávanie kontrolných súčtov), bezpečné ukladanie hesiel (hashované, nie v plain texte), generovanie jedinečných identifikátorov, digitálnych podpisov a deduplikáciu dát. Ak si stiahnete súbor a chcete overiť, že nebol manipulovaný, porovnajte hash vášho stiahnutého súboru s oficiálnym hashom poskytnutým vydavateľom.