JWT-Encoder (Erzeugen & Signieren)

Erzeugen Sie aus Header- und Payload-JSON einen mit HMAC (HS256, HS384 oder HS512) signierten JWT (JSON Web Token) – direkt in Ihrem Browser. Nichts, auch nicht der geheime Schlüssel, wird an einen Server gesendet.

Unterstützte HMAC-Signaturalgorithmen

Algorithmus Hashfunktion Signaturlänge Beschreibung
HS256 SHA-256 256 Bit (32 Byte) Die am weitesten verbreitete Standard-HMAC-Signatur. Sie ist Standard in vielen Implementierungen, unter anderem bei OAuth-2.0- und OpenID-Connect-ID-Tokens.
HS384 SHA-384 384 Bit (48 Byte) Eine mittlere Option für den Fall, dass eine längere Signatur als bei HS256 für zusätzliche Sicherheitsmarge gewünscht ist.
HS512 SHA-512 512 Bit (64 Byte) Hat die längste Signaturlänge und wird meist mit einem ausreichend langen, zufälligen geheimen Schlüssel kombiniert.

Tipps

  • Der JWT wird vollständig mit der Web Crypto API Ihres Browsers signiert – Header, Payload und geheimer Schlüssel werden niemals an den Server von toolbase.cc gesendet.
  • Beim Wechseln des Signaturalgorithmus (HS256/HS384/HS512) wird das Feld alg im Header-JSON automatisch aktualisiert. Bearbeiten Sie den Header direkt, wenn Sie weitere Claims wie kid hinzufügen möchten.
  • Dieses Tool unterstützt ausschließlich HMAC-Algorithmen (symmetrischer Schlüssel). Benötigen Sie ein Public-Key-Verfahren wie RS256 oder ES256, verwenden Sie stattdessen eine serverseitige Bibliothek, etwa ein JWT-Paket für Node.js.
  • Denken Sie nach dem Bearbeiten von Header oder Payload daran, erneut auf „JWT erzeugen“ zu klicken – sonst zeigt das Ergebnis weiterhin den mit den vorherigen Eingaben signierten Token.
  • Um den Inhalt eines gerade erzeugten JWT zu prüfen, fügen Sie ihn in das begleitende Tool JWT-Decoder ein und kontrollieren Sie Header und Payload.

Häufig gestellte Fragen

Nein, das empfehlen wir nicht. Zwar erfolgt das Signieren selbst sicher im Browser, doch einen Produktionsschlüssel in ein Browser-Tool einzugeben ist aus Sicherheitssicht keine gute Praxis. Dieses Tool ist für die Überprüfung des API-Verhaltens während der Entwicklung oder zu Lernzwecken gedacht.

HS256 ist ein symmetrisches Verfahren, bei dem Absender und Empfänger denselben geheimen Schlüssel teilen, während RS256 ein Public-Key-Verfahren (asymmetrisch) ist, bei dem ein privater Schlüssel signiert und ein öffentlicher Schlüssel verifiziert. Dieses Tool unterstützt ausschließlich die HMAC-Familie – HS256, HS384 und HS512 – und unterstützt keine Public-Key-Verfahren wie RS256 oder ES256.

Ja, Sie können das Header-JSON direkt bearbeiten. Stimmen jedoch der ausgewählte Algorithmus (der tatsächlich zur Signaturberechnung verwendet wird) und der Wert des Felds alg nicht überein, kann eine andere Implementierung den Token bei der Prüfung mit einem Fehler ablehnen – achten Sie daher darauf, dass beide stets übereinstimmen.

Sie können die erzeugte JWT-Zeichenfolge in das begleitende Tool „JWT-Decoder“ einfügen, um Header und Payload sofort zu überprüfen. Die tatsächliche Gültigkeit der Signatur lässt sich jedoch nur durch die serverseitige Prüflogik, die denselben geheimen Schlüssel besitzt, endgültig bestätigen.
ツールくん

Übrigens – Warum das Signieren eines JWT vollständig im Browser möglich ist

JWT-Signaturalgorithmen lassen sich grob in zwei Familien einteilen: „symmetrische“ Algorithmen (HMAC, also HS256/HS384/HS512), bei denen Absender und Empfänger denselben geheimen Schlüssel teilen, und „Public-Key“-Algorithmen (wie RS256 und ES256), bei denen ein privater Schlüssel signiert und ein öffentlicher Schlüssel verifiziert. Da Ersteres vollständig mit crypto.subtle.sign() der vom W3C standardisierten Web Crypto API (SubtleCrypto) berechnet werden kann – ohne jede externe Bibliothek –, beschränkt sich dieses Tool bewusst auf HMAC-Algorithmen.

Die Sicherheit einer HMAC-Signatur hängt vollständig davon ab, wie schwer der geheime Schlüssel zu erraten ist, nicht vom Inhalt des Headers oder Payloads. RFC 7518 (JSON Web Algorithms) empfiehlt für HS256 eine Schlüssellänge von mindestens 256 Bit (32 Byte); wird ein kurzes Wort oder eine Zeichenfolge aus einem Wörterbuch als geheimer Schlüssel verwendet, besteht die Gefahr, dass die Signatur per Brute-Force gefälscht wird. In echten Produktivumgebungen sollte eine ausreichend lange, zufällig generierte Zeichenfolge als geheimer Schlüssel verwendet werden.

Dieses Tool ist ein Entwickler-Hilfsmittel für die Überprüfung des API-Verhaltens während der Entwicklung oder zum Testen der Signaturprüf-Logik von Webhooks. Der von Ihnen eingegebene geheime Schlüssel wird nur im Speicher Ihres Browsers verarbeitet und niemals extern übertragen, aber das Risiko, dass ein gemeinsam genutztes Gerät oder eine Browser-Erweiterung die Zwischenablage oder Eingaben mitliest, ist nicht null. Wir empfehlen dringend, niemals einen tatsächlich in der Produktion verwendeten Schlüssel in ein solches Tool einzugeben, selbst nicht nur zu Testzwecken.