SHA

Secure Hash Algorithm ehk SHA on krüptograafiliste räsifunktsioonide tootepere, mis töötati välja Ameerika Ühendriikide Riiklikus Standardite ja Tehnoloogia Instituudis (NIST) koostöös Riikliku julgeolekuagentuuriga. 

SHA algoritmide tooteperre kuuluvad SHA-0, SHA-1, SHA-2 ja SHA-3.

SHA-0 ja SHA-1

SHA-0 algoritmi algne nimi oli SHA, kuid uuemate sarnase põhimõttega algoritmide lisandumisel võeti kasutusele nimi SHA-0. 1993. aastal avaldati algse algoritmi edasiarendus SHA-1. Uues algoritmis oli parandatud varem leitud turvaauk, kusjuures SHA-0 ja SHA-1 erinevad ainult ühe tehte võrra. Praeguseks on SHA-1 algoritm kuulutatud ebaturvaliseks ning NIST soovitab riigiorganisatsioonidel kasutada uuemaid SHA räsifunktsioone.

Microsoft, Google ja Mozilla lõpetasid 2017. aastast brauserites SHA-1 kasutavate SSL sertifikaatide toetamise.

SHA-1 on kasutusel Giti ja Mercuriali versioonihaldustarkvaras andmete terviklikkuse kontrollimise eesmärgil.

SHA-2
SHA-2 perekonda kuuluvad räsifunktsioonid SHA-256 ja SHA-512. SHA-256 kasutab 32-bitiseid sõnu ning SHA-512 64-bitiseid sõnu.

Rakendused 
SHA-2 räsifunktsioon on kasutusel sellistes rakendustes ja protokollides nagu TLS, SSL, PGP, SSH, S/MIME ja IPsec.

SHA-256 funktsiooni kasutatakse Debian GNU ja Linuxi tarkvarapakkide autentimisel ja DKIM sõnumite allkirjastamise standardis. SHA-512 on kasutusel süsteemis, mis autendib arhiivitud videoid Rwanda genotsiidi tribunalist. Linuxi ja UNIXi arendajatel on kavas paroolide räsimiseks võtta kasutusele SHA-256 ja SHA-512.

Bitcoin kasutab SHA-256 funktsiooni tehingute verifitseerimiseks ja toimingutõestuse arvutamisel.

Teadaolevad rünnakud

SHA-3
SHA-3 loodi Riikliku Standardite ja Tehnoloogia Instituudi poolt peetud avaliku konkursi käigus. Konkursi komisjoni poolt väljavalituks osutunud räsialgoritmi Keccak loojateks on Guido Bertoni, Joan Daemen, Michaël Peeters ja Gilles Van Assche. SHA-3 loomise eesmärk ei olnud SHA-2 väljavahetamine, vaid sellele alternatiivi pakkumine juhul kui SHA-2 algoritmis avastatakse turvaauke.

SHA-3 perekonda kuuluvad laiendatava väljundiga räsifunktsioonid (ingl extendable-output function, XOF) SHAKE128 ja SHAKE256, mille väljundi suurus on vabalt muudetav. SHAKE-funktsioonid on esimesed Riikliku Standardite ja Tehnoloogia Instituudi poolt standardiseeritud XOF funktsioonid.

SHA funktsioonide võrdlus

Viited

Krüptograafia