Nemokamas JWT dekoderis ir derintuvas
Įklijuokite bet kokį JSON Web Token, kad akimirksniu dekoduotumėte jo antraštę (header) ir apkrovą (payload), patikrintumėte galiojimo būseną ir patvirtintumėte jo parašą — HS256, RS256, ES256, PS256 ir kt. 100% apdorojimas kliento pusėje; jūsų žetonai niekada nepalieka jūsų naršyklės.
Kas yra JWT viduje
Antraštė (Header)
Nedidelis JSON objektas, nurodantis parašo algoritmą (alg) ir
žetono tipą (typ). Jis yra tiesiog dekoduotas, o ne užšifruotas — matomas visiems, turintiems
žetoną.
Apkrova (Payload)
Teiginiai (claims) — faktiniai duomenys, pavyzdžiui, kam žetonas atstovauja
(sub) ir kada jis baigia galioti (exp). Taip pat tik užkoduoti, niekada nevertinkite
to kaip paslapties.
Parašas (Signature)
Kriptografinis parašas, apimantis antraštę ir apkrovą. Tai vienintelė dalis, įrodanti, kad žetonas yra autentiškas ir nepakeistas — ir vienintelė dalis, kuriai patikrinti reikalingas raktas.
Pasirašytas naudojant HMAC arba viešąjį raktąDažniausiai užduodami klausimai
Ką daro JWT dekoderis?
JWT dekoderis padalija žetoną į tris dalis — antraštę, apkrovą ir parašą — tada iš Base64URL formato dekoduoja antraštę ir apkrovą, kad galėtumėte perskaityti faktinius teiginius ir metaduomenis, tokius kaip naudotas algoritmas, subjektas ir galiojimo laikas.
Ar JWT dekodavimas yra tas pats, kas jo patikrinimas?
Ne. Dekodavimas atskleidžia tik skaitomą žetono turinį — tam nereikia jokios paslapties ir tai neįrodo žetono autentiškumo. Tikrinimas patikrina parašą naudodamas slaptąjį arba viešąjį raktą, kad patvirtintų, jog žetonas yra autentiškas ir nebuvo pakeistas. Bet kas gali dekoduoti JWT; tačiau tik tas, kuris turi teisingą raktą, gali jį patikrinti.
Ar man reikia slaptojo rakto norint dekoduoti JWT?
Ne. JWT antraštė ir apkrova yra tik koduojami Base64URL formatu, o ne šifruojami, todėl bet kas gali juos dekoduoti ir perskaityti be jokio rakto. Slaptasis arba viešasis raktas reikalingas tik parašui patikrinti, o ne skaitomam turiniui dekoduoti.
Ar mano žetono duomenys siunčiami į jūsų serverį?
Ne. Šis įrankis veikia tik jūsų naršyklėje, naudodamas „JavaScript“ ir „Web Crypto API“. Jūsų žetonas, slaptasis raktas ir viešasis raktas niekada niekur neperduodami. Tuo galite įsitikinti patys, naudodamiesi įrankiu patikrinę naršyklės „Network“ (tinklo) skirtuką.
Ar galiu su šiuo įrankiu patikrinti RS256 arba ES256 žetonus?
Taip. Šis dekoderis palaiko HMAC algoritmų parašų tikrinimą (HS256, HS384, HS512) naudojant bendrinamą paslaptį, ir viešojo rakto algoritmų (RS256/384/512, ES256/384/512, PS256/384/512) tikrinimą naudojant PEM formato viešąjį raktą.
Kodėl mano žetonas rodomas kaip nebegaliojantis?
JWT žetonuose dažnai būna exp teiginys — Unix laiko žyma, nurodanti
kada žetonas nustoja galioti. Jei dabartinis laikas viršija šią laiko žymą, žetonas
yra nebegaliojantis ir bet kuris jį tikrinantis serveris turėtų jį atmesti, net jei pats parašas
vis dar galioja.
Ką reiškia alg: none ir kodėl tai pažymėta kaip pavojinga?
Algoritmas „none“ reiškia, kad žetonas nurodo apskritai neturintis parašo. Tai gerai žinomas JWT pažeidžiamumas — kai kurios prastai sukonfigūruotos bibliotekos priims tokius žetonus kaip galiojančius nieko netikrindamos, taip leisdamos užpuolikui suklastoti bet kokius teiginius. Gamybinės (production) sistemos visada turėtų atmesti nepasirašytus žetonus.
Reikia sukurti naują slaptąjį raktą?
Sukurkite naują, kriptografiškai saugų JWT slaptąjį raktą naujiems žetonams pasirašyti — nemokamai, akimirksniu ir 100% naršyklėje.
Eiti į JWT Secret Key Generator