SHA-1
<s>SHA (Secure Hash Algorithm) je klasa kriptografskih funkcija za sažimanje.</s><s>U ovoj familiji kriptografskih funkcija najčešće korišćena funkcija je SHA-1, koja je našla primenu u velikom broju kriptografskih protokla kao što su TLS, SSL, PGP, SSH, S/MIME i IPSec.</s><s>SHA-1 se može smatrati naslednikom čuvenog MD5 algoritma.</s><s>SHA algoritmi su kreirani od američke agencije za sigurnost (NSA) i publikovan kao zvaničan standard vlade SAD.</s>

<s>Prvi član ove familije, publikovan je 1993., i zvanično nazvan SHA, ali se on često u literaturi naziva SHA-0, da bi se sprečila zabuna sa njegovim kasnijim naslednicima.</s><s>Dve godine kasnije nastaje SHA-1, prvi naslednik SHA.</s><s>Još četiri varijante ovog algoritma su publikovane i to SHA-224, SHA-256, SHA-384 i SHA-512 i oni se jednim imenom nazivaju SHA-2, a razlikuje ih samo dužina sažetka koji proizilazi iz njih.</s>

<s>SHA-0 i SHA-1 algoritmi se danas ne mogu smatrati bezbednim, jer postoje kriptografski napadi koji su sposobni da pronađu koliziju za relativno kratko vreme.</s><s>Za sada nigde nije objavljeno da je izvršen uspešan kriptografski napad na neki od algoritam iz klase SHA-2, ali zbog sličnosti sa prethodnim generacijama, uskoro će i oni biti uspešno napadnuti.</s>

<s>SHA-0 i SHA-1 
Originalne specifikacije algoritma su publikovane 1993. pod nazivom Hash Standard, FIPS PUB 180, od strane američke vladine agencije Nacionalnog instituta za standarde i tehnologiju (NIST), i ovaj algoritam je poznat kao SHA-0.</s><s>Vrlo brzo posle publikacije SHA-0, NSA ga je povukla zbog pronađenih sigurnosnih propusta i umesto njega je u primenu ušao njegov unapređeni naslednik SHA-1, 1995. godine.</s><s>NSA nikada nije objavila o kakvim se propustima radi i koji su ispravljeni u narednoj verziji.</s><s>Na oba ova algoritma uočeno je više nedostataka, mada SHA-1 pruža daleko veću sigurnost.</s>

<s>SHA-0 i SHA-1 prvae sažetke dužine 160 bita, pri čemu maksimalna dužina teksta može biti 264, i u svojoj osnovi ovi algoritmi su bazirani na idejama profesora Ronalda Rivesta i njegovih MD4 i MD5 algoritama.</s>

<s>Duže varijante 
Varijante sa dužim sažetkom nastatle su nešto kasnije i poznate su pod imenom SHA-2.</s><s>U ovu grupu spadaju algoritmi SHA-224, SHA-256, SHA-384 i SHA-512 i oznake brojeva predstavljaju dužinu sažetka.</s><s>Algoritmi SHA-256, SHA-384 i SHA-512 objavljeni su 2002. dok je varijanta SHA-224 objavljena 2004. godine.</s><s>Ove duže varijante su znatno sigurnije u odnosu na SHA-0 i SHA-1, prvenstveno zbog dužine sažetka i određenih promena u algoritmu.</s><s>Ove nove verzije koriste druge vrednosti pomeraja kao i dodatne konstante, ali u suštini nema značajnih promena u odnosu na prethodnike.</s><s>I pored veće sigurnosti oni se i danas manje koriste u odnosu na SHA-1, koji predstavlja industrijski standard u kriptografiji.</s>

<s>Upoređenje</s>

<s>SHA-1 sažeci 
Primer primene SHA-1 algoritma.</s><s>Rečenicu u ASCII formatu „The quick brown fox jumps over the lazy dog“ pustićemo kroz MD5 algoritam i dobićemo 160-bitni izlaz u heksadecimalnom obliku</s>

<s>SHA1("The quick brown fox jumps over the lazy dog") = 2fd4e1c67a2d28fced849ee1bb76e7391b93eb12</s>

<s>Čak i najmanja promena samo jednog slova u rečenici imaće kao rezultat promenu celokupnog heksadecimalnog izlaza.</s><s>Na primer promenićemo d u c:</s>

<s>SHA1("The quick brown fox jumps over the lazy cog") = de9f2c7fd25e1b3afad3e85a0bd17d9b100db4b3</s>

<s>Izlaz SHA-1 funkcije u slučaju prazne niske biće:</s>

<s>SHA1("") = da39a3ee5e6b4b0d3255bfef95601890afd80709</s>

<s>Upoređenje MD5, SHA-1 i RIPEMD-160 algoritma 
Upoređenja SHA-1 algoritma sa MD5 algoritmom pokazuju da je SHA-1 algoritam sigurniji od MD5 algoritma.</s>

<s>Kriptografija
Kontrolni algoritmi</s>

