Preskočiť na obsah

Secure Hash Algorithm

z Wikipédie, slobodnej encyklopédie
Verzia z 11:28, 15. október 2009, ktorú vytvoril Wizzard (diskusia | príspevky)

SHA (Secure Hash Alogithm) je skupina hašovacích funkcií. Funkcie vyvinula americká Národná bezpečnostná agentúra (NSA) ako nástupcu funkcie MD5, ktorá už nie je považovaná za bezpečnú (existencia metódy hľadania slabých kolízii v rádoch minút).

SHA-1

Ako štandard bola publikovaná v roku 1993 americkým Národným inštitútom pre štandardy a technológie (NIST). Nahradzuje predošlú, prelomenú SHA-0.

Funkcia rozsekáva vstupný tok dát na bloky o veľkosti 512 bitov. Posledný blok použitím tzv. paddingu doplňuje a zarovnáva na požadovanú veľkosť bloku. Tieto bloky sú postupne logicky sčítané. Na začiatku s náhodným inicializačným vektorom a každý následujúci blok vstupu vždy s predošlým výsledkom. Do požadovaného zarovnania sa pridáva údaj o veľkosti vstupu, na ktorý je vyhradených 64 bitov. Z toho plynie horná ohraničenosť maximálnej veľkosti vstupu na 264-1 bitov, čo je cca 2,3 miliónu TiB.

Výstupom SHA-1 je 160bitový reťazec, haš.

Použitím informácie o veľkosti vstupu v procese výpočtu funkcie sa zvyšuje odolnosť funkcie voči slabým kolíziám. Za ďalšie zabezpečenie funkcie sa považuje tzv. lavínovitosť tvorby hašu - používanie predošlého výsledku a teda šírenie zmeny v jednom bloku vstupu až do výstupu. Toto kritérium spôsobí veľkú zmenu výsledného hašu už pri zmene jediného znaku vstupného toku, pozri príklad (textový reťazec : jeho haš).

Prehlasujem, že ti dlžím 100 : 68741d0244e8ce0989af154977ce037c7c75a32e
Prehlasujem, že ti dlžím 500 : 2eb70991cded1bd3b3f234675f8ad8b927cc3272

Použitie

Ako každá hašovacia funkcia aj SHA-1 zabezpečuje hlavne kontrolu integrity dát, teda či nedošlo k ich pozmeneniu. Z toho plynie použitie napr. v digitálnych certifikátoch a následne aj elektronickom podpise, či v systéme PGP. Ide o funkciu, ktorá je presadzovaná v novo vznikajúcich amerických štandardoch v kryptografii a elektronickom podpisovaní.

Externé odkazy

  • Lupa.cz - článok o hašovacích funkciách a ich prielomoch
  • HashCalc - freeware nástroj na výpočet viacerých hašovacích funkcií