0

HMAC-generator och -verifierare

Generera och verifiera HMAC-meddelandeautentiseringskoder med SHA-256, SHA-384, SHA-512 eller SHA-1 och en hemlig nyckel, helt i din webbläsare.

🔒 Bearbetas helt i din webbläsare – ingenting du anger här laddas någonsin upp.

Bearbetar... 0%
Importerar nyckel
Beräknar HMAC
Klar

Resultat

En HMAC (Hash-based Message Authentication Code) är en nyckelbaserad kryptografisk konstruktion som kombinerar en hemlig nyckel med ett meddelande genom en hashfunktion som SHA-256. Till skillnad från en vanlig hash, som vem som helst kan räkna ut enbart från meddelandet, kan en HMAC bara reproduceras av någon som har samma hemliga nyckel – det är det som gör den till en autentiseringskod och inte bara en kontrollsumma.

Detta är den grundläggande skillnaden mot ett vanligt hashvärde: vårt eget Hash Generator-verktyg beräknar icke-nyckelbaserade hashvärden som MD5 eller SHA-256, vilka är utmärkta för att upptäcka oavsiktliga fel men inte bevisar något om vem som skapade datat, eftersom vem som helst kan generera samma hash. En HMAC bevisar både integritet (meddelandet har inte ändrats) och autenticitet (undertecknaren kände den delade hemligheten), vilket är anledningen till att HMAC är den vanliga byggstenen bakom signering av API-förfrågningar, JWT:s HS256/HS384/HS512-algoritmer och TLS-postautentisering.

Det vanligaste användningsfallet i verkligheten är verifiering av webhook-signaturer. Tjänster som Stripe, GitHub och Shopify signerar varje webhook-payload med HMAC-SHA256 med hjälp av en hemlighet du konfigurerar och skickar den resulterande signaturen i en förfrågningsheader. Din server förväntas räkna ut HMAC över den råa payloaden med samma hemlighet och jämföra den med huvudets värde – om de matchar vet du att förfrågan verkligen kom från den tjänsten och inte manipulerades under överföringen. Verktygets verifieringsläge återskapar exakt den kontrollen: klistra in payloaden, den delade hemligheten och den mottagna signaturen så får du direkt besked om matchning eller ej.

Allt körs lokalt via webbläsarens inbyggda Web Crypto API (crypto.subtle.importKey och crypto.subtle.sign), så den hemliga nyckeln, meddelandeinnehållet och den resulterande signaturen lämnar aldrig din maskin – inget laddas upp till någon server, vilket är viktigt eftersom HMAC-hemligheter är exakt den typ av värde du aldrig ska klistra in i ett slumpmässigt onlineverktyg som kan logga det.