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.

9 Palaikomi algoritmai
100% Saugumas naršyklėje
0 Duomenų siunčiama į serverį
Antraštė (Header) Apkrova (Payload) Parašas (Signature)
Įklijuokite JWT aukščiau, kad jį akimirksniu dekoduotumėte.

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ą.

Base64URL užkoduotas JSON

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.

Base64URL užkoduotas JSON

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