Was ist JWT Decoder?
Ein JWT (JSON Web Token) ist die Standardmethode moderner Web-APIs, um Authentifizierungs- und Autorisierungs-Claims darzustellen. Es ist ein kompaktes, in sich geschlossenes Token aus drei Teilen – ein Header, der den Signaturalgorithmus beschreibt, ein Payload mit den eigentlichen Claims (wie Benutzer-ID, Rollen und Ablaufzeit) sowie eine Signatur, mit der der empfangende Server prüfen kann, ob das Token manipuliert wurde.
Dieser Decoder liest Header und Payload sofort ein, sodass Sie Authentifizierungsprobleme debuggen, prüfen können, welche Claims eine API tatsächlich sendet, oder feststellen können, wann ein Token abläuft – ganz ohne Backend, CLI-Tool oder das Einfügen sensibler Tokens in einen Server eines Drittanbieters, da alles lokal in Ihrem Browser läuft.
Wann Sie diesen Rechner verwenden
- Debuggen, warum eine API ein Token ablehnt, durch Prüfung seiner Claims und Ablaufzeit
- Prüfen der Ablaufzeit eines Tokens während einer Support-Anfrage oder Incident-Response
- Überprüfen, dass ein SSO- oder OAuth-Anbieter die Claims ausstellt, die Ihre Anwendung erwartet.
- Lernen, wie JWTs für Vorstellungsgespräche oder Sicherheitskurse aufgebaut sind
- Inspektion eines Tokens aus den Browser-Entwicklertools oder Server-Logs zum Verständnis seines Inhalts
- Vergleich des Header-Algorithmus zwischen Tokens zur Debugging von Authentifizierungsfehlern durch Algorithmus-Mismatch
Schritte:
- Fügen Sie Ihr JWT in das Eingabefeld ein oder klicken Sie auf „Beispiel laden“, um eines auszuprobieren.
- Header und Payload werden automatisch decodiert, während Sie tippen.
- Prüfen Sie Claims wie iss, sub, exp und iat in gut lesbarer Form.
- Zeitstempel-Claims (exp, iat, nbf) werden automatisch in lesbare Daten umgewandelt.
Formel
JWT = base64Url(header) + "." + base64Url(payload) + "." + base64Url(signature)
Decodieren: bei "." trennen, die ersten beiden Teile Base64URL-decodieren, als JSON parsen.
Verifizieren (hier nicht durchgeführt): HMACSHA256(base64Url(header) + "." + base64Url(payload), secret) === signature
Anwendungsfälle
- Debuggen, warum eine API ein Token ablehnt, durch Prüfung der Claims
- Prüfen der Ablaufzeit eines Tokens während einer Support-Anfrage
- Verifizieren, dass ein SSO- oder OAuth-Anbieter die erwarteten Claims ausstellt
- Lernen, wie JWTs für Vorstellungsgespräche oder Kursarbeit aufgebaut sind
- Schnelles Prüfen eines Tokens aus den Browser-Entwicklertools oder Server-Logs
Hauptvorteile
- Decodiert jedes JWT sofort, ohne Backend oder CLI-Tool
- Alles läuft clientseitig – Tokens werden niemals an einen Server gesendet
- Wandelt Zeitstempel-Claims automatisch in lesbare Daten um
- Kostenlos, keine Anmeldung, funktioniert mit jedem JWT unabhängig vom Algorithmus
Professionelle Tipps
- Prüfen Sie beim Debuggen eines „unauthorized“-Fehlers zuerst 'exp' – ein abgelaufenes Token ist die häufigste Ursache
- Vergleichen Sie das 'alg' im Header mit dem, was Ihr Backend erwartet, um Algorithmus-Mismatch-Fehler aufzuspüren
- Vertrauen Sie einem decodierten Payload niemals als Identitätsnachweis, ohne die Signatur serverseitig zu verifizieren
- Verwenden Sie kurzlebige Tokens mit Refresh-Tokens statt langlebiger JWTs, um die Auswirkung eines Lecks zu begrenzen
Häufige Fehler vermeiden
- Annehmen, ein decodiertes JWT sei ein verifiziertes JWT – das Decodieren liest nur den Inhalt, es bestätigt keine Authentizität
- Speichern sensibler Daten (Passwörter, Geheimnisse) im Payload, ohne zu bedenken, dass dieser für jeden lesbar ist
- Einfügen von Produktions-Tokens in nicht vertrauenswürdige Online-Decoder
- Verwechseln von 'exp' (Ablaufzeit) mit 'iat' (Ausstellungszeitpunkt) beim Debuggen von Token-Lebensdauer-Problemen
Wichtige Begriffe erklärt
- Claim: Eine Information, die über ein Subjekt behauptet wird, z. B. eine Benutzer-ID oder Rolle
- Header: Das erste JWT-Segment, das den Signaturalgorithmus und den Token-Typ angibt
- Payload: Das zweite JWT-Segment, das die eigentlichen Claims enthält
- Signatur: Das dritte JWT-Segment, mit dem geprüft wird, ob das Token verändert wurde
Verwandte Konzepte
- Hash-Generator
- UUID-Generator
- Base64-Encoder/Decoder
- JSON-Formatter
- Passwort-Stärke-Prüfer
Beispiel
Ein Token, das mit eyJhbGciOiJIUzI1NiJ9 beginnt, decodiert zu einem Header von {"alg":"HS256","typ":"JWT"} – das zeigt, dass das Token mit HMAC-SHA256 signiert ist.
Interpretation Ihrer Ergebnisse
Der Decoder zerlegt den JWT an den zwei Punkt-Trennzeichen und decodiert die ersten beiden Segmente Base64URL-codiert. Der Header verrät Ihnen den Signieralgorithmus (z. B. HS256 oder RS256) und den Token-Typ. Die Payload enthält die eigentlichen Claims — Benutzeridentität, Berechtigungen und Zeitstempel.
Timestamp-Claims (exp, iat, nbf) werden automatisch vom Unix-Epoch in lesbare Datumsangaben umgewandelt. Wenn 'exp' ein Datum in der Vergangenheit anzeigt, ist der Token abgelaufen und die meisten Server lehnen ihn ab. Der 'sub' (Subject)-Claim enthält in der Regel die Benutzer-ID, und 'iss' (Issuer) identifiziert den Server, der den Token erstellt hat.
Bedenken Sie: Decodieren ist kein Verifizieren. Der Signaturabschnitt wird angezeigt, kann aber ohne den geheimen oder öffentlichen Schlüssel nicht geprüft werden. Eine decodierte Payload ist nur informativ — verlassen Sie sich niemals darauf als Identitätsnachweis, ohne serverseitige Signaturprüfung.

