Libreng JWT Decoder
I-decode at suriin ang anumang JSON Web Token. Tingnan ang header, payload, expiration, at mga karaniwang claim. Lahat ay tumatakbo nang lokal sa iyong browser β hindi kailanman lumalabas ang mga token sa iyong device.
π Ang token ay na-decode nang buo sa iyong browser. Walang ipinapadala sa anumang server.
Mga karaniwang gamit
- Debug Authentication Issue na may JWT DecoderI-inspect ang JWT mula sa app upang i-debug ang login failure, permission issue, at token expiration problem.
- I-inspect ang API Token habang Sinusulit ang EndpointI-decode ang JWT na ibabalik ng API upang i-verify na ang tamang claim, scope, at permission ay isinusulit.
- Security Audit JWT TokenSuriin ang JWT bilang bahagi ng security audit β tingnan ang mahinang signing algorithm, excessive token lifetime, o sensitive data sa payload.
- I-inspect ang OAuth at OpenID Connect TokenI-decode ang access token, ID token, at refresh token mula sa Google, Auth0, Okta, Microsoft, at iba pang OAuth provider.
- Matuto kung Paano Gumagana ang JWT TokenI-decode ang sample JWT upang maunawaan ang structure: header, payload, at signature. Makita ang real-world claim example.
Paano ito Gumagana
Ang decoder ay hand-written at walang-dependency na parser na buong tumatakbo sa iyong browser: hinahati nito ang token sa mga tuldok, kino-convert ang bawat Base64URL segment sa plain Base64 gamit ang string replacement at pina-pad sa multiple ng apat, pagkatapos ay tinatawag ang native na atob() at JSON.parse ng browser para makuha ang header at payload object. Gumagamit ang opsyonal na pag-verify ng signature ng Web Crypto API (crypto.subtle.verify) β walang library, walang server.
- 1Base64URL decodingHinahati ng tool ang JWT sa dalawang period delimiter nito, kaya tatlong segment ang nabubuo. Ang bawat segment ay Base64URL β na gumagamit ng - at _ sa halip na + at / at walang padding. Ibinabalik ng code ang mga character na iyon at nilalagyan ng = sign, pagkatapos ay tinatawag ang built-in na atob() ng browser para i-decode ang mga byte.
- 2Pag-parse ng JSON at pagkuha ng claimIpinapasa ang na-decode na byte sa JSON.parse para makuha ang header at payload object. Kinukuha ang mga registered claim na exp, iat, at nbf bilang Unix timestamp at kino-convert sa Date object; sinusuri ulit ang expiry status bawat 20 segundo gamit ang setInterval kaya ang token na nag-expire habang bukas ang tab ay awtomatikong lumilipat mula valid sa expired. Fino-format ang mga relatibong timestamp ('sa loob ng 3 araw', '2 oras na ang nakalipas') gamit ang Intl.RelativeTimeFormat at ang locale ng browser mo.
- 3Pagpapakita ng signature at opsyonal na pag-verifyIpinapakita ang raw na Base64URL signature string kasama ng header at payload. Kung magbibigay ka ng key, tinatawag ng tool ang crypto.subtle.importKey at crypto.subtle.verify para suriin nang lokal ang signature. Tumatanggap ito ng HMAC shared secret (HS256/384/512), PEM-encoded na RSA public key (RS256/384/512), at ECDSA public key o JWK/JWKS object (ES256/384/512) β itinatakda ng alg field sa header.
- 4Walang network requestBawat hakbang β pag-decode, math ng timestamp, at cryptographic na pag-verify β ay tumatakbo sa loob ng JavaScript engine ng browser. Hindi kailanman umaalis sa device mo ang token at anumang key material na inilagay mo.
Kadalasang may dalang session credential, pagkakakilanlan ng user, at authorization scope ang mga JWT; dine-decode at opsyonal na vine-verify ito ng tool na ito nang buo sa iyong browser gamit ang atob() at ang Web Crypto API, kaya hindi ipinapadala kahit saan ang token o anumang key na ibinigay mo.
Mga Kaugnay na Tool
URL Encoder at Decoder
I-encode at i-decode ang mga URL at query string. Sinusuportahan ang encodeURIComponent, decodeURIComponent, at query string parsing.
UUID Inspector
I-decode ang anumang UUID o ULID β tingnan ang bersyon, variant, at ang creation timestamp na nakalagay sa v1, v6, v7, at mga ULID. Tumatakbo nang buo sa iyong browser.
Base64 Encoder at Decoder
I-encode ang teksto o mga file sa Base64, o i-decode ang mga Base64 string pabalik sa plain text. Mabilis, pribado, at libre.