Hoppa till innehåll
TextArray

Vad är en hash? MD5, SHA-256 och när du faktiskt behöver HMAC

Blog /

Hash-funktioner förvandlar vilken inmatning som helst till ett fingeravtryck med fast längd, men inte alla hash skapas lika. Att välja mellan MD5, SHA-256 och HMAC innebär skillnaden mellan en fungerande säkerhetskontroll och en som misslyckas tyst. Den här guiden förklarar vad var och en gör, när den ska användas och hur du verifierar dina egna hash direkt i din webbläsare.

Vad är en hashfunktion?

En hashfunktion tar vilken mängd data som helst – text, en fil, ett lösenord – och producerar en teckensträng med fast längd. Samma indata producerar alltid samma utdata, vilket gör hash användbara för verifiering. Ändra även ett tecken i inmatningen, och hashen ändras helt. Den här enkelriktade egenskapen (du kan inte vända en hash för att få tillbaka originaldata) är det som gör den användbar för säkerheten.

MD5: snabb men trasig

MD5 producerar en 128-bitars hash och var en gång standarden för kontrollsummor och filverifiering. Idag är det kryptografiskt trasigt - kollisioner (två olika ingångar som producerar samma hash) är snabba att hitta. MD5 visas fortfarande i äldre system och för icke-säkerhetskontrollsummor, men aldrig för autentisering eller lösenord. Använd Hash generator för att se MD5-utgången, men nå SHA-256 för allt som betyder något.

SHA-256: den nuvarande standarden

SHA-256 (del av SHA-2-familjen) producerar en 256-bitars hash och är det moderna valet för kryptografiskt arbete. Det är tillräckligt snabbt för de flesta applikationer, motståndskraftigt mot kända attacker och stöds brett. Du kommer att se SHA-256 används i blockkedjesystem, certifikatfingeravtryck och lösenordshasning. De Hash generator stöder SHA-256 som standardalgoritm.

HMAC: när du behöver en hemlighet

En vanlig hashfunktion är deterministisk – vem som helst kan verifiera hashen. En HMAC (Hash-baserad meddelandeautentiseringskod) blandas in en hemlig nyckel, så bara någon som kan nyckeln kan producera rätt hash. Detta är viktigt för API:er: servern och klienten delar en hemlighet, var och en signerar sina meddelanden med den och mottagaren verifierar att signaturen matchar. Detta bevisar att meddelandet kom från den påstådda avsändaren och att det inte har manipulerats. De HMAC generator låter dig testa detta med din egen hemliga nyckel.

När man ska använda varje tillvägagångssätt

  1. Använd vanligt SHA-256 för filintegritetskontroller, lösenordshasning (med salt och en långsam funktion som bcrypt) och offentliga fingeravtryck.
  2. Använda HMAC för API-förfrågningssignering, webhook-verifiering och alla scenarier där båda parter delar en hemlighet.
  3. Hoppa MD5 för allt säkerhetsrelaterat. Använd den endast när du interagerar med äldre system som kräver det.

Din data finns kvar på din enhet

Både Hash generator och HMAC generator körs helt i din webbläsare. Din text skickas aldrig till en server – den hashas lokalt på din enhet, fungerar offline efter att sidan har laddats och kräver inget konto eller inloggning. Det betyder att du säkert kan hasha känslig information som API-nycklar för testning utan att exponera dem för internet.

Bonus: mät entropi

Om du genererar hemligheter eller lösenord, Shannon entropi kalkylatorn visar hur mycket slumpmässighet (och därmed säkerhet) som finns i en sträng. Högre entropi betyder svårare att gissa. Använd den för att verifiera att dina genererade hemligheter faktiskt är slumpmässiga innan du distribuerar dem.