Spring til indholdet
Quaestio

JWT-dekoder

Indsæt et token for at se, hvad det indeholder, og hvornår det udløber. Har du nøglen, kan du også kontrollere signaturen.

Dekodningen sker i din browser. Intet bliver sendt.

Gyldighed

…

Dekodet, ikke verificeret: Alle kan lave et token med dette indhold. Indtast nøglen nedenfor for at kontrollere signaturen.

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"
}

Felter og claims

algsignaturalgoritme
HS256
typtokentype
JWT
issudsteder
https://example.com
subsubjekt, som regel bruger-id’et
1234567890
audmodtageren, tokenet er beregnet til
quaestio
expudløbstid
4102444800
nbfikke gyldigt før
1757000000
iatudstedt
1757000000
jtiunikt token-id
4f1c2a9e
Signatur
32 byte

Verificér signaturen

Nøglen bruges kun i din browser og gemmes ikke.

Indlejr

Indlejr værktøjet på dit website

Kopiér koden, og indsæt den, hvor værktøjet skal vises, f.eks. i et blogindlæg eller på en skoleside. Det er gratis, boksen har ingen annoncer, og værktøjet regner i den besøgendes browser.

Sådan virker det

Et JSON Web Token (JWT, RFC 7519) har tre dele adskilt af punktummer: header, payload og signatur. Header og payload er JSON kodet med base64url, en variant af base64, der bruger - og _ i stedet for + og / og udelader udfyldningen. Alle kan læse indholdet; det er ikke krypteret.

Headeren angiver algoritmen (alg) og ofte typen (typ) og nøgle-id’et (kid). Payloaden indeholder claims, udsagn om brugeren eller sessionen. Standarden registrerer syv: iss (udsteder), sub (subjekt), aud (modtager), exp (udløbstid), nbf (ikke før), iat (udstedt) og jti (JWT-id). Alle andre claims bestemmer udstederen selv.

Tiderne i exp, nbf og iat er sekunder siden 1. januar 1970 UTC. Et token må ikke accepteres fra og med sin exp-tid og heller ikke før sin nbf-tid. Dekoderen sammenligner dem med uret på din enhed, så et ur, der går forkert, giver en forkert status.

At dekode er ikke at verificere. Signaturen viser, at tokenet er udstedt af nogen, der har nøglen, og at indholdet ikke er ændret, men det kan kun kontrolleres med nøglen. HS256, HS384 og HS512 bruger en delt hemmelighed (HMAC). RS og PS bruger RSA, ES elliptiske kurver (ECDSA med P-256, P-384 eller P-521) og EdDSA Ed25519; de kontrolleres med den offentlige nøgle som PEM eller JWK, som udstedere ofte offentliggør som et JWK Set.

Et token med alg none har ingen signatur og må aldrig accepteres af en server. Flere kendte sårbarheder kom fra biblioteker, der accepterede none, eller som lod en angriber bytte RS256 ud med HS256 og signere med den offentlige nøgle som hemmelighed.

Et token fungerer ofte som en nøgle til en konto. Her sker alt i din browser med dens indbyggede kryptografi (WebCrypto), og hverken tokenet, hemmeligheden eller nøglen sendes nogen steder hen. Indsæt alligevel aldrig et aktivt token eller en hemmelighed på et websted, du ikke har tillid til, og indsæt aldrig en privat nøgle: Verificeringen kræver kun den offentlige.

Kilder

Sådan kontrolleres værktøjerne