Secure Hash Algorithm: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Hash di esempio: Esempio in italiano ed aggiunta del digest corrispondente alla stringa nulla
Nessun oggetto della modifica
Riga 1:
Con il termine '''SHA''' si indica una famiglia di cinque diverse funzioni [[crittografia|crittografiche]] di [[hash]] sviluppate a partire dal [[1993]] dalla [[National Security Agency]] (NSA) e pubblicate dal [[National Institute of Standards and Technology|NIST]] come [[Federal Information Processing Standard|standard federale]] dal governo degli [[Stati Uniti d'America|USA]]. La sigla SHA sta per '''Secure Hash Algorithm'''.
 
Come ogni algoritmo di hash, l'SHA produce un ''message digest'', o "impronta del [[messaggio]]", di lunghezza fissa partendo da un messaggio di lunghezza variabile. La sicurezza di un algoritmo di hash risiede nel fatto che la funzione non sia reversibile (non sia cioè possibile risalire al messaggio originale conoscendo solo questo dato) e che 2non messaggideve diversiessere nonmai devonopossibile maiche forniresi riescano a creare intenzionalmente due messaggi diversi con lo stesso ''digest'', . Gli algoritmi della famiglia sono denominati '''SHA-1''', '''SHA-224''', '''SHA-256''', '''SHA-384''' e '''SHA-512''': le ultime 4 varianti sono spesso indicate genericamente come '''SHA-2''', per distinguerle dal primo. Quest'ultimo produce un ''digest'' del messaggio di soli 160 [[bit]], mentre gli altri producono ''digest'' di lunghezza in bit pari al numero indicato nella loro sigla (SHA-256 produce un ''digest'' di 256 bit). L'SHA-1 è il più diffuso algoritmo della famiglia SHA ed è utilizzato in numerose applicazioni e protocolli.
 
La sicurezza di SHA-1 è stata in parte compromessa dai [[crittoanalisi|crittoanalisti]]. <ref>[http://www.schneier.com/blog/archives/2005/02/cryptanalysis_o.html Crittoanalisi dell'SHA-1 (Schneier)]</ref> Sebbene non siano ancora noti attacchi alle varianti SHA-2, esse hanno un algoritmo simile a quello di SHA-1 per cui sono in atto sforzi per sviluppare algoritmi di hashing alternativi e migliorati.<ref>http://www.schneier.com/blog/archives/2005/11/nist_hash_works_4.html</ref><ref>http://www.heise-security.co.uk/articles/75686/2</ref>