Što su MD5, SHA-1 i SHA-256 hashes i kako ih mogu provjeriti?
Ponekad ćete vidjeti hasheove MD5, SHA-1 ili SHA-256 koji se prikazuju uz preuzimanja tijekom putovanja putem interneta, ali zapravo nisu poznati što su. Ti naizgled slučajni nizovi teksta omogućuju vam da potvrdite da datoteke koje preuzmete nisu oštećene ili neovlašteno mijenjane. To možete učiniti pomoću naredbi ugrađenih u Windows, MacOS i Linux.
Kako hashes funkcionira i kako se koriste za provjeru podataka
Hasheovi su proizvodi kriptografskih algoritama dizajniranih da proizvedu niz znakova. Često te žice imaju fiksnu duljinu, bez obzira na veličinu ulaznih podataka. Pogledajte gornji grafikon i vidjet ćete da i "Fox" i "crvena lisica preskaču preko plavog psa" daju istu dužinu izlaza.
Sada usporedite drugi primjer u tablici s trećim, četvrtim i petim. Vidjet ćete da su, unatoč vrlo malim promjenama u ulaznim podacima, rezultirajuće hasheve vrlo različite. Čak i ako netko modificira vrlo mali dio ulaznih podataka, hash će se dramatično promijeniti.
MD5, SHA-1 i SHA-256 su sve različite hash funkcije. Kreatori softvera često preuzimaju datoteku za preuzimanje kao što je Linux .iso datoteku ili čak datoteku s .exe u sustavu Windows i pokreću je putem hash funkcije. Zatim na svojim web stranicama nude službeni popis hashova.
Na taj način možete preuzeti datoteku, a zatim pokrenuti hash funkciju kako biste potvrdili da imate pravu, izvornu datoteku i da nije oštećena tijekom postupka preuzimanja. Kao što smo vidjeli gore, čak i mala promjena u datoteci će dramatično promijeniti hash.
To također može biti korisno ako imate datoteku koju ste dobili od neslužbenog izvora i želite potvrditi da je ona legitimna. Recimo da imate Linux .ISO datoteku koju ste negdje dobili i želite potvrditi da nije mijenjana. Možete pregledati hash određene ISO datoteke online na web stranici Linux distribucije. Zatim je možete pokrenuti preko hash funkcije na računalu i potvrditi da se podudara s hash-om koji biste očekivali. Ovo potvrđuje da je datoteka koju imate ista datoteka ponuđena za preuzimanje na web-mjestu Linux distribucije, bez ikakvih izmjena.
Imajte na umu da su "sudari" pronađeni s funkcijama MD5 i SHA-1. To su više različitih datoteka - na primjer, sigurna datoteka i zlonamjerna datoteka - što rezultira istim MD5 ili SHA-1 hashom. Zato biste trebali preferirati SHA-256 kada je to moguće.
Kako usporediti Hash funkcije na bilo kojem operativnom sustavu
Imajući to na umu, pogledajmo kako provjeriti hash datoteke koju ste preuzeli i usporediti je s onom koju ste dobili. Ovdje su metode za Windows, MacOS i Linux. Hashes će uvijek biti identični ako koristite istu funkciju raspršivanja na istoj datoteci. Nije važno koji operacijski sustav koristite.
Windows
Ovaj proces je moguć bez softvera treće strane u sustavu Windows zahvaljujući programu PowerShell.
Da biste započeli, otvorite prozor PowerShell pokretanjem prečaca "Windows PowerShell" u izborniku Start.
Izvedite sljedeću naredbu i zamijenite "C: path.iso" stazom do bilo koje datoteke koju želite pregledati:
Get-FileHash C: file.iso
Bit će potrebno neko vrijeme da se generira hash datoteke, ovisno o veličini datoteke, algoritmu koji koristite i brzini pogona na kojem je datoteka uključena.
Prema zadanim postavkama, naredba će prikazati SHA-256 hash za datoteku. Međutim, možete odrediti algoritam raspršivanja koji želite koristiti ako trebate MD5, SHA-1 ili drugu vrstu raspršivanja.
Izvedite jednu od sljedećih naredbi za određivanje drugačijeg algoritma raspršivanja:
Get-FileHash C: file.iso -Algorithm MD5
Get-FileHash C: file.iso -Algorithm SHA1
Get-FileHash C: file.iso -Algorithm SHA256
Get-FileHash C: file.iso -Algorithm SHA384
Get-FileHash C: file.iso -Algorithm SHA512
Get-FileHash C: file.iso -Algorithm MACTripleDES
Get-FileHash C: file.iso -Algorithm RIPEMD160
Usporedite rezultat hash funkcije s rezultatom koji ste očekivali. Ako je ista vrijednost, datoteka nije oštećena, neovlašteno mijenjana ili izmijenjena u odnosu na izvornik.
MacOS
macOS sadrži naredbe za pregled različitih tipova hasheva. Da biste im pristupili, pokrenite prozor Terminala. Pronaći ćete ga u Finder> Applications> Utilities> Terminal.
mD5
naredba prikazuje MD5 hash datoteke:
md5 / put / u / datoteku
shasum
naredba prikazuje SHA-1 hash datoteke po defaultu. To znači da su sljedeće naredbe identične:
shasum / put / u / datoteku
shasum -a 1 / put / u / datoteku
Da biste prikazali SHA-256 hash datoteke, pokrenite sljedeću naredbu:
shasum -a 256 / put / u / datoteku
Linux
Na Linuxu pristupite terminalu i pokrenite jednu od sljedećih naredbi da biste pregledali hash za datoteku, ovisno o vrsti hasha koji želite pogledati:
md5sum / put / u / datoteku
sha1sum / put / u / datoteku
sha256sum / put / u / datoteku
Neki hashes su kriptografski potpisani za još veću sigurnost
Dok vam hashevi mogu pomoći da potvrdite da datoteka nije mijenjana, ovdje još uvijek postoji jedan put napada. Napadač može steći kontrolu nad mrežnom stranicom distribucije Linuxa i izmijeniti hasheve koji se pojavljuju na njemu ili napadač može izvršiti napad čovjeka u sredini i izmijeniti web-stranicu u tranzitu ako ste pristupali web-lokaciji putem HTTP-a šifrirani HTTPS.
Zato moderne distribucije Linuxa često nude više od hashova navedenih na web stranicama. Oni kriptografski potpisuju ove hasheve kako bi se zaštitili od napadača koji bi mogli pokušati izmijeniti hasheve. Želite provjeriti kriptografski potpis kako biste osigurali da je hash datoteka zapravo potpisala Linux distribucija ako želite biti apsolutno sigurni da hash i datoteka nisu mijenjani.
Provjera kriptografskog potpisa je više uključen proces. Pročitajte naš vodič za provjeru Linux ISO-ova koji nisu mijenjani za potpune upute.
Zasluge za sliku: Jorge Stolfi / Wikimedia