Was ist HMAC-Generator?

Ein HMAC-Generator erstellt schlüsselbasierte Hash-Nachrichtenauthentifizierungscodes mithilfe eines geheimen Schlüssels und eines Hash-Algorithmus (SHA-256, SHA-512 usw.). HMACs verifizieren sowohl die Datenintegrität als auch die Authentizität und werden häufig in der API-Authentifizierung, Webhook-Signaturen und JWT-Tokens verwendet.

HMAC mischt einen geheimen Schlüssel in den Hash, sodass nur Personen mit diesem Schlüssel die Signatur verifizieren können. Das Tool unterstützt SHA-1, SHA-256, SHA-384 und SHA-512 mit Hex-, Base64-, Base64URL- oder roher Binärausgabe und bietet Ein-Klick-Vorlagen für die Webhooks von GitHub, Stripe, Slack und Shopify, die den passenden Algorithmus und das Header-Präfix vorausfüllen. Die Nachricht kann als reiner Text eingegeben oder bereits als Hex, Base64 oder Base64URL kodiert eingefügt werden — sie wird vor dem Signieren in rohe Bytes dekodiert. Eine Live-Byte-Zählung markiert Schlüssel, die kürzer als die produktionssicheren 32 Bytes sind, die Signatur wird beim Tippen neu berechnet, und ein Prüffeld toleriert die Präfixe sha256= oder v0=, die diese Anbieter senden. Nachricht und Schlüssel werden auf Ihrem Gerät verarbeitet.

Anleitung

  1. Schritt 1 — Geben Sie Ihre Nachricht und den geheimen Schlüssel ein.
  2. Schritt 2 — Wählen Sie eine Webhook-Vorlage (GitHub, Stripe, Slack, Shopify) oder legen Sie selbst den Hash-Algorithmus (SHA-1, SHA-256, SHA-384 oder SHA-512) und die Ausgabekodierung (Hex, Base64, Base64URL oder Binär) fest. Um eine bereits kodierte Nutzlast einzufügen, stellen Sie die Nachrichteneingabe auf Hex oder Base64 um.
  3. Schritt 3 — Kopieren Sie die generierte HMAC-Signatur zur Verwendung in API-Headern oder zur Webhook-Verifizierung.

Wann verwenden

  • Webhook-Payloads signieren, damit der Empfänger Absender und Unversehrtheit prüfen kann.
  • Anfrage-Signaturen für AWS Signature Version 4 oder ähnliche API-Auth-Schemata erzeugen.
  • JWT-Signaturen mit den Algorithmen HS256, HS384 oder HS512 erstellen.

Ergebnis

Ihre Zahlungs-API erfordert HMAC-SHA256-signierte Anfragen. Geben Sie den Anfragekörper als Nachricht ein, Ihr API-Geheimnis als Schlüssel, und kopieren Sie die resultierende Signatur in den X-Signature-Header.

Häufige Fragen

Wie unterscheidet sich HMAC von einem schlichten SHA-256 über Nachricht+Schlüssel?
HMAC nutzt eine festgelegte Doppel-Hash-Konstruktion mit inner und outer gepaddetem Schlüssel. Das schützt vor Längenerweiterungs-Angriffen, denen naive hash(Schlüssel‖Nachricht)-Schemata auf SHA-1 oder SHA-256 unterliegen.
Hex oder Base64 als Ausgabe?
Was die API bzw. der Webhook-Anbieter vorgibt. Hex ist in HTTP-Headern üblich (Stripe, GitHub), Base64 in JSON-Bodies und JWTs. Die Signatur bleibt identisch, nur die Kodierung wechselt.
Wie lang sollte der geheime Schlüssel sein?
Mindestens 32 Byte (256 Bit) Zufallsdaten, idealerweise aus einer kryptografischen Quelle. Kürzer schwächt die Sicherheit; länger als die Blockgröße des Hashes (64 Byte bei SHA-256) bringt nichts, weil HMAC den Schlüssel intern komprimiert.
Warum weicht meine Signatur von der des APIs ab?
Fast immer ist der signierte Inhalt selbst nicht identisch. Leerzeichen, Zeilenenden, Parameterreihenfolge, URL-Encoding, Zeitstempel: alles zählt. Reproduzieren Sie das Rezept des Anbieters Byte für Byte.
Ist HMAC-SHA1 noch sicher?
Für neue Systeme HMAC-SHA256 oder stärker bevorzugen. HMAC-SHA1 bleibt technisch sicher, da die Konstruktion keine Kollisionsresistenz braucht, aber SHA-1 ganz hinter sich zu lassen ist langfristig die saubere Wahl.

Ähnliche Tools