JWT-Decoder
Fügen Sie einen JWT (JSON Web Token) ein, um Header und Payload sofort zu dekodieren – inklusive Prüfung des Ablaufdatums (exp). Es findet keine Signaturprüfung statt, ein geheimer Schlüssel ist nicht erforderlich.
Wichtige Registered Claims im Überblick
| Claim | Bezeichnung | Beschreibung |
|---|---|---|
| iss | Issuer (Aussteller) | String oder URL, die den Aussteller des Tokens identifiziert. |
| sub | Subject (Subjekt) | Das Objekt, auf das sich der Token bezieht (in der Regel eine Benutzer-ID). |
| aud | Audience (Empfänger) | Kennung des vorgesehenen Empfängers bzw. der API, für die der Token bestimmt ist. |
| exp | Expiration Time (Ablaufzeit) | Zeitpunkt (in Unix-Sekunden), ab dem der Token nicht mehr akzeptiert werden darf. |
| nbf | Not Before (gültig ab) | Zeitpunkt (in Unix-Sekunden), vor dem der Token nicht akzeptiert werden darf. |
| iat | Issued At (Ausstellungszeit) | Zeitpunkt (in Unix-Sekunden), zu dem der Token ausgestellt wurde. |
| jti | JWT ID | Eindeutige Kennung des Tokens, häufig genutzt zur Erkennung von Replay-Angriffen. |
Tipps
- Der eingefügte JWT wird ausschließlich per JavaScript im Browser verarbeitet und niemals an die Server von toolbase.cc übertragen – personenbezogene Daten oder Anmeldeinformationen im Token bleiben also geschützt.
- Ein JWT ist ein Base64URL-String aus drei durch Punkte getrennten Teilen: Header, Payload und Signatur. Header und Payload sind reiner Klartext, den jeder dekodieren kann (Base64 ist eine Kodierung, keine Verschlüsselung) – vertrauliche Daten wie Passwörter gehören daher nicht in den Payload.
- Schlägt eine API-Anfrage wegen eines abgelaufenen Tokens mit einem 401-Fehler fehl, lässt sich die Ursache meist am schnellsten klären, indem man mit diesem Tool den Wert des
exp-Claims prüft. - Der Signaturalgorithmus lässt sich im
alg-Header ablesen. Implementierungen, diealg: nonezulassen, sind anfällig für den bekannten JWT-"alg=none"-Angriff, der die Signaturprüfung umgeht – Server müssen die erlaubten Algorithmen daher immer explizit einschränken.
Häufig gestellte Fragen
exp-Claim in der Vergangenheit liegt, und geben in der Regel einen 401-Unauthorized-Fehler zurück. In diesem Fall muss ein neuer Token beschafft werden, etwa über einen Refresh-Token.
Übrigens – wie JWT „zustandslose Authentifizierung“ ermöglicht
JWT (JSON Web Token) wurde 2015 von der IETF als RFC 7519 standardisiert. Bei der klassischen sitzungsbasierten Authentifizierung musste der Server eine Zuordnungstabelle zwischen Sitzungs-IDs und Benutzerdaten führen. JWT bettet die Benutzerinformationen dagegen direkt in den Token ein und erkennt Manipulationen mittels einer Signatur. Dadurch kann der Server den Authentifizierungsstatus prüfen, ohne einen Sitzungsspeicher vorzuhalten – ein Ansatz, der als „zustandslose Authentifizierung“ bekannt ist und deshalb in verteilten Systemen sowie bei der Authentifizierung zwischen Microservices über mehrere Server hinweg weit verbreitet ist.
Ein JWT besteht aus drei Teilen – „Header.Payload.Signatur“ –, die jeweils Base64URL-kodiert und durch Punkte verbunden sind. Entscheidend ist: Header und Payload sind lediglich kodiert, nicht verschlüsselt. Jeder kann sie dekodieren und den Inhalt lesen. Ein JWT garantiert also, dass die Daten nicht manipuliert wurden – nicht, dass ihr Inhalt geheim bleibt. Wer Informationen vertraulich halten möchte, benötigt eine gesonderte Spezifikation mit echter Verschlüsselung namens JWE (JSON Web Encryption).
Bei den Signaturverfahren unterscheidet man grob zwei Kategorien: HMAC-basierte Verfahren (z. B. HS256), bei denen Sender und Empfänger denselben geheimen Schlüssel teilen, sowie Public-Key-Verfahren (z. B. RS256 und ES256), bei denen ein privater Schlüssel signiert und ein öffentlicher Schlüssel verifiziert. Seit JWT als Format für Access- und ID-Token von OAuth 2.0 und OpenID Connect übernommen wurde, hat es sich als De-facto-Standardformat für Web-Authentifizierungsinfrastrukturen etabliert.