Jos olet jo kuullut Secure Hash -algoritmista eli SHA: sta sen monissa muodoissa, sinun on tiedettävä, että hash-algoritmeja on ollut olemassa monissa muodoissa ainakin 1950-luvulta lähtien. Aikaisemmin hash-algoritmit rajoittuivat alkeelliseen datan eheyteen ja käyttäjän todennuksiin, mutta elektronisen viestinnän hyödyntämiseen pyrkivien hyökkääjien nopean lisääntymisen myötä hajautusalgoritmien rooli on muuttunut. Nykyään hash-algoritmit on sisällytetty muihin protokolliin, kuten VPN-protokolliin, digitaalisiin allekirjoituksiin, ohjelmistojen jakeluun ja lisenssien hallintaan, tietokantatiedostojärjestelmän eheyteen, verkkosivutiedostojen muutosten havaitsemiseen vain muutaman mainitsemiseksi. SHA-1 ja SHA-2 ovat kuitenkin SHA (Secure Hash Algorithms), joita useat käyttöjärjestelmät yleensä käyttävät salasanojen salaamiseen..
SHA-1 ja SHA-2 ovat turvallisia hash-algoritmeja, joita laki vaatii käytettäväksi tietyissä Yhdysvaltain hallituksen sovelluksissa, samoin kuin muiden kryptografisten algoritmien ja protokollien kanssa käyttöä arkaluonteisten luokittelemattomien tietojen suojaamiseksi. SHA-2 on mahdollinen seuraaja SHA-1: lle ja sisältää merkittävän määrän muutoksia edeltäjään verrattuna. Se koostuu neljästä hajotustoiminnosta, joilla on erilaiset sulakoko: SHA-224, SHA-256, SHA-384 ja SHA-512. SHA-2: n uskotaan olevan huomattavasti vahvempi ja turvallisempi, eikä siihen kohdistu samoja haavoittuvuuksia kuin SHA-1: een. Vaikka SHA-2: lla on jonkin verran samankaltaisuutta SHA-1-algoritmin kanssa, se tuottaa pidemmän tiivistelmän. Tarkastellaan kahta hajautusalgoritmia nähdäksemme kumpi on turvallisempi ja vahvempi.
SHA-1 on laajimmin käytetty nykyisistä SHA-hajautustoiminnoista ja sitä käytetään useissa laajasti käyttöön otetuissa tietoturvasovelluksissa ja -protokolloissa. Se on kansallisen turvallisuusviraston (NSA) vuonna 1995 luoma kryptografinen tietoturva-algoritmi, jonka NIST on julkaissut Yhdysvaltojen liittovaltion tietojenkäsittelystandardina. SHA-1 tuottaa melkein ainutlaatuisen pituisen viestin <264 512 bitin lohkoina. Tämä tarkoittaa, että se käsittelee 512 bitin lohkot peräkkäin laskettaessa viestin tiivistelmää. SHA-1 tuottaa 160-bittisen viestiluettelon. Algoritmi perustuu samoihin periaatteisiin kuin MIT: n Ronald L. Rivest käytti MD4- ja MD5-hajautusalgoritmien suunnittelussa 1990-luvun alkupuolella. SHA-1: tä käytetään myös hajautetuissa versioiden hallintajärjestelmissä, kuten Git, Monotone ja Mercurial.
SHA-2 on joukko kryptografisia hash-toimintoja, jotka korvaavat SHA-1-algoritmin. NIST-standardi SHA-2 on suunnitellut Yhdysvaltain kansallisen turvallisuusviraston ja julkaistu vuonna 2001. SHA-2-hajaustoimintojen perhe toimii samalla päätyllä kuin SHA-1, mutta sen turvallisuustaso on korkeampi kuin edeltäjänsä. Se on suunniteltu poistamaan SHA-1-algoritmin suojausheikkoudet. SHA-2 on perhe, jossa on neljä hash-toimintoa, joilla on erilaiset sulakoko: SHA-224, SHA-256, SHA-384 ja SHA-512. Kuten SHA-1, kaikki SHA-2-perheen toiminnot seuraavat MD-rakennetta. SHA-256 ja SHA-512 ovat perheen kaksi päätapausta, jotka toimivat vastaavasti 32-bittisillä ja 64-bittisillä sanoilla ja käyttävät siksi erilaisia algoritmeja. Sitä käytetään laajalti digitaalisten suojaustodistusten ja asiakirjojen validointiin ja allekirjoittamiseen.
- Sekä SHA-1 että SHA-2 kuuluvat Yhdysvaltain kansallisen turvallisuusviraston suunnittelemien ja kansallisen standardointi- ja teknologiainstituutin (NIST) julkaisemien salaustekniikan hash-toimintojen SHA-perheeseen. Molemmat ovat turvallisia hash-algoritmeja, joita laki vaatii käytettäväksi tietyissä Yhdysvaltain hallituksen sovelluksissa, samoin kuin muiden salausalgoritmien ja -protokollien käyttöä. SHA-2 on kuitenkin turvallisempi hajautusalgoritmi ja seuraa nyt vanhentuneelle SHA-1-hajautusalgoritmille. SHA-1-algoritmi ei ole enää turvallinen, eikä SHA-1-varmenteita ja välituotteita enää tunnisteta.
- SHA-1 tuottaa melkein ainutlaatuisen pituisen viestin <264 512 bitin lohkoina. Se prosessoi 512 bitin lohkoja peräkkäin laskettaessa viestin tiivistelmää, joka tehdään tyypillisesti 40-numeroisena pitkänä heksadesimaalilukuna. Ja se tuottaa 160-bittisen viestiluettelon ja pyrki korjaamaan SHA-0: n löytämät tietoturvariskit. SHA-2, toisaalta, ryhmä, jossa on neljä hajautusfunktiota, joilla on erilaiset sulakoko: SHA-224, SHA-256, SHA-384 ja SHA-512. Se käsittelee viestit 512-bittisissä lohkoissa 224-, 256- ja 384-hash-toiminnoille ja 1 024-lohkoissa SHA-512-algoritmille.
- SHA-1 oli ensisijainen hajautusalgoritmi laajassa käytössä vuosina 2011-2015, kunnes algoritmin tietoturva-aukot johtivat uudelleenarviointiin. SHA-2 on suunniteltu poistamaan SHA-1-algoritmin haavoittuvuudet. Vaikka SHA-2: lla on jonkin verran samankaltaisuutta SHA-1-algoritmin kanssa, se tuottaa pidemmän tiivistelmän ja on huomattavasti vahvempi ja turvallisempi kuin SHA-1. Vaikka molemmat algoritmit perustuvat Merkle-Damgård-rakenteeseen, SHA-2 sisältää joukon ylimääräisiä SHA-algoritmeja vastaamaan pidempien avainten korkeampia turvatasoja. Lisäksi SHA-2: lla on paljon parannettuja ja turvallisia varmenteita, jotka on erityisesti suunniteltu suojaamaan järjestelmää mahdollisilta rikkomuksilta.
Hash-algoritmeja on ollut olemassa monissa muodoissa 1950-luvulta lähtien. Tietojen vuorovaikutusten arvon ja lisääntyneiden verkkohyökkäysten myötä hajautusalgoritmien vaatimukset ovat muuttuneet. Kun hash-algoritmeja on rajoitettu pelkästään alkeelliseen datan eheyteen ja käyttäjän todennuksiin, niitä käytetään nyt sanomien selvitysten ja digitaalisten allekirjoitusten luomiseen, kiristäen siten tiedon ja tiedon lähteen siteitä. Sen jälkeen kun SHA-1: n turvallisuus oli vaarantunut, digitaalimaailma on siirtynyt turvallisempaan, voimakkaampaan SHA-2-hajautusalgoritmiin. SHA-2 on joukko ylimääräisiä hajautusalgoritmeja vastaamaan pidempien avainten korkeampaa turvatasoa.