If-Koubou

Što su MD5, SHA-1 i SHA-256 Hashes, i kako ih provjeriti?

Što su MD5, SHA-1 i SHA-256 Hashes, i kako ih provjeriti? (Kako da)

Ponekad ćete vidjeti isječke MD5, SHA-1 ili SHA-256 zajedno s preuzimanjima tijekom internetskih putovanja, ali zapravo ne znate što su. Ove naizgled nasumične nizove teksta omogućuju vam da potvrdite da datoteke koje ste preuzeli nisu oštećene ili neovlaštene. To možete učiniti s naredbama ugrađenim u Windows, MacOS i Linux.

Kako funkcioniraju napadi i kako se koriste za provjeru podataka

Hashes su proizvodi kriptografskih algoritama dizajnirani za izradu niz znakova. Često te žice imaju fiksnu duljinu, bez obzira na veličinu ulaznih podataka. Pogledajte gore navedeni grafikon i vidjet ćete da obje "lisica" i "Crveni lisica skokne preko plavog psa" daju istu dužinu.

Sada usporedite drugi primjer u grafikonu na treći, četvrti i peti. Vidjet ćete da, usprkos vrlo maloj promjeni ulaznih podataka, rezultirajući hashe su vrlo različite jedna od druge. Čak i ako netko mijenja vrlo mali dio ulaznih podataka, hash će dramatično promijeniti.

MD5, SHA-1 i SHA-256 sve su različite hash funkcije. Softver kreatori često preuzima preuzimanje datoteke kao što je Linux .iso datoteka ili čak i Windows .exe datoteka i pokrenite ga pomoću hash funkcije. Oni zatim nude službeni popis haseva na svojim web stranicama.

Na taj način možete preuzeti datoteku, a zatim pokrenuti hash funkciju kako biste potvrdili da imate pravu originalnu datoteku i da niste bili oštećeni tijekom postupka preuzimanja. Kao što smo već vidjeli, čak i mala promjena u datoteci dramatično će promijeniti hasnu.

To također može biti korisno ako imate datoteku koju ste dobili od neslužbenog izvora i želite potvrditi da je legitimna. Pretpostavimo da imate Linux .ISO datoteku koju ste dobili negdje i želite potvrditi da nije mijenjana. Možete pregledati hash te specifične ISO datoteke na mreži na Linux distribuciji. Zatim ga možete pokrenuti kroz hash funkciju na računalu i potvrditi da odgovara hash vrijednosti koju biste očekivali da će imati. To potvrđuje da ste dobili datoteku koja je ista datoteka koja se nudi za preuzimanje na web stranici Linux distribucije, bez ikakvih izmjena.

Imajte na umu da su pronađeni "sudari" s funkcijama MD5 i SHA-1. To su više različitih datoteka - na primjer, sigurna datoteka i zlonamjerna datoteka - koji rezultiraju istim raspršivačem MD5 ili SHA-1. Zato biste trebali radije SHA-256, kada je to moguće.

Kako Usporediti Hash funkcije na bilo kojem operacijskom sustavu

Imajući to na umu, pogledajmo kako provjeriti hash datoteke koju ste preuzeli i usporedili s onom koju ste dobili. Evo metoda za Windows, MACOS i Linux. Ispisi će uvijek biti identični ako upotrebljavate istu funkciju raspršivanja na istoj datoteci. Nije bitno koji operacijski sustav koristite.

Windows

Ovaj proces je moguć bez bilo kojeg softvera treće strane u sustavu Windows zahvaljujući PowerShellu.

Da biste započeli, otvorite prozor PowerShell tako da pokrenete prečac "Windows PowerShell" na izborniku Start.

Pokrenite sljedeću naredbu i zamijenite "C: \ put \ do \ file.iso" s putom do bilo koje datoteke koju želite pregledati hash:

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

Trebat će neko vrijeme za generiranje hash datoteke, ovisno o veličini datoteke, algoritmu koji koristite i brzini pogona na kojoj se datoteka nalazi.

Prema zadanim postavkama, naredba će prikazati SHA-256 hash za datoteku. Međutim, možete odrediti algoritam raspršivanja koji želite koristiti ako vam je potrebna MD5, SHA-1 ili druga vrsta hash-a.

Pokrenite jednu od sljedećih naredbi da biste odredili drugi algoritam raspršivanja:

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

Usporedite rezultat hash funkcije s rezultatom koji ste očekivali. Ako je ista vrijednost, datoteka nije oštećena, neovlaštena ili na drugi način izmijenjena iz izvornika.

MacOS

macOS uključuje naredbe za pregled različitih vrsta haseva. Da biste im pristupili, pokrenite prozor Terminal. Pronaći ćete ga na Finder> Applications> Utilities> Terminal.

mD5 naredba prikazuje MD5 hash datoteke:

md5 / put / to / file

shasum naredba prikazuje defaultno SHA-1 hash datoteke. To znači da su sljedeće naredbe identične:

shasum / put / to / file
shasum -a 1 / put / u / datoteku

Da biste prikazali datoteku SHA-256 hash, pokrenite sljedeću naredbu:

shasum -a 256 / path / to / file

Linux

Na Linuxu pristupite Terminalu i pokrenite jednu od sljedećih naredbi da biste vidjeli hash za datoteku, ovisno o vrsti hash-a koju želite pregledati:

md5sum / path / to / file
sha1sum / path / to / file
sha256sum / path / to / file

Neki se napadi kriptografski potpišu za još veću sigurnost

Dok hashe mogu vam pomoći da potvrdite da datoteka nije bila neovlaštena, tu je još jedan način napada. Napadač može dobiti kontrolu nad web stranicom Linux distribucije i izmijeniti hashe koji se pojavljuju na njemu, ili napadač može izvršiti napad na čovjeka u sredini i mijenjati web stranicu u tranzitu ako ste pristupili web stranici putem HTTP-a umjesto kodiran HTTPS.

Zato su moderne Linux distribucije često pružaju više od hasesa navedenih na web stranicama. Oni kriptografski potpišu ove hashe kako bi zaštitili od napadača koji bi mogli pokušati modificirati hashe.Potrebno je potvrditi kriptografski potpis kako biste osigurali da je hash datoteka zapravo potpisao Linux distribucija ako želite biti apsolutno sigurni da hash i datoteka nisu bili neovlašteni.

Potvrđivanje kriptografskog potpisa je više uključen proces. Pročitajte naš vodič za provjeru Linuxa ISO-ovi nisu mijenjani za potpune upute.

Slikovni kredit: Jorge Stolfi / Wikimedia