HMAC-Signaturen berechnen
API-Anfragen mit Shared Secret signieren, Webhook-Nutzdaten debuggen — Stripe / GitHub / AWS-ähnliche Signaturen mit passendem HMAC-Algorithmus und Digest-Format.

Weitere Utilities, die gut zu dieser Anleitung passen:
Warum das wichtig ist
Webhooks sind die Rückkanäle der Cloud. Stripe meldet Zahlungen; GitHub Releases. Um Echtheit zu zeigen, schickt der Sender eine HMAC-Signatur über den Body mit gemeinsamem Secret. Lehnt Ihr Verifier jede Signatur ab, erkennen Sie nicht: falsches Secret, falscher Algorithmus oder vom Proxy veränderter Body. Ein HMAC-Tool mit Vorschau verkürzt Debug von Stunden auf Minuten.
Drei echte Szenarien
Payload, Secret, Zeitstempel — HMAC-SHA-256; mit Header Stripe-Signature vergleichen.
Handler kann ausliefern
Kanonische Zeichenkette bauen, mit Shared Secret HMAC, als Header anhängen.
Call wird akzeptiert
Sample-Eingaben des Anbieters — wenn keine Übereinstimmung, liegt die Doku falsch.
Doku bestätigt
Schritt für Schritt
Öffnen Sie den HMAC-Generator.
Nachricht einfügen
Exakte signierte Bytes — typischerweise roher HTTP-Body. Auf Whitespace-Unterschiede achten.
Secret einfügen
Strings standardmäßig UTF-8. „Secret ist Hex“ oder Base64, wenn der Anbieter Binärschlüssel verteilt.
Hash-Algorithmus
SHA-256 moderner Standard; SHA-1 in Altsystemen; SHA-512 selten, unterstützt.
Ausgabeformat
Hex (klein) üblich für Header. Base64 für AWS Sig V4 und ähnliche APIs.
Mit empfangener Signatur vergleichen
Wert aus Header einfügen — Tool markiert Zeichen für Zeichen Match/Mismatch.
Eingaben
Message: t=1731234567.{"id":"evt_123","type":"payment_intent.succeeded"}
Secret: whsec_abc123xyz
Algorithm: SHA-256HMAC-SHA-256 hex
4ed7a40c1e1f9c0bba9d7c1f24eb44a3f0bd06d0c81bd5d4a7f6cf52a6f00f1e
Profi-Tipps
- Body vor Signieren diffen. Viele Webhook-Fehler: Proxy hängt abschließendes Newline an — Signatur über exakte Bytes; ein
\nzählt. - Konstantzeit-Vergleich serverseitig — Aufgabe Ihres Codes, nicht des Browser-Tools (lokal ohne Risiko).
- Secrets ohne Ausfallzeit rotieren — kurz zwei gültige Keys; Tool hilft, beide Signaturen zu prüfen, bevor der alte Key wegfällt.
- Kanonische Zeichenkette dokumentieren — AWS Sig V4 verkettet Methode, Pfad, Header, Body-Hash spezifisch; einmal manuell mit Tool gegenprüfen.
Typische Stolpersteine
Stolperstein
Ein Zeichen trailing newline daneben
IDE-Body hat \n am Ende, Wire-Body nicht — oder umgekehrt. Strippen wie der Verifier strippt — nicht mehr und nicht weniger.
Stolperstein
Secret mit falscher Kodierung
Manche liefern Keys als Base64-String — HMAC braucht dekodierte Bytes, nicht ASCII der Base64-Zeichen. Kodierung laut Doku umschalten.
Stolperstein
UTF-8-BOM in der Nachricht
Führende Bytes EF BB BF ändern den Hash — bei wiederholendem „fast richtig“ Hex-Viewer nutzen.
Wann dieses Tool nicht passt
- Public-Key-Signaturen (RSA, ECDSA, Ed25519) — anderer Verifier. Siehe Digitale Signaturen online verifizieren.
- Symmetrische Verschlüsselung — HMAC authentifiziert nicht vertraulich. Bei Bedarf AES-GCM.
- Passwort-Hashing — nie HMAC für Passwörter — langsames KDF.
FAQ
Was, wenn der Schlüssel kürzer als die Blockgröße ist?
HMAC ergänzt intern — kein manuelles Padding.
Vor oder nach JSON-Formatierung signieren?
Immer nach fixierter kanonischer Form — Neuformatierung danach bricht die Signatur.
Wird etwas an einen Server geschickt?
Nein — HMAC per WebCrypto im Browser.
Nächste Schritte
- Body separat hashen mit dem Hash-Generator, wenn das Protokoll
body_hash-dann-HMAC verlangt. - Vollständige Request-Signatur mit dem Parameter-Signature-Tool.
- Eingehende JWTs mit HS-Algorithmen — Segmente mit dem Kodier-/Dekodiertool dekodieren.