SHA, lühendatult Secure Hash Algorithm, on krüptograafiliste räsimisalgoritmide perekond, mille avaldas Riiklik Standardite ja Tehnoloogia Instituut (NIST), et hoida teie andmeid turvalisena. Aastal 1995 kiitis NIST heaks turvalise räsi standardi (FIPS PUB 180-1), mis sisaldas ühte turvalise räsialgoritmi SHA-1. 2003. aastal kiideti heaks uus turvalise räsi allkirjastandard (SHS), FIPS PUB 180-2, lisades kolm räsialgoritmi, mis on võimelised tekitama suuremaid sõnumikombinatsioone, edestades FIPS 180-1. FIPS PUB 180-2 määratleb neli turvalist räsialgoritmi, SHA-1, SHA-256, SHA-384 ja SHA-512 - need kõik on iteratiivsed, st ühesuunalised räsifunktsioonid, mis saavad sõnumit töödelda kokkuvõtlikult esitus, mida nimetatakse sõnumikokkuvõtteks. Peamiselt nende efektiivsuse tõttu on krüptograafiliste räsi funktsioonidel krüptograafiliste algoritmide ja protokollide jaoks keskne tähtsus.
See artikkel keskendub peamiselt kahele tänapäeval kasutatavale populaarsele krüptograafilisele räsifunktsioonile - SHA-1 ja SHA-256. Osa SHS-ist (Secure Hash Standard) oli SHA-1 üks varasemaid räsialgoritme, mida SSL-sertifikaatide autorid sageli sertifikaatide allkirjastamiseks kasutasid. See avaldati 1993. aastal SHA-na, kuid turvavea tõttu asendati see hiljem turvalisema SHA-1-ga. See on kaugelt üks kõige laialdasemalt kasutatavaid ja kasutusele võetud krüptograafilisi räsifunktsioone. SHA-256-l on sama alusstruktuur ja see kasutab sama tüüpi modulaarseid aritmeetilisi ja loogilisi kahendtoiminguid kui SHA-1. SHA-256 kuulub erineva ploki suurusega sarnaste räsifunktsioonide rühma SHA-2, teine on SHA-512. See on rämpsfunktsioon, mida Blockchainis tavaliselt kasutatakse.
SHA-1 on üks kõige laialdasemalt kasutatavaid ja juurutatud krüptograafilisi räsifunktsioone, mida SSL-i sertifikaadiasutused kasutavad sageli sertifikaatide allkirjastamiseks. See oli üks vanimaid räsialgoritme, mis on määratud kasutamiseks USA föderaalvalitsuses. Selle töötasid välja NIST ja NSA. SHA-1 avaldati föderaalvalitsuse standardina 1995. aastal SHA värskendusena, mis avaldati 1993. See võtab sisendi ja annab 160-bitise (20-baidise) räsiväärtuse, mida tuntakse sõnumite kokkuvõttena, mida tavaliselt esindatakse 40-kohalise pikkuse kuueteistkümnendstringi abil. SHA-1 on konstrueeritud nii, et arvutuslikult pole võimalik leida teadete kokkuvõttele vastavat sõnumit või leida kahte erinevat sõnumit, mis annavad sama sõnumi kokkuvõtte..
SHA-256 on uuem, turvalisem krüptograafiline räsifunktsioon, mis pakuti 2000. aastal välja uue SHA funktsioonide põlvkonnana ja võeti kasutusele FIPS standardina 2002. aastal. SHA-256 algoritm genereerib 256-bitise räsi väärtuse polsterdatud 512-bitisest sõnumiblokid ja algse sõnumi suurus on kuni 264-1 bitti. SHA-256 arvutab turvalisuse tagamiseks alati sisemiselt 256-bitise räsi, kuid selle tulemuse saab kärpida kas 196- või 128-bitiseks printimiseks ja salvestamiseks. Seega annab kärbitud SHA-256 märkimisväärset kasu inimeste kasutatavusele trükitud tsitaatides ja parandab märkimisväärselt turvalisust MD5-ga seotud jõudluse väikese languse hinnaga. Erinevalt MD5 algoritmist ei kärbitud SHA-256 ühtegi teadaolevat rünnakut.
- SHA-1 on üks kõige laialdasemalt kasutatavaid ja juurutatud krüptograafilisi räsifunktsioone, mida SSL-i sertifikaadiasutused kasutavad sageli sertifikaatide allkirjastamiseks. See oli üks vanimaid räsialgoritme, mis on määratud kasutamiseks USA föderaalvalitsuses. SHA-256 on uuem, turvalisem krüptograafiline räsifunktsioon, mis pakuti 2000. aastal välja uue SHA funktsioonide põlvkonnana ja võeti kasutusele FIPS standardina 2002. aastal. SHA-256 kuulub SHA-2 perekonda krüptograafiliste räsimisalgoritmidega, millel on sarnane räsi funktsioone, kuid erinevat ploki suurust, teised on SHA-384 ja SHA-512.
- SHA-1 on 160-bitine räsi võtab sisendi ja tekitab 160-bitise (20-baidise) räsi väärtuse, mida nimetatakse sõnumi kokkuvõtteks, mida tavaliselt tähistab 40-kohaline pikk kuueteistkümnendsüsteem. SHA-1 on konstrueeritud nii, et arvutuslikult pole võimalik leida teadete kokkuvõttele vastavat sõnumit või leida kahte erinevat sõnumit, mis tekitavad sama sõnumi kokkuvõtte. SHA-256 algoritm genereerib polsterdatud 512-bitistest sõnumiplokkidest 256-bitise räsiväärtuse ja algsõnumi suurus on kuni 264-1 bitti.
- Suureneva arvutusvõimsusega on suurenenud ka SHA-1 murdmise teostatavus. See oli üks vanimaid rämpsalgoritme, mis on ette nähtud kasutamiseks USA föderaalvalitsuses ja väiksema bitimõõdu tõttu on see kalduvus rünnakutele. Ehkki SHA-256-l on sama alusstruktuur ja see kasutab sama tüüpi modulaarseid aritmeetilisi ja loogilisi kahendtoiminguid nagu SHA-1, on see muutunud paljudes rakendustes lahutamatuks osaks. SHA-256 arvutab turvalisuse tagamiseks alati sisemiselt 256-bitise räsi, mis parandab märkimisväärselt turvalisust, MD5-ga seotud jõudluse väikese vähenemise hinnaga.
Lühidalt öeldes - SHA-256 on usaldusväärsem ja turvalisem kui SHA-1. SHA-256 kuulub SHA-2 krüptograafiliste räsifunktsioonide hulka, mille on välja töötanud NSA ja mida tavaliselt kasutatakse Blockchainis. SHA-1 oli üks varasemaid krüptograafilisi räsifunktsioone, mida SSL-sertifikaatide autorid sageli sertifikaatide allkirjastamiseks kasutasid. Kuid väiksema bitimõõdu ja turvaaukude tõttu on see aja jooksul muutunud rünnakuteks kalduvamaks, mis viis lõpuks selle odavnemiseni SSL-i sertifikaatide väljaandjate poolt.