Hva er forskjellen mellom SHA og SHA-1-kryptering?

SHA er et akronym for Secure Hash Algorithm, en krypteringsstandard oppfunnet av National Security Agency og publisert av National Institutes of Standards and Technology. Den opprinnelige SHA algoritmen ble funnet å ha svakheter i sin krypteringsmetoder, og ble erstattet med SHA-1 for bedre sikkerhet.

Secure Hash Algorithm

SHA er en kryptografisk hash-funksjon. En spredefunksjonsverdi tar en første kryptert tekst, kalt klarteksten, og frembringer et teoretisk unikt nummer som utgjør den krypterte meldingen. SHA skaper et 160-bits tall, som er et tall mellom 0 og 1,46 x 10 ^ 48. Det er ikke mulig for dette nummer som skal garanteres unik for alle mulige klartekst-meldinger, som antallet av slike meldinger er teoretisk uendelig, men de odds er ca. 2 ^ 80, eller 1,21 x 10 ^ 24, mot to meldinger som produserer den samme kryptert resultat. Hvis dette skjer, kalles dette en kollisjon. En kollisjon gir en matematisk angrep på en krypteringsalgoritme, noe som gjør det mulig for en knekk å dekryptere den rene teksten.

SHA-0 og SHA-1

Etter utgivelsen, ble feil i den opprinnelige SHA algoritmen oppdaget at tillatt for en kryptografisk angrep for å produsere hasj kollisjoner, alvorlig svekke dens effektivitet. En revidert SHA-versjonen, SHA-1, ble utviklet som skapte de samme 160-bit-resultatene uten de opprinnelige feil i algoritmen. Den opprinnelige SHA ble tilbakevirkende kraft omdøpt SHA-0 for å skille mellom bruk og SHA-1-bruk.

Endringer i SHA-1

De opprinnelige feil i SHA-0 har aldri blitt publisert, da disse feilene gi en verktøykasse for noen angriper forsøker å dekryptere en melding ved hjelp av SHA-0-kryptering. Den eneste offentlig informasjon om svakheter i den opprinnelige algoritmen viser at hasj kollisjoner er mer sannsynlig enn fra tilfeldig sjanse ved bruk av SHA-0, og at kollisjoner ved hjelp av upubliserte metoden elimineres ved bruk av SHA-1. Som SHA-1 og SHA-0 produsere matematiske resultater med samme lengde, kan SHA-1 brukes som en drop-in erstatning i dataprogramvare for den opprinnelige SHA-0-algoritmen uten å kreve store omskriver i resten av programvaren.

SHA-2 og SHA-3-

SHA-1 har blitt funnet å være mer robust enn SHA-0, men gir rom for forbedring. En matematisk analyse av SHA-1-resultater viste en metode som SHA-1 kryptering kan med strekete 2.000 ganger raskere enn hva som ville være teoretisk mulig ved å kontrollere alle 10 ^ 48 mulige kombinasjoner av sin utgang. Som en ideell kryptografisk algoritme hindrer dekryptering hastighet forbedringer av denne type, SHA-2-algoritmen både unngår dette angrepet og øker mulig hash størrelsen til 512-bit, eller 1,34 x 10 ^ 154. SHA-tre, en fortsatt kraftigere krypteringsalgoritme, er for tiden under utvikling.