30Aug

Vad är MD5, SHA-1 och SHA-256 Hashes, och hur kontrollerar jag dem?

Du ser ibland MD5, SHA-1 eller SHA-256 hashes som visas tillsammans med nedladdningar under dina internetresor, men inte riktigt kända vad de är. Dessa till synes slumpmässiga strängar av text tillåter dig att verifiera filer du laddar ner inte är skadade eller manipulerade med. Du kan göra det med kommandon inbyggda i Windows, MacOS och Linux.

Hur hashes fungerar och hur de används för dataförklaring

Hashes är produkterna av kryptografiska algoritmer utformade för att producera en rad tecken. Ofta har dessa strängar en fast längd, oavsett storleken på ingångsdata. Ta en titt på ovanstående diagram och du kommer att se att både "Fox" och "The Red Fox hoppar över den blå hunden" ger samma längd.

Jämför nu det andra exemplet i diagrammet till tredje, fjärde och femte. Det kommer du att se, trots en väldigt liten förändring av inmatningsdata, är de resulterande hasherna alla väldigt olika från varandra.Även om någon ändrar en mycket liten del av inmatningsdata, förändras hash dramatiskt.

MD5, SHA-1 och SHA-256 är alla olika hashfunktioner. Programvaruutvecklare tar ofta en filhämtning - som en Linux. iso-fil, eller till och med en Windows. exe-fil - och kör den via en hash-funktion. De erbjuder då en officiell lista över hasharna på sina webbplatser.

På så sätt kan du ladda ner filen och sedan köra hashfunktionen för att bekräfta att du har den riktiga, ursprungliga filen och att den inte har skadats under nedladdningsprocessen eller manipulerats med skadligt. Som vi såg ovan kommer även en liten ändring av filen att dramatiskt förändra hasen.

Dessa kan också vara användbara om du har en fil du har från en inofficiell källa och du vill bekräfta att den är legitim. Låt oss säga att du har en Linux. ISO-fil du kom ifrån någonstans och du vill bekräfta att den inte har manipulerats. Du kan leta upp hash för den specifika ISO-filen online på Linux-distributionens hemsida. Du kan sedan köra den via hash-funktionen på din dator och bekräfta att den matchar hash-värdet du förväntar dig att ha. Detta bekräftar att filen du har är exakt samma fil som erbjuds för nedladdning på Linux-distributions webbplats, utan några ändringar.

Så här jämför du Hash-funktioner på vilket operativsystem som helst

Med det i åtanke, låt oss se hur du kontrollerar hash för en fil du laddat ner, och jämföra den med den du får. Här är metoder för Windows, MacOS och Linux. Hackarna kommer alltid att vara identiska om du använder samma hashing-funktion på samma fil. Det spelar ingen roll vilket operativsystem du använder.

Windows

Denna process är möjlig utan någon tredje parts programvara på Windows tack vare PowerShell.

För att komma igång, öppna ett PowerShell-fönster genom att starta "Windows PowerShell" -genvägen i din Start-meny.

Kör följande kommando, ersätt "C: \ path \ to \ file.iso" med sökvägen till vilken fil som helst som du vill visa hash av:

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

Det kommer attta lite tid att generera hash för filen, beroende på filens storlek, den algoritm du använder och hastigheten på enheten som filen är på.

Som standard visar kommandot SHA-256-hash för en fil. Du kan dock ange den hashingalgoritm du vill använda om du behöver en MD5, SHA-1 eller annan typ av hash.

Kör en av följande kommandon för att ange en annan hashingalgoritm:

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

Jämför resultatet av hash-funktionen till resultatet som du förväntade dig att se. Om det är samma värde har filen inte skadats, manipulerats eller på annat sätt ändrats från originalet.

img_5894fdde80f06

macOS

macOS innehåller kommandon för visning av olika typer av haschar. För att komma åt dem, starta ett terminalfönster. Du hittar den på Finder & gt;Applikationer & gt;Verktyg & gt;Terminal.

Kommandot md5 visar MD5-hash för en fil:

md5 /path/to/-fil

Kommandot Shasum visar som standard SHA-1-hash för en fil. Det betyder att följande kommandon är identiska:

-shasum /path/to/-filskasum -a 1 /path/to/-fil

För att visa SHA-256-hash för en fil, kör följande kommando:

shasum -a 256 /path/to/-fil

Linux

På Linux kan du få tillgång till enTerminal och kör en av följande kommandon för att visa hash för en fil beroende på vilken typ av hash du vill visa:

md5sum /path/to/-fil sha1sum /path/to/-fil sha256sum /path/to/-fil

Några Hashes är kryptografiskt signerade för ännu mer säkerhet

Medan hasheskan hjälpa dig att bekräfta att en fil inte manipulerats, det finns fortfarande en aveny av attack här. En angripare kan få kontroll över en Linux-distributions webbplats och ändra de hash som visas på den, eller en angripare kan utföra en man-i-mitten attack och ändra webbsidan i transit om du åtkomst till webbplatsen via HTTP istället förkrypterad HTTPS.

Därför ger moderna Linux-distributioner ofta mer än hash listade på webbsidor. De signerar kryptografiskt dessa hash för att skydda mot attacker som kan försöka ändra hasherna. Du vill verifiera kryptografiska signaturen för att se till att hashfilen faktiskt har skrivits av Linux-distributionen om du vill vara helt säker på att hash och filen inte var manipulerade med.

Verifiering av kryptografiska signaturen är en mer involverad process. Läs vår guide för att verifiera Linux ISOs har inte manipulerats för fullständiga instruktioner.

Bildkrediter: Jorge Stolfi / Wikimedia