JWT-Decoder und -Prüfprogramm

Füge ein JSON-Web-Token ein, um dessen Header und Payload zu überprüfen, das Ablaufdatum zu ermitteln und die Signatur zu verifizieren. Die Dekodierung erfolgt lokal – dein Token verlässt den Browser zu keinem Zeitpunkt.

Aktualisiert am
🔒 Dein Token wurde entschlüsselt und verifiziert lokal in deinem Browser. Diese werden niemals an einen Server gesendet, protokolliert oder gespeichert.
Kopfzeile
Nutzlast

Aussagen

Signatur überprüfen (optional)

Deine Daten verlassen nie deinen Computer. Die Verarbeitung erfolgt zu 100 % lokal im Browser.

So nutzt du: JWT-Decoder

  1. Füge ein JWT (mit oder ohne das Bearer Präfix) in das Feld „Encoded token“ ein oder klick auf „Beispiel laden“.
  2. Lies den entschlüsselten Header und die Nutzdaten; die Symbole zeigen den Algorithmus an und ob das Token abgelaufen ist.
  3. Schau in der Tabelle „Claims“ nach, ob die Daten lesbar sind exp, iat und nbf Zeiten in deiner lokalen Zeitzone.
  4. 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:

  1. Header – JSON, das das Token beschreibt, z. B. {"alg":"HS256","typ":"JWT"}.
  2. Nutzdaten – JSON mit den Ansprüchen: wer der Nutzer ist, was er tun darf und wann das Token abläuft.
  3. Signatur – berechnet anhand header.payload mit 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

ClaimNameBedeutung
issAusstellerWer hat das Token ausgegeben (z. B. die URL deines Authentifizierungsservers)
subSubjektDer Benutzer oder die Entität, die das Token repräsentiert
audZielgruppeDie API(s), die das Token akzeptieren sollen
expAblaufUnix-Zeit, nach deren Ablauf das Token abgelehnt werden muss
nbfNicht vorUnix-Zeit, vor der das Token nicht gültig ist
iatAusgestellt amUnix-Zeitpunkt, zu dem das Token erstellt wurde
jtiJWT-IDEindeutige 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: none und fixiere die Algorithmen, die du erwartest, um Angriffe durch Algorithmusverwechslung zu vermeiden.
  • Überprüfe exp, nbf, iss und aud, 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?
Die Entschlüsselung und Überprüfung laufen komplett in deinem Browser ab – das Token wird weder an einen Server gesendet, noch gespeichert oder in die URL eingefügt. Behandle Produktionstoken dennoch wie Passwörter: Verwende vorzugsweise abgelaufene oder Test-Token und gib niemals aktive Token weiter.
Kann ein JWT ohne das Geheimnis entschlüsselt werden?
Ja. Der Header und die Nutzdaten sind einfach Base64URL-kodiertes JSON, das jeder lesen kann. Das Geheimnis oder der Schlüssel wird nur benötigt, um die Signatur zu überprüfen, d. h. um nachzuweisen, dass das Token echt und unverändert ist.
Wie kann ich überprüfen, ob ein JWT abgelaufen ist?
Schau dir die 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.
Was ist der Unterschied zwischen HS256 und RS256?
HS256 verwendet ein gemeinsames Geheimnis zum Signieren und Verifizieren (symmetrisches HMAC). RS256 signiert mit einem privaten RSA-Schlüssel und verifiziert mit dem öffentlichen Schlüssel (asymmetrisch), sodass Verifizierer keine Token erstellen können.
Warum schlägt die Verifizierung mit dem richtigen Geheimcode fehl?
Überprüfe, ob das Geheimnis Base64-kodiert gespeichert ist (setze ein Häkchen bei der Option), ob es zufällige Leerzeichen oder Zeilenumbrüche enthält und ob das Token nicht verändert wurde – schon ein einziges geändertes Zeichen im Header oder in der Nutzlast macht die Signatur ungültig.
Kann ich JWT-Decoder als Web-App installieren und offline nutzen?
Ja. JWT-Decoder ist eine installierbare Web-App (PWA) – sie wird über Ihren Browser installiert und nicht aus einem App-Store heruntergeladen. Klicken Sie oben auf dieser Seite in Chrome oder Edge (Windows, macOS, Linux, ChromeOS) auf „App installieren“ oder verwenden Sie auf Android-Geräten „Teilen“ → „Zum Startbildschirm hinzufügen“ auf dem iPhone und iPad bzw. „Datei“ → „Zum Dock hinzufügen“ in Safari 17+ auf einem Mac. Die App öffnet sich dann in einem eigenen Fenster mit einem eigenen Symbol, und da sie vollständig in Ihrem Browser ausgeführt wird, funktioniert sie auch offline. Firefox auf dem Desktop kann keine Web-Apps installieren. So funktioniert die Installation.

Ähnliche Tools