Qual è la differenza tra SHA-1 e SHA crittografia?

May 28

SHA è l'acronimo di Secure Hash Algorithm, uno standard di crittografia inventato dal National Security Agency e pubblicato dal National Institutes of Standards and Technology. L'algoritmo SHA originale è stato trovato per avere punti deboli nei suoi metodi di crittografia, ed è stato sostituito con SHA-1 per una maggiore sicurezza.

Secure Hash Algorithm

SHA è una funzione di hash crittografico. Una funzione hash prende un testo in chiaro iniziale, chiamato il testo in chiaro, e produce un numero teoricamente unico che costituisce il messaggio cifrato. SHA crea un numero di 160 bit, che è un numero compreso tra 0 e 1,46 x 10 ^ 48. Non è possibile che questo numero sia garantita unico per tutti i possibili messaggi in chiaro, come il numero di tali messaggi è teoricamente infinita, ma le probabilità sono circa 2 ^ 80, o 1,21 x 10 ^ 24, contro due messaggi produrre la stessa cifrato risultato. Se ciò si verifica, si parla di una collisione. Una collisione fornisce un attacco matematica su un algoritmo di crittografia, rendendo possibile per un crittografo per decifrare il testo in chiaro.

SHA-0 e SHA-1

Dopo la sua pubblicazione, difetti nella algoritmo SHA originale sono stati scoperti che ha permesso per un attacco crittografico per produrre collisioni hash, di indebolire gravemente la sua efficacia. Una versione riveduta SHA, SHA-1, è stato sviluppato che ha creato gli stessi risultati 160-bit, senza i difetti originali dell'algoritmo. L'SHA originale è stato rinominato retroattivamente SHA-0 per distinguere tra il suo impiego e SHA-1 utilizzo.

Le variazioni di SHA-1

I difetti originali in SHA-0 non sono mai stati pubblicati, come questi difetti forniscono un toolkit per qualsiasi attaccante tenta di decifrare un messaggio utilizzando SHA-0 crittografia. L'unica informazione pubblica sui punti deboli dell'algoritmo originale indica che le collisioni hash è più probabile che da la possibilità a caso quando si utilizza SHA-0, e che le collisioni con il metodo inedito vengono eliminati quando si utilizza SHA-1. Come SHA-1 e SHA-0 producono risultati matematici della stessa lunghezza, SHA-1 può essere utilizzato in sostituzione drop-in in software per l'algoritmo originale SHA-0 senza richiedere importanti riscritture nel resto del software.

SHA-2 e SHA-3

SHA-1 è stato trovato per essere più robusto SHA-0, ma lascia spazio per miglioramenti. Una analisi matematica di SHA-1 risultati dimostrato un metodo con cui SHA-1 crittografia potrebbe da rotture 2.000 volte più veloce sarebbe teoricamente possibile controllando tutti i 10 ^ 48 possibili combinazioni di sua produzione. Come un algoritmo crittografico ideale impedisce miglioramenti di velocità di decodifica di questo tipo, l'algoritmo SHA-2 sia evita questo attacco e aumenta la possibile dimensione hash a 512 bit, o 1,34 x 10 ^ 154. SHA-3, un ancora più potente algoritmo di cifratura, è attualmente in fase di sviluppo.