MD5:n vakiomuunnosraja on 128 bittiä. Tämä koskee minkä tahansa pituisia syöttöviestejä. SHA:lle se on kuitenkin varsin monipuolinen. SHA voi muuntaa syöttöviestin, jonka enimmäispituus on 264 –––2128 bittiä 160-512-bittiseksi ulostuloviestitiivisteeksi. Tämä kahden algoritmin merkittävä eroavaisuus korostaa lisää rakoja näiden kahden välillä.
SHA vs MD5
Ero SHA:n ja MD5:n välillä on se, että SHA:n keksi Yhdysvaltain National Institute of Standards and Technology (NIST) tiivistetyn viestitiivistelmän luomista varten, kun taas MD5:n suunnitteli Ron Rivest tiedostojen tiivistämiseksi 128-bittinen hash-arvo.
SHA:n ja MD5:n vertailutaulukko
Vertailuparametrit | SHA | MD5 |
Määritelmä | SHA on NIST:n luoma kryptografinen hash-funktioalgoritmi, joka helpottaa viestitiivistelmien luomista. | MD5:n loi Ron Rivest, ja sitä käytetään muuttamaan valinnaisen pituiset viestit 128-bittisiksi viestitiivisteiksi. |
Täysi muoto | Lyhenne SHA tarkoittaa Secure Hash Algorithm. | Lyhenne MD5 tulee sanoista Message Digest. |
Viestin enimmäispituus | SHA voi muuntaa 2:n viestin64 –––2128 bittiä muodostamaan 160-512-bittisen viestitiivisteen. | MD5 voi muuntaa minkä tahansa pituiset viestit 128-bittisiksi viestitiivisteiksi. |
Turvallisuus | Salauksen hajautusalgoritmina SHA on turvallisempi kuin MD5. | MD5 on vähemmän suojattu kuin SHA ja sen parannettu SHA-1-versio. |
Nopeus | Algoritmin alkuperäinen versio on hitaampi kuin MD5. Sen myöhemmät osat, kuten SHA-1, tarjoavat kuitenkin paljon parempia nopeuksia. | MD5 on nopeampi kuin alkuperäinen SHA-versio. |
Haavoittuvuus | Vähemmän alttiita kyberuhkille ja hakkerihyökkäyksille. | Haavoittuvampi kyberuhkille ja hakkerihyökkäyksille. |
Hyökkäysten määrä | Harvemmat hyökkäykset ovat pystyneet rikkomaan algoritmia. | Useita vakavia hyökkäyksiä on raportoitu. |
Käyttää tänään | Käytetään sovelluksissa, kuten SSH, SSL jne. | MD5:n käyttö rajoittuu enimmäkseen tiedostojen eheyden tarkistamiseen sen huonojen suojausprotokollien vuoksi. |
Mikä on SHA?
SHA tulee sanoista Secure Hash Algorithm. Sen alun perin kehitti ja suunnitteli Yhdysvaltain kansallinen standardi- ja teknologiainstituutti (NIST). SHA tarkoittaa suojattujen kryptografisten hajautustoimintojen joukkoa, jotka on määritelty Secure Hash Standard (SHS) -standardissa.
Algoritmin eri versioita ovat edistyneet mallit SHA-1, SHA-256 ja SHA-384 sekä SHA-512. Alkuperäinen versio oli varustettu 10-bittisellä hash-toiminnolla. Se korvattiin pian uudella ja parannetulla SHA-1-versiolla. Algoritmin uudemmissa versioissa on myös yksisuuntaisia hash-funktioita, jotka käsittelevät viestin, jonka pituus on enintään 264 –––2128 bittiä. Tämä tiivistetään muodostamaan 160-512-bittinen sanomatiiviste.
Tämän algoritmin ja sen parannettujen varianttien suojausprotokollat ovat paljon kattavampia ja pelottavampia kuin muut markkinakilpailijat. Algoritmin tarjoama haavoittuvuussuoja on vertaansa vailla.
Mikä on MD5?
MD5 tarkoittaa hajautusalgoritmia, joka tunnetaan nimellä Message Digest. Sen loi kryptografisena hash-algoritmina Ron Rivest. MD5-versio luotiin parannuksena edeltäjänsä MD4:n tarjontaan.
Algoritmin ydin perustuu pakkausfunktioon, joka puolestaan toimii lohkoilla. MD5 toimii ottamalla eripituisia syöttöviestejä ja muuttamalla ne sitten 128-bittisiksi "sormenjäljeksi" tai "viestitiivisteeksi". Siten algoritmi pystyy tuottamaan 128-bittisen hash-arvon oikukas merkkijonon pituudesta.
Vaikka MD5-versio on parannus edeltäjänsä tietoturvaongelmiin, se ei sisällä äärimmäisen valtavia suojausprotokollia. MD5 on saanut laajaa kritiikkiä sen voimakkaista haavoittuvuuksista. Algoritmi ei tarjoa paljon turvallisuutta käyttäjälle. Nykyään sitä käytetään usein tiedostojen eheyden määrittämiseen pikemminkin kuin pääasiassa sen hajautustoimintoihin.
Tärkeimmät erot SHA:n ja MD5:n välillä
- Suurin ero SHA:n ja MD5:n välillä on se, että SHA tarkoittaa NIST:n kehittämää kryptografista hajautusfunktiota, kun taas MD5 on yleisesti käytetty hash-funktio, joka tuottaa 128-bittisen hajautusarvon tiedostosta, jonka merkkijonon pituus vaihtelee.
- Jokainen lyhenne edustaa erilaista täyttä muotoa. SHA on lyhenne sanoista Secure Hash Algorithm, kun taas MD5 tarkoittaa Message Digest Algorithmia.
- Kunkin algoritmin suurin kondensaatiopituus on erilainen. SHA voi käsitellä syöttöviestin, jonka enimmäispituus on 264 –––2128 bittiä. Tämä tiivistetään muodostamaan 160-512-bittinen sanomatiiviste. Vaikka MD5 voi ottaa minkä tahansa pituisen viestin ja tiivistää sen 128-bittiseksi viestitiivisteeksi.
- SHA on suhteellisen suojattu salausalgoritmina kuin MD5.
- MD5-algoritmi on paljon nopeampi kuin SHA-versio. Optimoitu SHA1-versio kehitettiin kuitenkin parannuksena alkuperäiseen algoritmiin ja on huomattavasti nopeampi kuin MD5.
- Useita vakavia hyökkäyksiä on raportoitu MD5-algoritmin kautta, kun taas SHA-versio - erityisesti parannetut versiot - raportoi vähemmän hyökkäyksiä.
- MD5-algoritmi on herkempi kyberuhkille ja hakkerihyökkäyksille, koska sen käyttöliittymä on helpompi murtaa verrattuna parempiin SHA-versioihin, kuten SHA-1.
Johtopäätös
Sekä SHA että MD5 ovat hajautusalgoritmeja. Molemmilla on useita yhtäläisyyksiä, mutta erot näiden kahden välillä ovat yhtä paljastavia heidän yksittäisten suoritustensa vertailevassa analyysissä.
NIST loi Secure Hash Algorithmin tai SHA:n tavoitteenaan luoda salausalgoritmi, suojattu ja tehokas. Federal Information Processing Standard on nimennyt alkuperäisen SHA-version seuraajat markkinoiden 4 turvatuimmaksi hajautusalgoritmiksi.
Sitä vastoin Ron Rivest loi MD5:n kryptografiseksi hajautusalgoritmiksi, joka pystyy tiivistämään eripituiset syöttöviestit tavalliseksi 128-bittiseksi viestitiivisteeksi. Vaikka SHA voi muuntaa viestin, jonka enimmäispituus on 264 –––2128 bitit 160-512-bittiseksi viestitiivisteeksi, MD5 pystyy muuttamaan mielivaltaisen pituiset viestit tavalliseksi "sormenjäljeksi" tai ulostulotiivisteeksi.
Näiden kahden välillä on useita muita merkittäviä eroja turvallisuuden, käyttötarkoitusten, kyberhyökkäyksiä vastaan haavoittuvuuden ja muiden suhteen. Valittaessa kahden hajautusalgoritmin välillä SHA varmistaa kiistattoman edun MD5:een nähden.
Viitteet
- https://ieeexplore.ieee.org/abstract/document/6632545/