Zum Inhalt springen
TextArray
100% lokal

HMAC-Generator

Berechne HMAC-SHA256-, SHA-1-, SHA-384- oder SHA-512-Signaturen mit einem geheimen Schlüssel.

Eingabe
Ausgabe

HMAC-Generator

Ein HMAC ist ein Hash mit Schlüssel: Nachricht und geheimer Schlüssel gehen gemeinsam in die Berechnung ein, und nur wer denselben Schlüssel besitzt, kann das Ergebnis reproduzieren oder prüfen. Genau damit signieren API-Anbieter ihre Anfragen, und Webhook-Absender wie Zahlungsplattformen und Code-Hosting-Dienste hängen es an jede Zustellung, damit der Empfänger belegen kann, dass die Daten wirklich von ihnen stammen und unterwegs nicht verändert wurden.

Gib den geheimen Schlüssel ein, wähle den Algorithmus der Gegenseite — SHA-256 ist der mit Abstand häufigste — und füge die Nachricht ein. Der Wert erscheint als Hex in Kleinbuchstaben oder als Base64, die beiden Formate, in denen Signaturen ausgetauscht werden. Mit HMAC pro Zeile wird jede Eingabezeile einzeln signiert, praktisch für eine Spalte von Tokens oder IDs. Entwickler greifen dazu beim Debuggen eines Webhook-Handlers, der Signaturen ablehnt, beim Nachrechnen eines Dokumentationsbeispiels oder beim Erzeugen eines Testvektors für einen Unit-Test.

Schlüssel und Nachricht werden als UTF-8-Bytes verarbeitet, genau wie in den meisten Server-SDKs. Stimmt dein Ergebnis nicht mit der Gegenseite überein, liegt es fast immer an den Bytes, nicht an der Mathematik: ein Zeilenumbruch am Ende der Nachricht, CRLF-Zeilenenden, Hex gegen Base64 verglichen, oder ein Schlüssel, den der Dienst Base64- oder Hex-kodiert ausgibt und dekodiert erwartet.

Das Schlüsselfeld ist maskiert und wird bewusst nie in den Browser-Speicher geschrieben. Alles läuft lokal über das eingebaute WebCrypto — wer ein Signiergeheimnis in ein Online-HMAC-Tool einfügt, übergibt es normalerweise dessen Server; hier verlässt es dein Gerät nie.

Häufige Fragen

Wofür wird ein HMAC verwendet?
Zum Nachweis, dass eine Nachricht von jemandem mit dem gemeinsamen Geheimnis stammt und unterwegs nicht verändert wurde. Typische Einsätze: das Signieren von API-Anfragen, das Prüfen von Webhook-Zustellungen von Zahlungs- und Hosting-Plattformen und das Signieren von Tokens. Der Empfänger berechnet den HMAC mit demselben Schlüssel nach und vergleicht.
Worin unterscheidet sich ein HMAC von einem einfachen Hash?
Ein einfaches SHA-256 einer Nachricht kann jeder berechnen, es beweist also nichts über den Absender. Ein HMAC mischt einen geheimen Schlüssel manipulationssicher in die Berechnung — ohne den Schlüssel lässt sich keine gültige Signatur fälschen oder prüfen. Deshalb gilt HMAC-SHA1 in der Praxis weiter als vertretbar, obwohl reines SHA-1 für Kollisionen gebrochen ist; neue Designs sollten trotzdem SHA-256 wählen.
Warum stimmt mein HMAC nicht mit dem des Servers überein?
Fast immer unterscheiden sich die Bytes. Prüfe einen Zeilenumbruch am Ende der Nachricht, CRLF- gegen LF-Zeilenenden, Hex gegen Base64 und das Schlüsselformat — viele Dienste geben das Geheimnis Base64- oder Hex-kodiert aus und erwarten die dekodierten Bytes als Schlüssel. Dieses Tool verwendet den Schlüssel exakt wie getippt, als UTF-8.
Kann jemand aus einem HMAC meinen Schlüssel gewinnen?
Kein praktikabler Angriff gewinnt den Schlüssel aus den Signaturen zurück. Aber wer den Schlüssel besitzt, kann beliebige Nachrichten signieren — behandle Signiergeheimnisse also wie Passwörter: rotiere ein Webhook-Geheimnis nach einem möglichen Leck und lege es nie in ein Repository.
Werden mein Schlüssel und mein Text irgendwo hochgeladen?
Nein. Den HMAC berechnet das eingebaute WebCrypto deines Browsers, das Schlüsselfeld wird nie in den Speicher geschrieben, und weder Schlüssel noch Text verlassen je dein Gerät.