JWT-Decoder / Inspektor / Validator

JWT-Tokens decodieren, inspizieren und verifizieren — Header, Payload, Claims und HMAC-Signaturen. Alles läuft in Ihrem Browser

JWT-Token 0 Zeichen
Beispiele:
Dieser Token wurde decodiert, aber NICHT verifiziert. Decodierung beweist keine Authentizität — jeder kann einen JWT mit beliebigem Payload erstellen.
Header

                    
Payload

                
Zeitstatus
Signatur
Claims
Claim Wert Bedeutung Status
Warnungen
Fügen Sie oben einen JWT-Token ein und klicken Sie auf Decodieren, um den Inhalt zu inspizieren.
Die Validierung prüft Struktur, Format und Zeit-Claims. Sie verifiziert NICHT die kryptographische Signatur. Verwenden Sie den Tab Verifizieren für die Signaturverifizierung.
Fügen Sie oben einen JWT-Token ein, um seine Struktur und Claims zu validieren.

RSA- und EC-Signaturverifizierung

Die RSA- und EC-Signaturverifizierung erfordert den Import öffentlicher Schlüssel über die Web Crypto API. Diese Funktion ist für ein zukünftiges Update geplant.

Für HMAC-basierte Tokens (HS256, HS384, HS512) ist die vollständige Signaturverifizierung jetzt mit der HMAC-Geheimnis-Option verfügbar.

RSA- und EC-Signaturverifizierung

Die RSA- und EC-Signaturverifizierung erfordert den Import öffentlicher Schlüssel über die Web Crypto API. Diese Funktion ist für ein zukünftiges Update geplant.

Für HMAC-basierte Tokens (HS256, HS384, HS512) ist die vollständige Signaturverifizierung jetzt mit der HMAC-Geheimnis-Option verfügbar.

Was ist ein JWT?

Ein JSON Web Token (JWT) ist ein kompaktes, URL-sicheres Token-Format zur sicheren Übertragung von Informationen zwischen Parteien. Es besteht aus drei Base64URL-codierten Teilen, die durch Punkte getrennt sind.

eyJhbGci...(Header).eyJzdWIi...(Payload).SflKxwRJ...(Signatur)

Header

Der Header enthält typischerweise zwei Felder: den Signaturalgorithmus (alg) und den Token-Typ (typ).

{"alg": "HS256", "typ": "JWT"}

Payload (Claims)

Der Payload enthält Claims — Aussagen über den Benutzer und Metadaten. Standard-Claims umfassen:

ClaimNameBeschreibung
issAusstellerWer hat den Token ausgestellt
subBetreffWorum es im Token geht
audEmpfängerVorgesehener Empfänger des Tokens
expAblaufzeitWann der Token abläuft (Unix-Zeitstempel in Sekunden)
nbfNicht VorDer Token ist vor diesem Zeitpunkt nicht gültig
iatAusgestellt AmWann der Token erstellt wurde
jtiJWT-IDEindeutiger Bezeichner für den Token

Signatur

Die Signatur wird erstellt, indem Header und Payload codiert, mit einem Punkt verbunden und mit dem im Header angegebenen Algorithmus signiert werden.

HMAC-SHA256(
  base64UrlEncode(header) + "." + base64UrlEncode(payload),
  secret
)

Häufige Missverständnisse

"JWTs are encrypted" — Standard JWTs (JWS) are only signed, not encrypted. The payload can be read by anyone who has the token.
"Decoding a JWT means it's trusted" — Decoding only reads the content. Without signature verification, the token could have been tampered with.
"alg: none is harmless" — The none algorithm means no signature. Accepting it can allow attackers to forge tokens. Always reject alg: none in production.

Sicherheits-Best-Practices

Verifizieren Sie immer die Signatur, bevor Sie Claims vertrauen
Prüfen Sie die Claims exp, nbf und iat auf zeitliche Gültigkeit
Validieren Sie die Claims Aussteller (iss) und Empfänger (aud)
Speichern Sie niemals sensible Daten (Passwörter, Kreditkarten) im Payload
Verwenden Sie starke Geheimnisse für HMAC und rotieren Sie Schlüssel regelmäßig
Bevorzugen Sie asymmetrische Algorithmen (RS256, ES256) für öffentliche APIs
Die gesamte Decodierung, Validierung und Signaturverifizierung findet in Ihrem Browser statt. Ihr JWT und Ihre Geheimnisse werden niemals an einen Server gesendet.

Tips

Decodieren Bedeutet Nicht Vertrauen

Jeder kann einen JWT decodieren — Base64URL ist keine Verschlüsselung. Decodierung enthüllt den Inhalt, aber nur die Signaturverifizierung beweist, dass der Token nicht manipuliert wurde.

Ablaufzeit Vor Verwendung Prüfen

Der exp (Ablauf)-Claim ist ein Unix-Zeitstempel in Sekunden. Prüfen Sie immer, ob er in der Zukunft liegt, bevor Sie einem Token vertrauen. Dieses Tool zeigt den Zeitstatus sofort an.

alg: none Ist ein Sicherheitsrisiko

Der "none"-Algorithmus bedeutet, dass der Token keine Signatur hat. Ihn in der Produktion zu akzeptieren kann Angreifern ermöglichen, Tokens zu fälschen. Lehnen Sie alg: none auf Ihrem Server immer ab.

JWTs Sind Standardmäßig Nicht Verschlüsselt

Standard-JWTs (JWS) sind nur signiert, nicht verschlüsselt. Der Payload ist für jeden mit dem Token lesbar. Speichern Sie niemals Passwörter, Kreditkartennummern oder andere Geheimnisse in einem JWT-Payload.

Häufige Anwendungsfälle

🔌

API-Debugging

Fügen Sie Zugriffstoken aus API-Antworten ein, um schnell Claims zu inspizieren, Ablaufzeiten zu prüfen und den Aussteller zu verifizieren, ohne Ihren Browser zu verlassen.

🔐

Auth-Flow-Tests

Decodieren Sie Tokens bei jedem Schritt von OAuth2- oder OpenID-Connect-Flows, um zu überprüfen, ob die richtigen Scopes, Empfänger und Claims vorhanden sind.

⏱️

Token-Ablaufüberwachung

Prüfen Sie, wann Tokens ablaufen, um Session-Timeout-Probleme zu debuggen. Das Tool zeigt lesbare Zeitunterschiede wie "läuft in 14 Minuten ab".

⚙️

CI/CD-Pipeline-Verifizierung

Verifizieren Sie, dass Service-zu-Service-Tokens die erwarteten Claims enthalten, bevor Sie deployen. Fügen Sie Tokens aus Pipeline-Logs ein, um sie zu inspizieren.

🛡️

Sicherheitsaudit

Inspizieren Sie Tokens auf sensible Datenlecks (PII im Payload), schwache Algorithmen (alg: none) oder fehlende Sicherheits-Claims (exp, aud, iss).

Häufig gestellte Fragen

Was ist ein JWT?
Ein JSON Web Token (JWT) ist ein kompaktes, URL-sicheres Format zur Übertragung von Informationen zwischen Parteien als JSON-Objekt. Es besteht aus drei Base64URL-codierten Teilen: Header, Payload und Signatur, getrennt durch Punkte.
Ist ein JWT verschlüsselt?
Standard-JWTs (JWS — JSON Web Signature) sind signiert, aber NICHT verschlüsselt. Der Payload kann von jedem gelesen werden. JWE-Tokens (JSON Web Encryption) sind verschlüsselt, aber es ist ein anderes Format mit 5 Segmenten statt 3.
Kann ich einem decodierten JWT vertrauen?
Nein. Decodierung enthüllt nur den Inhalt — sie verifiziert nicht die Authentizität. Jeder kann einen JWT mit beliebigem Payload erstellen. Sie müssen die kryptographische Signatur verifizieren, um den Claims zu vertrauen.
Was ist der Unterschied zwischen Decodieren und Verifizieren?
Decodierung liest den Base64URL-codierten Header und Payload. Verifizierung prüft die kryptographische Signatur, um sicherzustellen, dass der Token von einer vertrauenswürdigen Partei ausgestellt wurde und nicht manipuliert wurde. Verifizieren Sie immer, bevor Sie vertrauen.
Warum wird mein Token als abgelaufen angezeigt?
Der exp-Claim ist ein Unix-Zeitstempel in Sekunden. Wenn diese Zeit in der Vergangenheit liegt, ist der Token abgelaufen. Prüfen Sie den exp-Wert und vergleichen Sie ihn mit der aktuellen Zeit. Zeitzonenunterschiede haben keinen Einfluss — Unix-Zeitstempel sind immer UTC.
Was bedeutet das alg-Feld?
Das alg-Feld (Algorithmus) im Header gibt den kryptographischen Algorithmus an, der zum Signieren des Tokens verwendet wird. Gängige Werte: HS256 (HMAC mit SHA-256), RS256 (RSA mit SHA-256), ES256 (ECDSA mit P-256 und SHA-256).
Was ist Base64URL-Codierung?
Base64URL ist eine Variante von Base64, die + durch - und / durch _ ersetzt und das Padding (=) entfernt. Dies macht die Ausgabe sicher für URLs und Dateinamen. JWT verwendet Base64URL für beide Segmente, Header und Payload.
Wird mein Token oder Geheimnis an einen Server gesendet?
Nein. Die gesamte Decodierung, Validierung und Signaturverifizierung findet vollständig in Ihrem Browser mit JavaScript und der Web Crypto API statt. Ihr JWT und Ihre Geheimnisse verlassen niemals Ihr Gerät.
Kann ich HS256-Tokens hier verifizieren?
Ja. Dieses Tool unterstützt vollständig die HMAC-Signaturverifizierung (HS256, HS384, HS512) mit der Web Crypto API. Geben Sie Ihr Geheimnis im Tab Verifizieren ein, um zu prüfen, ob die Signatur gültig ist.
Warum werden JWE-Tokens nicht unterstützt?
JWE-Tokens (JSON Web Encryption) haben 5 Segmente und benötigen einen Entschlüsselungsschlüssel, um den Payload zu lesen. Dieses Tool konzentriert sich auf JWS-Tokens (signiert), die 3 Segmente haben. JWE-Unterstützung könnte in einem zukünftigen Update hinzugefügt werden.