Kaj je varni zgoščeni algoritem?

Varen algoritem zgoščevanja, pogosto znan kot »SHA«, je algoritem zgoščevanja, ki velja za kriptografsko varnega. Na splošno se funkcije zgoščevanja uporabljajo za razvrščanje in organiziranje digitalnih podatkov v manjše, bolj kategorizirane pakete. Algoritmi so programi, ki poganjajo funkcije, in varnost teh algoritmov je pomembna, saj nadzira, kako enostavno je mogoče podatke odkleniti in preurediti. Kako varne morajo biti stvari, je običajno odvisno od okoliščin. Mnogi razvijalci programske opreme in kode želijo neprepustne algoritme, ker so njihove metode razvrščanja tem in risanja povezav lastniške in jih uporabljajo za zaslužek. V drugih primerih so podatki sami zelo občutljivi, kot je pogosto pri stvareh, kot so zdravstveni kartoni ali nekateri državni dokumenti. Dejanska mehanika SHA je ponavadi zelo zapletena in običajno je potrebna vsaj nekaj tehničnega znanja, da bi v celoti razumeli, kako delujejo in kako so razviti. Kot večina tehnoloških stvari, je prišlo tudi do razvoja navzgor; prejšnji modeli so bili v veliki meri zamenjani, skoraj nenehno pa se uvajajo novejši, varnejši modeli.

Razumevanje zgoščenih algoritmov na splošno

Sodobna digitalna pokrajina vsebuje na stotine milijonov podatkovnih točk, ki vse zasedajo splet medsebojne povezanosti in skupnih točk, tako na spletnih mestih kot na družbenem področju, ko gre za sporočila in objave, ki jih ustvarijo uporabniki. Zgoščenje je eden od načinov za združevanje podobnih ali sorodnih podatkov, tako da tvorijo nekaj podobnega zbirki ali manjšemu, bolj medsebojno povezanemu »spletu v spletu«. Algoritmi varnega zgoščevanja poskušajo to organizirati na učinkovit in varen način.

Izvirnih podatkov, ki jih enkrat zgosti SHA, običajno ni mogoče rekonstruirati brez ogromne količine računalniške moči. Varni algoritmi se pogosto uporabljajo v kombinaciji z drugimi algoritmi za preverjanje pristnosti sporočil, vključno z digitalnimi podpisi.

Kako se izvajajo

Nekateri omrežni usmerjevalniki in požarni zidovi implementirajo SHA neposredno v svojo strojno opremo. To omogoča preverjanje pristnosti podatkovnih paketov z omejenim vplivom na prepustnost. Druga možnost je posebej zasnovana programska oprema, vključno s številnimi odprtokodnimi izvedbami. Na primer, ameriški nacionalni inštitut za standarde in tehnologijo (NIST) in kanadska komunikacijska varnostna ustanova (CSE) skupaj izvajata program za preverjanje kriptografskih modulov (CMVP). Ta uradni program potrjuje pravilno delovanje varnih implementacij algoritmov za občutljive aplikacije.
Standardizacija
Ameriška vlada je standardizirala vsaj šest varnih algoritmov zgoščevanja. SHA-0 in SHA-1 sta bila najstarejša modela, razvita v devetdesetih letih. Serija SHA-1990, razvita v 2-ih, je vključevala SHA-2000, -224, -256 in -384. Ti so zasnovani tako, da dva dokumenta z različno vsebino na splošno ustvarita dva edinstvena niza zgoščenih vrednosti, kar je zelo koristno pri preprečevanju kolizij zgoščenih točk.
Najzgodnejše iteracije
Algoritem SHA-0, ki ga je leta 1993 prvič objavil NIST, je bil hitro ukinjen, potem ko je bila odkrita pomembna pomanjkljivost. Leta 1 ga je nadomestil SHA-1995, ki vključuje dodaten računski korak, ki obravnava nerazkrite težave SHA-0. Oba algoritma zgostita sporočilo do 264-1 bitov v 160-bitni “povzetek”. Oba pri svojem delovanju uporabljata velikost bloka 512 bitov in velikost besede 32 bitov.
SHA-1 se uporablja v nekaterih običajnih internetnih protokolih in varnostnih orodjih. Ti vključujejo IPsec, PGP, SSL, S/MIME, SSH in TLS. SHA-1 se običajno uporablja tudi kot del zaščitne sheme za nerazvrščene državne dokumente. Nekateri deli zasebnega sektorja uporabljajo ta algoritem tudi za nekatere občutljive informacije. Vendar je bil leta 2010 uradno umaknjen iz javne uporabe.
Razvoj in nadaljnji razvoj
SHA-224, -256, -384 in -512 je objavil NIST med letoma 2001 in 2004. Ti štirje algoritmi, znani tudi kot družina SHA-2, so na splošno bolj robustni kot SHA-1. SHA-224 in SHA-256 uporabljata enake bloke, besede in največje velikosti vhodnih sporočil kot SHA-1. V nasprotju s tem SHA-224 ustvari 224-bitni povzetek, medtem ko SHA-256 ustvari 256-bitni povzetek. SHA-384 in SHA-512 povečata velikost bloka na 1024 bitov, velikost besede na 64 bitov in največjo dolžino vhodnega sporočila na 2128-1 bitov. Povzetek, ki ga izdela SHA-384, je dolg 384 bitov, medtem ko povzetek SHA-512 vsebuje 512 bitov.
Tako kot SHA-0 in SHA-1 je družino SHA-2 zasnovala ameriška agencija za nacionalno varnost (NSA). Čeprav resne pomanjkljivosti v SHA-2 niso bile javno razkrite, je NIST odprl natečaj za razvoj naslednjega varnega algoritma zgoščevanja. Ta novi algoritem, ki se bo imenoval SHA-3, bo verjetno izbran iz zbirke javnih vnosov. Pričakuje se, da bo nov dizajn, ki ne bo temeljil na obstoječih algoritmih.