JWT Decoder: Token dekodieren und verifizieren, ohne die Sicherheit zu gefährden
Reden wir über JWT-Token.
Wenn Sie in den letzten 5 Jahren mit einer modernen Web-App gearbeitet haben, haben Sie sie schon in der Hand gehabt. Auth-Flows, API-Schlüssel, Sitzungstoken, sie sind überall.
Aber die Sache ist die: Viele Entwickler verwenden JWTs, ohne wirklich zu verstehen, was darin steckt. Und schlimmer noch: Manche fügen Produktionstoken in zufällige "JWT-Debugger"-Seiten ein, die sie möglicherweise protokollieren.
In diesem Leitfaden zeige ich Ihnen, was ein JWT-Decoder tatsächlich tut, wie Sie ihn sicher verwenden und welches kostenlose Tool ich persönlich nutze, das zu 100 % im Browser läuft.
Was steckt eigentlich in einem JWT#
Ein JSON Web Token besteht aus drei Teilen, die durch Punkte getrennt sind:
header.payload.signatur
Zum Beispiel:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjMiLCJleHAiOjE2MjYxMjM0NTZ9.abc123def456...
Das ist nicht verschlüsselt. Es ist nur base64-kodiert.
Der JWT-Header gibt an, welcher Algorithmus den Token signiert hat (meist HS256 oder RS256).
Die JWT-Nutzlast enthält die eigentlichen Claims (Benutzer-ID, Ablaufzeit, Bereiche usw.).
Die JWT-Signatur ist der kryptografische Nachweis, dass der Token nicht manipuliert wurde.
Jeder, der den Token hat, kann Header und Nutzlast lesen. Die Signatur ist das, was geschützt ist.
Warum Sie niemals Tokens in zwielichtige Seiten einfügen sollten#
Dies ist eine Sicherheits-PSA.
Wenn Sie ein JWT in ein Tool einfügen, das es an einen Server sendet (anstatt es lokal zu dekodieren), haben Sie soeben Ihr Token preisgegeben. Der Betreiber der Seite kann:
- Ihre Sitzung stehlen
- Sich als Benutzer ausgeben
- Das Token in eigenen Skripten verwenden
Und viele "JWT-Dekoder"-Seiten tun genau das. Sie senden an ein Backend, "dekodieren" und geben das Ergebnis zurück. Ihr Server hat Ihr Token nun in einer Logdatei.
Die Lösung: Verwenden Sie nur JWT-Dekoder, die im Browser laufen. Das Token verlässt niemals Ihren Rechner.
Der kostenlose JWT-Decoder, den ich nutze#
Ich habe den Molixa JWT Decoder speziell entwickelt, weil jeder andere „kostenlose“ Decoder entweder Werbung hatte oder das Token an einen Server sendete.
Meiner tut das nicht.
Sie fügen ein JWT ein. Der Decoder verwendet JavaScript in Ihrem Browser, um das Token zu splitten, Base64 zu dekodieren und das JSON zu parsen. Fertig.
Keine Analyse wird auf das Token angewendet. Kein Server-Roundtrip. Kein Logging.
Schritt für Schritt: Ihr erstes JWT decodieren#
So funktioniert es.
Schritt 1: Ein JWT abrufen#
Aus dem lokalen Speicher Ihrer App, den Browser DevTools oder einer API-Antwort.
In Chrome DevTools öffnen Sie Application → Storage → Local Storage und suchen nach Schlüsseln wie "access_token" oder "jwt."
Schritt 2: Den Decoder öffnen#
Schritt 3: Einfügen#
Ein großes Textfeld oben. Fügen Sie das vollständige Token ein.
Schritt 4: Die Aufschlüsselung lesen#
Sie sehen drei Bereiche:
- Header, Algorithmus, Typ, Schlüssel-ID
- Payload, die eigentlichen Claims
- Signatur, base64 (kann nicht decodiert werden, nur verifizieren)
Schritt 5: Die Claims prüfen#
Der Payload ist der wichtigste Teil. Achten Sie auf:
sub, Subject (normalerweise die Benutzer-ID)iat, Issued At (Zeitstempel)exp, Expires At (Zeitstempel; in Datum umwandeln)iss, Issuer (welcher Dienst das Token erstellt hat)aud, Audience (welcher Dienst das Token verwenden kann)scope, gewährte Berechtigungen
Ein guter JWT Inspector konvertiert die Zeitstempel automatisch in lesbare Daten.
So überprüfen Sie eine JWT-Signatur#
Das Dekodieren zeigt den Inhalt. Die Verifikation beweist, dass das Token echt ist.
Für HS256 (symmetrisch)#
Sie benötigen das gemeinsame Geheimnis. Fügen Sie es in das Verifikationsfeld ein. Der Decoder hasht den Header + Payload mit HMAC-SHA256, vergleicht ihn mit der Signatur und zeigt "gültig" oder "ungültig" an.
Speichern Sie das Geheimnis nicht dauerhaft. Es ist aus gutem Grund ein Geheimnis.
Für RS256 (asymmetrisch)#
Sie benötigen den öffentlichen Schlüssel (PEM-Format). Fügen Sie ihn ein. Der Decoder überprüft die Signatur mit dem öffentlichen Schlüssel.
Öffentliche Schlüssel können sicher geteilt werden, das ist der Sinn.
Häufige JWT-Fehler#
Einige, die ich ständig sehe:
Fehler 1: JWTs im localStorage speichern. Anfällig für XSS. Verwenden Sie httpOnly-Cookies für Sitzungstoken.
Fehler 2: Dem decodierten Inhalt vertrauen. Die Payload ist nur Base64. Jeder kann sie ändern. Überprüfen Sie immer die Signatur serverseitig.
Fehler 3: Zu lange Ablaufzeiten. Token mit exp 30+ Tage sind riskant. Verwenden Sie Refresh-Token für lange Sitzungen und kurzlebige Access-Token.
Fehler 4: Sensible Daten in die Payload setzen. Die Payload ist für jeden mit dem Token lesbar. Geben Sie keine Kreditkartennummern, vollständigen Namen oder etwas, das Sie nicht protokolliert haben möchten, ein.
Fehler 5: Produktionstoken in Tools einfügen, die an einen Server senden. Siehe oben. Verwenden Sie nur browserbasierte Decoder.
Echtes Beispiel: Fehlerbehebung bei einem 401#
Letzte Woche gab meine API für einen Benutzer ständig 401 zurück. Er schwor, dass sein Token gültig sei.
Ich bat ihn, das Token in den Molixa JWT Decoder einzufügen.
Sein Payload zeigte exp: 1715342400. Ich rechnete um: das war vor 3 Stunden.
Sein Token war abgelaufen. Der Aktualisierungsvorgang war stillschweigend fehlgeschlagen.
Gesamte Debug-Zeit: 90 Sekunden.
Was ist mit jwt.io?#
Der bekannteste JWT-Decoder online.
Vorteile: Branchenstandard. Von vielen vertraut. Nachteile: Hat Werbung. Die Benutzeroberfläche wurde seit Jahren nicht aktualisiert. Sendet einige Analysen zur Token-Nutzung (nicht den Token selbst, aber genug, um Muster zu erkennen).
Molixa JWT Decoder ist eine saubere, schnelle Alternative für den täglichen Gebrauch.
Für das offizielle jwt.io-Erlebnis besuchen Sie jwt.io. Für die tägliche Decodierung ohne Werbung funktioniert meins.
Profi-Tipps#
Ein paar Gewohnheiten, die sich lohnen:
Tipp 1: Nutzen Sie die Timestamp-Konvertierung. JWTs verwenden Unix-Epochen; Sie möchten sie als lesbare Daten.
Tipp 2: Speichern Sie den Decoder als Lesezeichen. Sie werden ihn öfter nutzen als gedacht.
Tipp 3: Prüfen Sie immer iss und aud. Stimmen sie nicht mit den Erwartungen Ihres Dienstes überein, gehört das Token nicht zu Ihnen, lehnen Sie es ab.
Tipp 4: Halten Sie Produktionsgeheimnisse aus "Verify"-Panels fern. Verwenden Sie für Produktions-Validierungsabläufe ein lokales CLI-Tool (wie das offizielle jose-cli).
Tipp 5: Zum Debuggen von Mobile-App-Tokens kopieren Sie diese über Charles Proxy oder Proxyman und decodieren Sie sie dann im Browser.
Moderne JWT-Alternativen#
Ein paar Anmerkungen zum Kontext:
PASETO, entwickelt um die Designprobleme von JWT zu beheben. Bessere Standardeinstellungen, keine Algorithmenverwechslungsangriffe.
Branca, kleine signierte Tokens. Weniger verbreitet, aber einfacher.
Opaque Tokens, zufällige Zeichenfolgen, die serverseitigen Sitzungen zugeordnet werden. Einige Teams kehren aus Sicherheitsgründen zu diesen zurück.
JWT ist jedoch immer noch dominant. Zu wissen, wie man dekodiert und verifiziert, ist grundlegend.
Zusammenfassung#
JWT-Token sind nicht beängstigend, sobald Sie die Struktur verstehen.
Header. Payload. Signatur.
Ein guter kostenloser JWT-Decoder zeigt Ihnen alle drei, konvertiert die Zeitstempel und sendet das Token nie an einen Server.
Molixa JWT Decoder erfüllt alle Kriterien.
Setzen Sie ein Lesezeichen. Nutzen Sie ihn. Hören Sie auf, Token auf beliebige Websites einzufügen.
Bleiben Sie sicher da draußen.



