30Aug

Kaj so MD5, SHA-1 in SHA-256 Hashes in kako jih preverim?

Včasih boste med potovanjem po internetu prikazali prikaze MD5, SHA-1 ali SHA-256, ki so prikazane skupaj s prenosi, vendar ne vedo, kakšne so. Ti navidezno naključni nizi besedila vam omogočajo, da preverite datoteke, ki jih prenesete, niso poškodovane ali spremenjene. To lahko storite z ukazi, vgrajenimi v Windows, MacOS in Linux.

Kako haši delujejo in kako se uporabljajo za preverjanje podatkov

Hashes so izdelki kriptografskih algoritmov, zasnovanih za izdelavo nizov znakov. Pogosto imajo ti nizi določeno fiksno dolžino, ne glede na velikost vhodnih podatkov. Oglejte si zgornji diagram in videli boste, da tako "Fox" kot "rdeča lisica skoči čez modri pes" daje enako dolžino proizvodnje.

Zdaj primerjamo drugi primer v grafu do tretjega, četrtega in petega. Videli boste, da se kljub zelo majhni spremembi vhodnih podatkov posledični haši zelo razlikujejo drug od drugega. Tudi če nekdo spremeni zelo majhen del vhodnih podatkov, se bo hash dramatično spremenil.

MD5, SHA-1 in SHA-256 so vse različne razpršene funkcije. Ustvarjalci programske opreme pogosto posnamejo datoteko, kot je datoteka Linux. iso ali celo datoteka. exe, in jo zaženejo prek funkcije hash. Nato ponujajo uradni seznam hiš na svojih spletnih straneh.

Na ta način lahko prenesete datoteko in nato zaženete funkcijo hash, da potrdite, da imate resnično izvirno datoteko in da med postopkom prenosa ni bila poškodovana ali da je bila zlonamerno zlorabljena. Kot smo videli zgoraj, bo tudi majhna sprememba datoteke dramatično spremenila razpršitev.

Te so lahko tudi koristne, če imate datoteko iz neuradnega vira in želite potrditi, da je to legitimno. Recimo, da imate datoteko Linux. ISO, ki ste jo dobili od nekoga in želite potrditi, da ni bila spremenjena. Na spletnem mestu distribucije Linuxa si lahko ogledate haše te posebne datoteke ISO na spletu. Nato lahko zaženete s funkcijo razpršitve na vašem računalniku in potrdite, da se ujema z vrednostjo hash-a, za katero pričakujete, da bo imela. To potrdi datoteko, ki jo imate, je popolnoma enaka datoteka, ki jo lahko prenesete na spletno mesto distribucije Linuxa, brez kakršnih koli sprememb.

Kako primerjati funkcije hash na katerem koli operacijskem sistemu

S tem v mislih si oglejmo, kako preveriti hešno datoteko, ki ste jo prenesli, in jo primerjati s tistim, ki ste ga dobili. Tukaj so metode za Windows, MacOS in Linux.Šabloni so vedno enaki, če v isti datoteki uporabljate isto funkcijo hashinga. Ni pomembno, kateri operacijski sistem uporabljate.

Windows

Ta proces je mogoč brez programske opreme tretjih oseb v operacijskem sistemu Windows zahvaljujoč PowerShell.

Če želite začeti, odprite okno PowerShell, tako da v meniju Start odpre bližnjico »Windows PowerShell«.

Zaženite naslednji ukaz, tako da zamenjate »C: \ path \ to \ file.iso« s potjo v katero koli datoteko, ki jo želite pregledati:

Get-FileHash C: \ path \ to \ file.iso

vzemite nekaj časa, da ustvarite razpršitev datoteke, odvisno od velikosti datoteke, algoritma, ki ga uporabljate, in hitrosti pogona, na kateri je datoteka vklopljena.

Privzeto bo ukaz prikazal SHA-256 razpršitev za datoteko. Vendar pa lahko določite algoritem hashing, ki ga želite uporabiti, če potrebujete MD5, SHA-1 ali drugo vrsto razpršitve.

Izvedite enega od naslednjih ukazov, da določite drugačni algoritem hashinga:

Get-FileHash C: \ path \ to \ file.iso -Algorithm MD5 Get-FileHash C: \ path \ to \ file.iso -Algorithm SHA1 Get-FileHashC: \ path \ to \ file.iso -Algorithm SHA256 Get-FileHash C: \ path \ to \ file.iso -Algorithm SHA384 Get-FileHash C: \ path \ to \ file.iso -Algorithm SHA512 Get-FileHash C:\ path \ to \ file.iso -Algorithm MACTripleDES Get-FileHash C: \ path \ do \ file.iso -Algorithm RIPEMD160

Primerjajte rezultat razpršene funkcije z rezultatom, ki ste ga pričakovali.Če je ista vrednost, datoteka ni bila poškodovana, spremenjena ali kako drugače spremenjena iz izvirnika.

img_5894fdde80f06

macOS

macOS vključuje ukaze za ogled različnih vrst hašiša. Za dostop do njih sprožite okno Terminal. To boste našli pri Finder & gt;Aplikacije & gt;Utilities & gt;Terminal.

Ukaz md5 prikazuje razpršitev MD5 datoteke:

md5 /path/to/ datoteka

Ukaz shasum pokaže privzeto hašo datoteke SHA-1.To pomeni, da so naslednji ukazi enaki:

shasum /path/to/ datoteka shasum -a 1 /path/to/ datoteka

Če želite prikazati SHA-256 razpršitev datoteke, zaženite ta ukaz:

shasum -a 256 /path/to/ datoteka

Linux

V Linuxu dostopajte doTerminal in zaženite enega od naslednjih ukazov, da si ogledate razpršitev za datoteko, odvisno od vrste hašiša, ki si ga želite ogledati:

md5sum /path/to/ datoteka sha1sum /path/to/ datoteka sha256sum /path/to/ datoteka

Nekateri Hashes so kriptografsko podpisani za še večjo varnost

Medtem ko je hadhesvam lahko pomaga potrditi, da datoteka ni bila spremenjena, še vedno obstaja en napad. Napadalec lahko pridobi nadzor nad spletno stranjo distribucije Linuxa in spremeni haše, ki se pojavijo na njem, ali napadalec lahko izvede napad med človekom in spremeni spletno stran v tranzitu, če ste dostopali do spletnega mesta prek HTTP namestošifrirani HTTPS.

Zato moderne distribucije Linuxa pogosto zagotavljajo več kot haše, navedene na spletnih straneh. Kriptografsko podpišejo te šipe, da pomagajo zaščititi pred napadalci, ki bi morda poskušali spremeniti heš.Potrditi morate kriptografski podpis, da zagotovite, da je bila datoteka razprševanja dejansko podpisana z distribucijo Linuxa, če želite biti popolnoma prepričani, da nismo spreminjali hash in datoteke.

Preverjanje kriptografskega podpisa je bolj vključen proces. Preberite naš vodnik za preverjanje Linuxov ISO, niso bili spremenjeni zaradi popolnih navodil.

Image Credit: Jorge Stolfi / Wikimedia