HMAC Generator (Beregn HMAC-SHA256 i browseren)
Et HMAC-beregningsværktøj til at generere HMAC SHA256 lige her. Nøgler og input bliver hverken sendt eller gemt.
Understøtter tekst/Hex/Base64-input og Hex/Base64-output. Beregnes sikkert ved hjælp af browserens standard Crypto API.
Input og output
Denne side udfører beregninger helt i browseren og sender ikke data.
* 'Byte-sekvensen' i henhold til API-specifikationer er vigtig. Hvis nøglen er binær, skal du indtaste den i Hex/Base64.
Indstillinger
Resultaterne vil ændre sig, hvis linjeskiftskoder er forskellige på grund af operativsystem eller kopiering.
Da API-signaturer forudsætter 'eksakt match', anbefales det generelt at beholde det som det er.
Brug
De 3 grundlæggende trin til oprettelse af en HMAC-signatur.
- 1 Indtast nøgle (Vælg Hex / Base64 hvis API-specifikationen er binær)
- 2 Indtast meddelelse (streng der skal signeres / payload)
- 3 Vælg outputformat (Hex / Base64) og kopier
HMAC beregnes på 'byte-sekvenser', ikke 'tegnstrenge'. Selvom de ser ens ud, vil resultaterne variere, hvis tegnkodning, linjeskift eller ekstra mellemrum er forskellige (forudsætter UTF-8).
Eksempler (testvektorer til verifikation)
Klik på 'Indlæs eksempel' for at udfylde inputfelterne.
Almindelige faldgruber
Resultaterne ændrer sig, hvis håndteringen af linjeskift varierer.
Da signaturer forudsætter eksakte matches, kan fjernelse af mellemrum forårsage uoverensstemmelser.
Base64URL bruger typisk +→-, /→_ og udelader =. Tjek venligst specifikationerne.
Eksempel: Indtastning af 'deadbeef' som en 'streng' vs. indtastning som 'byte-sekvens 0xDE 0xAD...'.
Supplerende information
En mekanisme til at oprette en signatur fra en hemmelig nøgle og en meddelelse. En tredjepart kan ikke oprette det samme resultat uden den samme nøgle.
SHA-256 er en 'hash', HMAC er en 'nøgle-hash (signatur)'.
Bruges til API-signaturer, Webhook-verifikation, detektering af manipulation af anmodninger osv.
FAQ
Bliver nøglen gemt?
Den bliver ikke gemt. Dette værktøj beregner i browseren og sender ikke nøgler eller meddelelser til en server. (※Som en sikkerhedsforanstaltning bør du nulstille efter indtastning på en delt pc)
Base64 eller Hex?
Begge bruges. Du kan vælge outputformatet (Hex / Base64 / Base64URL). Vælg venligst i henhold til API-specifikationerne.
Tegnkodning?
Forudsætter UTF-8. Tekstinput konverteres til bytes som UTF-8 til beregningen. Brug Hex/Base64-input til håndtering af binære data.
Forskel mellem HMAC og SHA-256 hash?
SHA-256 er en 'hash', HMAC is en 'nøgle-hash (signatur)'. Det samme resultat kan ikke produceres, medmindre nøglerne matcher.
Outputtet matcher ikke
Almindelige årsager er (1) Nøglehåndtering (tekst vs. binær), (2) linjeskift, (3) mellemrum, (4) Base64URL. Tjek venligst faldgruberne ovenfor i rækkefølge.