Toolbeschreibung

Dieses Tool erstellt und signiert JWTs in Ihrem Browser. Wählen Sie einen Algorithmus aus, bearbeiten Sie Header und Payload als JSON, und der signierte Token wird sofort angezeigt. Es eignet sich zum Testen einer API, zum Ausprobieren einer neuen Auth-Konfiguration oder zum Erstellen eines Tokens für eine lokale Umgebung. Alles geschieht in Ihrem Browser mithilfe der Web Crypto API; Ihre Geheimnisse und Schlüssel werden nirgendwohin gesendet.

Beim Öffnen des Tools wird ein zufälliges Secret erstellt. Außerdem wird beim ersten Auswählen eines Algorithmus, der ein Schlüsselpaar benötigt, ein neues Schlüsselpaar erstellt. So erhalten Sie ohne Vorbereitung einen funktionsfähigen Token. Fügen Sie Ihr eigenes Secret oder Ihren privaten Schlüssel ein, um Tokens zu erstellen, die Ihr Server akzeptiert.

Funktionen

  • Signiert mit HS256, HS384, HS512, RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512 und EdDSA (Ed25519).
  • Akzeptiert das HMAC-Secret als Text, Base64 oder Hexadezimalwert und warnt, wenn es kürzer ist, als RFC 7518 erlaubt – eine Länge, die viele Bibliotheken ablehnen.
  • Liest private Schlüssel als PKCS #8 PEM (BEGIN PRIVATE KEY), PKCS #1 PEM (BEGIN RSA PRIVATE KEY), SEC 1 PEM (BEGIN EC PRIVATE KEY) oder JWK ein.
  • Zeigt den öffentlichen Schlüssel als PEM und als JWK mit kid, use und alg an – bereit zum Hinzufügen zu einem JWKS.
  • Setzt beim Signieren des Tokens exp, iat, nbf und eine zufällige jti und zeigt die Signatur- und Ablaufzeiten in Ihrer Zeitzone an.
  • Erklärt, was mit einem Schlüssel nicht stimmt: ein öffentlicher statt eines privaten Schlüssels, ein Schlüssel des falschen Typs oder der falschen Kurve, ein RSA-Schlüssel mit weniger als 2048 Bit oder ein passwortgeschützter Schlüssel.
  • Bewahrt für jeden Schlüsseltyp einen Schlüssel auf, sodass Sie zwischen RS256 und ES256 wechseln können, ohne den eingefügten Schlüssel zu verlieren.
  • Erstellt nicht signierte Tokens mit alg auf none gesetzt, um zu testen, ob Ihr Server sie ablehnt.

Beispiele

Bei HS256, dem Header {"typ": "JWT"}, dem Payload {"sub": "1234567890", "name": "Erika Mustermann"} und der Einstellung „Läuft ab in“ auf 1 Stunde wird der signierte Payload zu:

{
  "sub": "1234567890",
  "name": "Erika Mustermann",
  "iat": 1790000000,
  "exp": 1790003600
}

Tipps

Der Token wird jedes Mal neu signiert, wenn Sie etwas ändern, sodass iat und exp immer ab der aktuellen Zeit berechnet werden. Verwenden Sie die Schaltfläche unter dem Token, um ihn erneut zu signieren, ohne etwas zu ändern.