Skip to main content

Cos'è un algoritmo hash sicuro?

Un algoritmo di hash sicuro, noto anche con l'acronimo SHA, è un algoritmo di hashing che è considerato crittograficamente sicuro.I dati originali, una volta hash da un algoritmo di hash sicuro, in genere non possono essere ricostruiti con una quantità fattibile di potenza di calcolo.Gli algoritmi di hash sicuri vengono spesso utilizzati in combinazione con altri algoritmi per autenticare i messaggi, comprese le firme digitali.

Alcuni router di rete e firewall implementano algoritmi di hash sicuri direttamente nel loro hardware.Ciò consente ai pacchetti di dati di essere autenticati con un impatto limitato sulla throughput.Esiste anche software di algoritmo hash sicuro, tra cui molte implementazioni open source.Il National Institute of Standards and Technology (NIST) degli Stati Uniti e il Canadian Communications Security Establishment (CSE) gestiscono congiuntamente il Programma di verifica del modulo crittografico (CMVP).Questo programma ufficiale certifica il corretto funzionamento delle implementazioni di algoritmo di hash sicure per applicazioni sensibili.

Il governo degli Stati Uniti ha standardizzato almeno sei algoritmi di hash sicuri.SHA-0 e SHA-1 furono le prime incarnazioni sviluppate negli anni '90.La serie SHA -2 sviluppata negli anni 2000 includeva SHA -224, -256, -384 e -512.Questi sono progettati in modo tale che due documenti con contenuti diversi producano generalmente due set unici di valori di hash, evitando collisioni di hash.

L'algoritmo SHA-0, pubblicato per la prima volta nel 1993 dal NIST, è stato rapidamente interrotto dopo che è stata trovata una debolezza significativa.È stato sostituito da SHA-1 nel 1995, che include un passaggio computazionale aggiuntivo che affronta i problemi non divulgati di SHA-0.Entrambi gli algoritmi hanno un messaggio fino a 2 64 -1 bit in un digest a 160 bit.Entrambi utilizzano una dimensione del blocco di 512 bit e una dimensione della parola di 32 bit nel loro funzionamento.

SHA-1 viene utilizzato in alcuni protocolli Internet comuni e strumenti di sicurezza.Questi includono IPSEC, PGP, SSL, S/MIME, SSH e TLS.SHA-1 è anche in genere utilizzato come parte del regime di protezione per documenti governativi non classificati.Il settore privato utilizza anche questo algoritmo di hash sicuro per alcune informazioni sensibili.È previsto per essere ritirato dall'uso del governo generale nel 2010.

SHA -224, -256, -384 e -512 sono stati pubblicati dal NIST tra il 2001 e il 2004. Questi quattro algoritmi, noti anche come famiglia SHA -2,sono generalmente più robusti di SHA-1.SHA-224 e SHA-256 utilizzano lo stesso blocco, le dimensioni dei messaggi di input della parola come SHA-1.Al contrario, SHA-224 produce un digest a 224 bit, mentre SHA-256 crea un digest da 256 bit.SHA-384 e SHA-512 aumentano la dimensione del blocco a 1024 bit, la dimensione della parola a 64 bit e la lunghezza massima del messaggio di input a 2 128 -1 bit.Il digest prodotto da SHA-384 è lungo 384 bit, mentre il digest SHA-512 contiene 512 bit.

Come SHA-0 e SHA-1, la famiglia SHA-2 è stata progettata dalla National Security Agency (NSA) degli Stati Uniti.Sebbene i difetti gravi non siano stati divulgati pubblicamente in SHA-2, il NIST ha aperto una competizione per sviluppare il prossimo algoritmo di hash sicuro.Questo nuovo algoritmo, che si chiama SHA-3, sarà probabilmente scelto nel 2012 da una raccolta di voci pubbliche.Si prevede che sia un nuovo design, non basato sugli algoritmi esistenti.