JWT-Decoder
Fügen Sie ein Token ein, um zu sehen, was es enthält und wann es abläuft. Wenn Sie den Schlüssel haben, können Sie auch die Signatur prüfen.
Das Dekodieren geschieht in Ihrem Browser. Es wird nichts gesendet.
Gültigkeit
…
Dekodiert, nicht geprüft: Jeder kann ein Token mit diesem Inhalt erstellen. Geben Sie unten den Schlüssel ein, um die Signatur zu prüfen.
Header
{
"alg": "HS256",
"typ": "JWT"
}Payload
{
"iss": "https://example.com",
"sub": "1234567890",
"aud": "quaestio",
"name": "Ada Lovelace",
"iat": 1757000000,
"nbf": 1757000000,
"exp": 4102444800,
"jti": "4f1c2a9e"
}Felder und Claims
- algSignaturalgorithmus
- HS256
- typTokentyp
- JWT
- issAussteller
- https://example.com
- subSubjekt, meist die Benutzer-ID
- 1234567890
- audEmpfänger, für die das Token bestimmt ist
- quaestio
- expAblaufzeit
- 4102444800
- nbfnicht gültig vor
- 1757000000
- iatausgestellt am
- 1757000000
- jtieindeutige Token-ID
- 4f1c2a9e
- Signatur
- 32 Byte
Signatur prüfen
Der Schlüssel wird nur in Ihrem Browser verwendet und nicht gespeichert.
So funktioniert es
Ein JSON Web Token (JWT, RFC 7519) besteht aus drei durch Punkte getrennten Teilen: Header, Payload und Signatur. Header und Payload sind JSON, kodiert mit base64url, einer Variante von base64, die - und _ statt + und / verwendet und das Padding weglässt. Jeder kann den Inhalt lesen; er ist nicht verschlüsselt.
Der Header nennt den Algorithmus (alg) und oft den Typ (typ) und die Schlüssel-ID (kid). Die Payload enthält Claims, also Aussagen über den Benutzer oder die Sitzung. Der Standard registriert sieben: iss (Aussteller), sub (Subjekt), aud (Empfänger), exp (Ablaufzeit), nbf (nicht vor), iat (ausgestellt am) und jti (JWT-ID). Alle weiteren Claims legt der Aussteller fest.
Die Zeiten in exp, nbf und iat sind Sekunden seit dem 1. Januar 1970 UTC. Ein Token darf ab seiner exp-Zeit nicht mehr und vor seiner nbf-Zeit noch nicht akzeptiert werden. Der Decoder vergleicht sie mit der Uhr Ihres Geräts; geht die Uhr falsch, ist auch der Status falsch.
Dekodieren ist keine Prüfung. Die Signatur zeigt, dass das Token von jemandem mit dem Schlüssel ausgestellt wurde und dass der Inhalt nicht verändert wurde, das lässt sich aber nur mit dem Schlüssel prüfen. HS256, HS384 und HS512 verwenden ein gemeinsames Secret (HMAC). RS und PS verwenden RSA, ES elliptische Kurven (ECDSA mit P-256, P-384 oder P-521) und EdDSA Ed25519; diese werden mit dem öffentlichen Schlüssel als PEM oder JWK geprüft, den Aussteller oft als JWK Set veröffentlichen.
Ein Token mit alg none hat keine Signatur und darf von einem Server niemals akzeptiert werden. Mehrere bekannte Sicherheitslücken entstanden durch Bibliotheken, die none akzeptierten oder einem Angreifer erlaubten, RS256 gegen HS256 zu tauschen und mit dem öffentlichen Schlüssel als Secret zu signieren.
Ein Token wirkt oft wie ein Schlüssel zu einem Konto. Hier geschieht alles in Ihrem Browser mit dessen eingebauter Kryptografie (WebCrypto), und weder das Token noch das Secret noch der Schlüssel werden irgendwohin gesendet. Fügen Sie trotzdem nie ein aktives Token oder Secret in eine Website ein, der Sie nicht vertrauen, und fügen Sie nie einen privaten Schlüssel ein: Für die Prüfung genügt der öffentliche.