So nutzt du: JWT-Decoder
- Füge ein JWT (mit oder ohne das
BearerPräfix) in das Feld „Encoded token“ ein oder klick auf „Beispiel laden“. - Lies den entschlüsselten Header und die Nutzdaten; die Symbole zeigen den Algorithmus an und ob das Token abgelaufen ist.
- Schau in der Tabelle „Claims“ nach, ob die Daten lesbar sind
exp,iatundnbfZeiten in deiner lokalen Zeitzone. - Optional kannst du die Signatur überprüfen: Gib das gemeinsame Geheimnis für HS256/384/512 ein oder füge den öffentlichen Schlüssel (PEM oder JWK) für RS-, PS-, ES- und EdDSA-Token ein.
Was ist ein JWT?
Ein JSON Web Token (JWT, ausgesprochen „jot“, definiert in RFC 7519) ist eine kompakte, URL-sichere Zeichenfolge, die zur Übertragung von Claims zwischen Parteien verwendet wird – meist als Zugriffstoken oder ID-Token in OAuth 2.0 und OpenID Connect, gesendet in einem Authorization: Bearer … Header gesendet. Es besteht aus drei durch Punkte getrennten, Base64URL-kodierten Teilen:
- Header – JSON, das das Token beschreibt, z. B.
{"alg":"HS256","typ":"JWT"}. - Nutzdaten – JSON mit den Ansprüchen: wer der Nutzer ist, was er tun darf und wann das Token abläuft.
- Signatur – berechnet anhand
header.payloadmit einem geheimen oder privaten Schlüssel berechnet, sodass jede Änderung an den ersten beiden Teilen das Token ungültig macht.
Wichtig: Der Header und der Payload sind nur kodiert, nicht verschlüsselt. Jeder, der das Token besitzt, kann sie lesen – und genau das macht dieser Decoder. Füge niemals Geheimnisse oder sensible personenbezogene Daten in eine JWT-Nutzlast ein. (Es gibt verschlüsselte Token – JWE, bestehend aus fünf Teilen –, aber deren Nutzlast kann nur mit dem Entschlüsselungsschlüssel gelesen werden.)
Registrierte Claims
| Claim | Name | Bedeutung |
|---|---|---|
iss | Aussteller | Wer hat das Token ausgegeben (z. B. die URL deines Authentifizierungsservers) |
sub | Subjekt | Der Benutzer oder die Entität, die das Token repräsentiert |
aud | Zielgruppe | Die API(s), die das Token akzeptieren sollen |
exp | Ablauf | Unix-Zeit, nach deren Ablauf das Token abgelehnt werden muss |
nbf | Nicht vor | Unix-Zeit, vor der das Token nicht gültig ist |
iat | Ausgestellt am | Unix-Zeitpunkt, zu dem das Token erstellt wurde |
jti | JWT-ID | Eindeutige ID, nützlich zur Verhinderung von Replay-Angriffen |
Zeitangaben sind Sekunden seit dem 1. Januar 1970 UTC – keine Millisekunden, ein häufiger Fehler bei der Token-Generierung in JavaScript mit Date.now(). Der Decoder wandelt sie in lesbare Datumsangaben um; für andere Zeitstempel nutze den Unix-Timestamp-Konverter.
Signaturalgorithmen
HS256/384/512 verwenden HMAC mit einem gemeinsamen Geheimschlüssel: Derselbe Schlüssel dient zum Signieren und Verifizieren, sodass jeder Prüfer auch Token generieren kann. RS256 (RSA), PS256 (RSA-PSS), ES256 (ECDSA P-256) und EdDSA verwenden einen privaten Schlüssel zum Signieren und einen öffentlichen Schlüssel zum Verifizieren – die bessere Wahl, wenn mehrere Dienste Token validieren müssen. Identitätsanbieter veröffentlichen ihre öffentlichen Schlüssel als JWKS unter einer URL wie /.well-known/jwks.json; du kannst diesen JSON-Code hier einfügen, und der zum Token passende Schlüssel kid wird ausgewählt. Die Überprüfung erfolgt über die Web-Crypto-API des Browsers.
Sicherheitscheckliste
- Überprüfe die Signatur immer auf dem Server – das Entschlüsseln allein beweist noch nichts.
- Lehne
alg: noneund fixiere die Algorithmen, die du erwartest, um Angriffe durch Algorithmusverwechslung zu vermeiden. - Überprüfe
exp,nbf,issundaud, wobei du nur eine geringe Taktabweichung zulässt. - Verwende für HS256 ein zufälliges Geheimnis mit mindestens 256 Bit – der Passwortgenerator kann eines erstellen.
Auch gesucht als: jwt-debugger, jwt entschlüsseln, json-web-token, jwt-parser, jwt-überprüfung, jwt-ablauf, inhaber-token-decoder, jwt io.
Passende Tools zu: JWT-Decoder
- PKCE Generator — Test or debug an OAuth 2.0 / OpenID Connect login with PKCE.
- Base64-Kodierung / -Dekodierung — Konvertiere Text in Base64 und zurück – mit vollständiger UTF-8-Unterstützung (Akzente, Emojis), wechsle zu URL-sicheren Base64-Werten oder zieh eine Datei per Drag & Drop hinein, um deren Base64-Zeichenkette oder Daten-URI zu erhalten.
- Hash Generator — Compute MD5 and SHA hashes of any text or file instantly, create HMAC signatures, and paste an expected checksum to verify a download.
- JSON Formatierer — Füge JSON ein, um es zu formatieren, zu minifizieren oder zu prüfen.
Häufige Fragen
Ist es sicher, mein JWT hier einzufügen?
Kann ein JWT ohne das Geheimnis entschlüsselt werden?
Wie kann ich überprüfen, ob ein JWT abgelaufen ist?
exp Angabe – einen Unix-Zeitstempel in Sekunden. Dieses Tool vergleicht ihn mit der Uhr deines Geräts und zeigt ein Abzeichen mit „Abgelaufen“ oder „Nicht abgelaufen“ sowie die genaue Uhrzeit in deiner Zeitzone an.