JWT Decoder

JWT Decoder

JSON Web Tokens sofort dekodieren und prüfen — Header, Payload anzeigen, HMAC-Signaturen verifizieren und JWT-Code für PHP, JavaScript, Python und Java...

Aktualisiert Mai 2026

Geprüft von Rafael Duarte

ENCODED
DECODED

Paste a JWT token on the left to decode it

GENERATE JWT CODE
Language
Algorithm
javascript
 1const jwt = require('jsonwebtoken');
 2
 3const secretKey = 'your-256-bit-secret';
 4
 5const payload = {
 6  sub: '1234567890',
 7  name: 'John Doe',
 8  iat: Math.floor(Date.now() / 1000)
 9};
10
11const token = jwt.sign(payload, secretKey, { algorithm: 'HS256' });
12console.log(token);
13
14// To verify:
15const decoded = jwt.verify(token, secretKey, { algorithms: ['HS256'] });
16console.log(decoded);

So funktioniert der JWT-Decoder

Token einfügen, Claims prüfen, Signatur verifizieren

1. Token einfügen

Die drei Teile werden sofort farbig getrennt — Header in Rosa, Payload in Violett, Signatur in Cyan.

2. Claims kontrollieren

`iat`, `exp` und `nbf` erscheinen automatisch als lesbares Datum — ein abgelaufenes Token fällt sofort auf.

3. Signatur verifizieren

Bei HS256/384/512 einfach den geheimen Schlüssel eingeben und ein grünes oder rotes Ergebnis erhalten.

Was dieser JWT-Decoder kann

Mehr als ein reiner Payload-Viewer

Sofortige Dekodierung

Header, Payload und Signatur werden farblich getrennt angezeigt — ganz ohne Schlüssel nötig.

Lesbare Zeitstempel

exp, iat und nbf werden automatisch in ein ISO-Datum umgerechnet — kein manuelles Unix-Zeitrechnen mehr.

HMAC-Verifizierung im Browser

HS256, HS384 und HS512 werden lokal über die Web Crypto API mit deinem geheimen Schlüssel geprüft.

Code-Generator

Fertige Snippets in JavaScript, PHP, Python und Java, um Tokens direkt in deinem Projekt zu signieren.

Vorlagen für HMAC und RSA

Der Generator deckt HS256/384/512 mit geheimem Schlüssel sowie RS256/384/512 mit Schlüsselpaar ab.

Tastenkombination

Shift+Enter kopiert den dekodierten Payload von jeder Stelle der Seite aus — ganz ohne Maus.

Beispiele beim Dekodieren

Was in typischen Fällen angezeigt wird

Situation
Was das Tool anzeigt
Beispiel-Token von jwt.io
`alg: HS256`, `sub`, `name`, `iat` — ohne gesetztes `exp`
Abgelaufenes Token (`exp` in der Vergangenheit)
Ablaufdatum wird direkt neben dem rohen Unix-Zeitstempel angezeigt
Fehlerhaftes Token (nur 2 Teile)
Fehlermeldung: "Erwartetes Format: header.payload.signature"
Token mit `alg: none`
Wird normal dekodiert, Verifizierung als "nicht unterstützt" markiert
Token mit `alg: RS256`
Wird normal dekodiert; Verifizierung verlangt den öffentlichen Schlüssel, da im Browser nur HS256/384/512 geprüft werden

Wann du dieses Tool brauchst

Die häufigsten Situationen im Entwickleralltag

Einen 401 Unauthorized debuggen

Prüfe exp, aud und den Algorithmus, bevor du überhaupt Code anfasst.

Sicherheitsaudit

Kontrolliere, ob im Payload versehentlich sensible Daten landen.

Integrationstests vorbereiten

Claims, TTL (exp minus iat) und Algorithmus vor dem Schreiben der Tests kontrollieren.

Signatur zwischen Diensten prüfen

Bestätige, dass ein Token mit dem erwarteten Secret zwischen Microservices signiert wurde.

Den Aufbau eines JWT verstehen

Farblich getrennte Ansicht der drei Teile — ideal, ohne vorher die RFC lesen zu müssen.

Signier-Code generieren

Fertige Snippets ersparen die Suche nach der richtigen Methode in jeder Bibliothek.

Typische Fehler im Umgang mit JWTs

Dekodieren mit Verifizieren verwechseln

Dekodieren liest nur den Payload, ohne die Signatur zu prüfen. Ein Token kann sauber dekodiert werden und trotzdem gefälscht sein.

JWT im localStorage speichern

Jedes JavaScript auf der Seite kann darauf zugreifen — eine einzige XSS-Lücke reicht, um alle aktiven Tokens zu stehlen.

Die Claim `exp` nicht prüfen

Ein gestohlenes Token bleibt sonst unbegrenzt gültig. 15 Minuten Laufzeit plus Refresh-Token gilt 2026 als solide Praxis.

Sensible Daten im Payload ablegen

Ein JWT ist nur Base64URL-kodiert, nicht verschlüsselt. Passwörter, Kartennummern oder andere personenbezogene Daten gehören nach DSGVO-Maßstäben da nicht hinein.

`alg: none` in Produktion akzeptieren

Ein Token mit alg: none hat gar keine Signatur. Moderne Bibliotheken lehnen das standardmäßig ab — bei selbst geschriebener JWT-Validierung von vor 2020 lohnt sich aber eine Kontrolle.

RS256 allein aus dem Token heraus verifizieren wollen

Asymmetrische Algorithmen (RS/ES) brauchen den öffentlichen Schlüssel zur Verifizierung — der Browser kann ihn nicht selbst aus dem Token ableiten.

Warum dieser JWT-Decoder

Neben der reinen Dekodierung verifiziert das Tool HMAC-Signaturen direkt im Browser und erzeugt fertigen Code in vier Sprachen — ein vollständiger Debugger statt nur ein Payload-Viewer.

Alles läuft lokal über die Web Crypto API. Token und geheimer Schlüssel verlassen dein Gerät zu keinem Zeitpunkt, auch nicht bei der Signaturprüfung — relevant, wenn im Payload personenbezogene Daten stecken und DSGVO-Vorgaben eine Rolle spielen.

Kostenlos, ohne Registrierung und ohne Limit an Tokens — füge ein, so viele du brauchst. Shift+Enter kopiert den dekodierten Payload direkt in die Zwischenablage, ohne die Tastatur zu verlassen.

Häufige Fragen

Der Payload ist nur Base64URL-kodiert, nicht verschlüsselt. Jede Person mit dem Token-String kann ihn ohne Schlüssel dekodieren und lesen. Die Signatur beweist nur, wer das Token ausgestellt hat — sie verbirgt den Inhalt nicht.

Weiterführende Quellen

Verwandter Artikel

OAuth 2.0 explicado sem complicação

Verwandte Tools