HMAC-generator (Beräkna HMAC-SHA256 lokalt)
Ett verktyg för att generera HMAC-SHA256 här och nu. Nycklar och indata blir varken skickade eller lagrade.
Stöder Text, Hex och Base64 som indata. Beräknas säkert med webbläsarens standard Crypto API.
Indata och utdata
Denna sida utför beräkningar helt inne i webbläsaren och skickar inte data vidare.
* 'Bytesekvensen' enligt API-specifikationerna är viktig. Om nyckeln är binär, ange den i Hex eller Base64.
Alternativ
Resultaten ändras om radbrytningskoder skiljer sig pga. OS eller kopiering.
Eftersom API-signaturer förväntar exakt matchning, är det vanligtvis bäst att behålla texten som den är.
Användning
De 3 grundläggande stegen för att skapa en HMAC-signatur.
- 1 Ange nyckel (Välj Hex / Base64 om API:et förväntar binära data)
- 2 Ange meddelandet (Strängen som ska signeras)
- 3 Välj utdataformat (Hex / Base64) och kopiera
HMAC beräknas på 'bytesekvenser', inte 'teckensträngar'. Även om de ser lika ut, varierar resultaten om teckenkodning, radbrytningar eller extra blanksteg skiljer sig (antar UTF-8).
Exempel (Testvektorer för verifiering)
Klicka på 'Ladda exempel' för att fylla i fälten.
Vanliga fallgropar
Resultatet ändras om hantering av radbrytning varierar.
Eftersom signaturer förväntar exakt matchning kan borttagning av blanksteg leda till fel.
Base64URL använder vanligtvis +→-, /→_, och utelämnar =. Kolla dina specifikationer.
Exempel: Att ange 'deadbeef' som en 'sträng' kontra att ange den som 'bytesekvens 0xDE 0xAD...'.
Tilläggsinformation
En mekanism för att skapa en signatur från en hemlig nyckel och ett meddelande. En tredje part kan inte skapa samma resultat utan den hemliga nyckeln.
SHA-256 är en 'hash', HMAC är en 'nycklad hash (signatur)'.
Används för API-signaturer, Webhook-verifiering, upptäckt av manipulering av förfrågningar etc.
FAQ
Lagras nyckeln?
Den lagras inte. Detta verktyg beräknar allt i webbläsaren och skickar inte nycklar eller meddelanden till en server. (Som en försiktighetsåtgärd bör du nollställa efter användning på en delad dator).
Base64 eller Hex?
Båda används. Du kan välja utdataformat (Hex / Base64 / Base64URL). Välj enligt dina API-specifikationer.
Teckenkodning?
Antar UTF-8. Textindata konverteras till bytes som UTF-8 för beräkning. Använd Hex eller Base64 för att hantera binära data.
Skillnad mellan HMAC och SHA-256 hash?
SHA-256 är en hash, HMAC är en signatur som kräver nyckel. Man kan inte producera samma resultat utan att nycklarna stämmer överens.
Utdata stämmer inte
Vanliga orsaker är (1) Nyckelhantering (Text mot Binär), (2) Radbrytningar, (3) Blanksteg, (4) Base64URL. Kolla fallgroparna ovan.