JWT Decoder / Encoder

JWT-Token sofort dekodieren und prüfen oder signierte JWTs erstellen. 100% clientseitig.

Die gesamte Verarbeitung erfolgt in Ihrem Browser. Es werden keine Daten an einen Server gesendet.

Was ist JWT (JSON Web Token)?

JWT (JSON Web Token) ist ein offener Standard (RFC 7519) zur sicheren Übertragung von Informationen zwischen Parteien als JSON-Objekt. Es wird häufig für Authentifizierung und Informationsaustausch in Webanwendungen verwendet. Ein JWT ist Base64URL-kodiert – nicht verschlüsselt – daher kann jeder den Payload dekodieren. Speichern Sie niemals sensible Informationen in einem JWT ohne Verschlüsselung.

JWT-Struktur

Beispiel

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

HeaderPayloadSignature

Header

Enthält den Token-Typ (typ) und den Signaturalgorithmus (alg), wie HS256 oder RS256.

Payload

Enthält Claims – Aussagen über den Benutzer und Metadaten wie exp (Ablaufzeit), iat (ausgestellt am) und sub (Subjekt).

Signature

Die Signatur wird durch Signieren von Header und Payload mit einem Geheimschlüssel erstellt. Sie verifiziert, dass der Token nicht manipuliert wurde.

Standard-Claims

ClaimStandard-Claims
issAussteller
subSubjekt (Benutzer-ID)
audEmpfänger
expAblaufzeit
iatAusgestellt am
nbfNicht vor
jtiEindeutige JWT-ID

Häufige Fragen

Ist ein JWT verschlüsselt?
Nein. Ein Standard-JWT (JWS) ist nur signiert, nicht verschlüsselt. Der Payload ist Base64URL-kodiert und kann von jedem dekodiert werden. Speichern Sie niemals sensible Daten wie Passwörter im JWT-Payload.
Warum wird ein Geheimschlüssel zur Signaturverifizierung benötigt?
HMAC-basierte Signaturen (HS256 usw.) verwenden ein gemeinsames Geheimnis. Ohne das Geheimnis ist es unmöglich zu prüfen, ob die Signatur authentisch ist. Payload dekodieren und Signatur verifizieren sind zwei verschiedene Vorgänge.
Was passiert, wenn kein exp-Claim vorhanden ist?
Ohne exp-Claim läuft der Token nie ab. Der Server muss einen eigenen Widerrufsmechanismus (z.B. Token-Blockliste) implementieren.
Was ist der Unterschied zwischen HS256 und RS256?
HS256 verwendet einen symmetrischen Geheimschlüssel, der von allen Parteien geteilt wird. RS256 verwendet ein asymmetrisches Schlüsselpaar (privater Schlüssel zum Signieren, öffentlicher Schlüssel zur Verifizierung), besser für Microservices geeignet.
Wo sollte ein JWT gespeichert werden?
HttpOnly-Cookies werden empfohlen, da sie vor XSS-Angriffen schützen. JWTs im localStorage zu speichern ist zwar praktisch, aber anfällig für XSS.
Was ist ein Refresh Token?
Ein Refresh Token ist ein langlebiger Token, mit dem nach dem Ablauf des Access Tokens ein neuer Access Token abgerufen werden kann, ohne dass der Benutzer sich erneut anmelden muss.
Wird das eingefügte JWT an einen Server gesendet?
Nein. Das gesamte Dekodieren und Kodieren erfolgt im Browser per JavaScript. Es wird nichts an einen Server übertragen.

Verwandte Tools