Was es tut
Dekodiert ein
JSON Web TokenJSON Web TokenA compact, URL-safe token that carries claims (like identity or expiry) between two parties, signed to prevent tampering.Learn more
und zeigt, was darin steckt — lokal, in Ihrem Browser. Fügen Sie ein JWT ein, und Header und Payload öffnen sich als formatiertes JSON in nebeneinanderliegenden Panels, mitalg- und typ-Chips darüber. Unter diesen Chips stehen bis zu drei Sicherheitshinweise: alg none — unsigniertes Token (rot, bei alg: none), symmetrisch — serverseitig prüfen (Info, bei HS256/HS384/HS512) und ohne exp-Claim (Akzent, wenn der Payload kein Ablaufdatum trägt). Zeit-Claims (exp, iat, nbf) werden humanisiert dargestellt — exp in 43 Tagen, iat vor 2 Stunden — und das Payload-Panel trägt ein gültig- oder abgelaufen-Badge, gesteuert von exp.
Dieses Werkzeug dekodiert nur — es verifiziert niemals eine Signatur. Eine Signaturprüfung braucht den Secret- oder Public-Key, der serverseitig liegt. Jeder Claim, den Sie hier lesen, ist daher eine Behauptung des Absenders, kein geprüfter Fakt.
So benutzen Sie es
- Wählen Sie einen Beispiel-Chip — HS256, Expired, alg: none — oder fügen Sie Ihr eigenes Token in das
JWTJWTA compact, URL-safe token that carries claims (like identity or expiry) between two parties, signed to prevent tampering.Learn more
-Feld ein. Ein Token hat drei durch Punkte getrennte Teile; weniger als zwei Teile erzeugen eine Fehlerbox. - Lesen Sie die Panels: links Header (Algorithmus-Metadaten), rechts Payload (die Claims). Kopieren Sie beide als JSON.
- Prüfen Sie die Hinweis-Chips: sie markieren unsignierte Tokens, symmetrische Algorithmen und fehlende Ablaufdaten auf einen Blick.
- Beachten Sie das Badge neben dem Payload:
valid, solangeexpin der Zukunft liegt,expired, sobald es vorbei ist. - Kopieren Sie einen Freigabelink, der das Token in der URL trägt, oder lesen Sie die rohe Signatur unter den Panels.
Beispiele
Der HS256-Chip füllt das Token eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkFkYSBMb3ZlbGFjZSIsImlhdCI6MTcwMDAwMDAwMH0.sig (Dummy-Signatur). Es dekodiert zu:
| Teil | Dekodiert |
|---|---|
| Header | { "alg": "HS256", "typ": "JWT" } |
| Payload | { "sub": "1234567890", "name": "Ada Lovelace", "iat": 1700000000 } |
Sein Payload hat kein exp, daher lauten die Hinweise symmetrisch — serverseitig prüfen und ohne exp-Claim.
Der Expired-Chip trägt exp: 1700000000 (2023-11-14T22:13:20Z) plus ein iat eine Sekunde früher — beide in der Vergangenheit — daher liest das Payload-Badge expired und der humanisierte Chip exp vor 1015 Tagen (die Zahl wächst mit der Zeit; das Badge ändert sich nicht zurück).
Der alg: none-Chip ist eyJhbGciOiJub25lIn0.eyJzdWIiOiIxIn0. — Header { "alg": "none" }, Payload { "sub": "1" }, leere Signatur nach dem abschließenden Punkt. Es dekodiert wie jedes andere Token und erzeugt den roten Hinweis alg none — unsigniertes Token plus ohne exp-Claim; die Signaturzeile zeigt (none).
Ein zweiteiliges Token wie eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxIn0 (Header und Payload, kein drittes Segment) dekodiert weiterhin — die fehlende Signatur erscheint als (none). Eingaben mit weniger als zwei punktgetrennten Teilen, wie abc, erzeugen die Fehlerbox: A JWT has 3 dot-separated parts: header.payload.signature.
Gut zu wissen
- Ein
JWTJWTA compact, URL-safe token that carries claims (like identity or expiry) between two parties, signed to prevent tampering.Learn more
besteht aus drei Base64url-Teilen, durch Punkte verbunden:header.payload.signature. Base64url ersetzt+→-und/→_und entfernt das=-Padding, damit ein Token in eine URL oder einen HTTP-Header passt — deshalb enthält einJWTJWTA compact, URL-safe token that carries claims (like identity or expiry) between two parties, signed to prevent tampering.Learn more
nie+,/oder=. - Die Signatur wird über
base64url(header) + "." + base64url(payload)mit dem Algorithmus aus dem Header berechnet —HMACHMACA construction that combines a hash function with a secret key to prove a message is intact and came from someone holding the key.
mit einem Shared Secret (HS256) oder einem Private Key (RS256). Ändern Sie ein Byte eines der beiden kodierten Teile, passt sie nicht mehr. Jeder kann Header und Payload beliebig schreiben; die Signatur ist der einzige Teil, den niemand ohne den Schlüssel fälschen kann. Genau deshalb dekodiert dieses Werkzeug, aber verifiziert nie. - Zeit-Claims sind Unix-Sekunden:
iat= ausgestellt am,nbf= nicht gültig vor,exp= läuft ab. Ein fehlendes drittes Segment erscheint als(none); zweiteilige Tokens dekodieren weiterhin. - Privat: das Dekodieren läuft lokal in Ihrem Browser. Ein
JWTJWTA compact, URL-safe token that carries claims (like identity or expiry) between two parties, signed to prevent tampering.Learn more
ist oft ein lebendiger Berechtigungsnachweis — dieses Werkzeug überträgt ihn nie. (Der Freigabelink trägt das Token; teilen Sie nur Tokens, die Sie kontrollieren.) - Verwandte Werkzeuge:
HMACHMACA construction that combines a hash function with a secret key to prove a message is intact and came from someone holding the key.
Generator, JSON Formatter,Base64Base64An encoding representing binary data as 64 safe ASCII characters, so it survives transport through text-only channels. It encodes — it does not encrypt.
Encode / Decode.