JWT token

Mis on JWT ja mida dekodeerimine näitab?

JSON Web Token koosneb kolmest punktidega eraldatud base64url-osast: header.payload.signature. Header nimetab allkirjastamise algoritmi, payload sisaldab claim'e nagu sub, exp ja iat ning allkiri tõendab, et kaks esimest osa ei ole muudetud. Dekodeerimine tähendab lihtsalt kahe esimese osa base64url-dekodeerimist — seda võib teha igaüks ja see ei nõua kunagi võtit.

Token, mis algab tähejadaga eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9, dekodeerub headeriks {"alg":"HS256","typ":"JWT"}. Selle payload, näiteks {"sub":"42","exp":1735689600}, näitab kasutajat 42 aegumisajaga 1. jaanuar 2025. Kolmas osa on allkiri: siin kuvatud, kuid mitte kontrollitud. Ilma HMAC-saladuse või RSA/ECDSA avaliku võtmeta ei saa see brauseripõhine tööriist tõestada allkirja ehtsust, seega ära kunagi käsitle dekodeeritud tokenit usaldusväärsena.

Kuidas JWT-d dekodeerida

  1. Kleebi täielik token väljale JWT.
  2. Loe dekodeeritud Header ja Payload JSON-ina.
  3. Kontrolli exp ja iat väärtusi, mis kuvatakse loetavate kuupäevadena ja märgitakse aegununa.
  4. Kopeeri vajalik osa või tühjenda väli, et proovida teist tokenit.

Korduma kippuvad küsimused JWT dekodeerimise kohta

Kas tööriist kontrollib allkirja?

Ei. See ainult dekodeerib ja kuvab headeri, payload'i ja allkirja. Kontrollimiseks on vaja saladust või avalikku võtit, mida see brauseripõhine dekooder teadlikult kunagi ei saa.

Kas tokeni siia kleepimine on ohutu?

Dekodeerimine toimub täielikult sinu brauseris ega laadita midagi üles. Siiski ära kleebi tootmistokeneid ühessegi veebitööriista — päris token on kehtiv mandaat.

Mida tähendavad exp ja iat?

Mõlemad on Unixi ajatemplid sekundites: iat on väljaandmise aeg, exp aegumise aeg. Tööriist teisendab need kuupäevadeks ja märgib aegunud tokeni.

Tagasi avalehele