§

तुमचा JWT पेस्ट करा

Parsing आणि signature verification दोन्ही locally run होतात. Token बद्दल काहीही server ला पाठवले जात नाही.
§

शीर्षलेख

json
§

पेलोड

json
§

Signature verify करा

Signature verify करण्यासाठी secret प्रविष्ट करा.

JSON Web Tokens भारतातील authentication stack चालवतात — AWS Cognito ID tokens पासून, Razorpay आणि Cashfree webhook tokens पर्यंत जे receivers verify करणे आवश्यक आहे. Aadhaar eKYC API, DigiLocker, आणि NPCI UPI OAuth flows सर्व RFC 7519 JWT claims वापरतात. Bengaluru आणि Hyderabad मधील fintech developers production bearer tokens third-party debuggers मध्ये paste करणे टाळतात — कारण ते server logs मध्ये जातात. हा decoder तीन Base64URL segments browser मध्येच split करतो, header, payload, आणि signature surface करतो, आणि `exp`, `iat`, आणि `nbf` सारखे standard claims proper time rendering सोबत decode करतो — तुमचा token tab सोडत नाही.

JSON Web Token म्हणजे काय?

JSON Web Token (JWT) हे small claims payload साठी compact, URL-safe envelope आहे. हे stateless web sessions, OAuth/OIDC ID tokens, machine-to-machine API auth, आणि signed magic links साठी standard credential format आहे. JWT नेहमी dots ने joined तीन base64url segments असतो: header.payload.signature. Header आणि payload JSON आहेत; signature पहिल्या दोन segments वर binary MAC किंवा digital signature आहे.

JWTs कसे कार्य करतात?

हे tool token decode करताना प्रत्येक JWT library follow करणारा तोच three-step path walk करतो:

  1. Token dots वर नक्की तीन non-empty segments मध्ये split करा. इतर कोणताही shape malformed आहे.
  2. Segments 0 आणि 1 Base64url-decode करा, नंतर प्रत्येक JSON.parse करा. Header algorithm (alg) आणि token type (typ) carry करतो. Payload claims (sub, exp, iat, custom keys) carry करतो.
  3. Secret provided असल्यास, header मधील algorithm वापरून <segment0>.<segment1> वर MAC recompute करा. Third segment विरुद्ध bytes compare करा.
  4. Decoded claims सोबत verification result surface करा, exp claim मधून computed human-readable expiry indicator सह.

JWTs browser मध्ये का decode करायचे?

Real, in-use JWT remote debugger मध्ये paste केल्यास credential त्या service च्या logs, observability stack, आणि service data share करत असलेल्या कोणत्याही partner ला leak होतो. Third-party site tokens log करत नसल्याचा दावा केला तरी तुम्ही ते verify करू शकत नाही. हे tool बनवले जेणेकरून तुम्हाला कधीही हा compromise करण्याची गरज नसेल:

  • Zero network: runtime ला fetch, XMLHttpRequest, किंवा sendBeacon calls नाहीत. Decode आणि verify करताना DevTools उघडा — Network panel शांत राहतो.
  • Native Web Crypto: HMAC verification crypto.subtle.importKey आणि crypto.subtle.sign वापरते, तोच primitives तुमचा runtime call करेल.
  • Static deploy: प्रत्येक page single static HTML file आहे compromise करण्यासाठी server endpoint शिवाय. Token leak होण्यासाठी server नाही.

हे tool काय verify करते, आणि काय नाही?

या tool चा Version 1 फक्त HMAC-SHA family signatures verify करतो. Concretely:

  • Supported: HS256, HS384, HS512. Shared secret provide करा आणि tool MAC recompute आणि compare करेल.
  • अद्याप supported नाही: RS256/384/512 (RSA), ES256/384/512 (ECDSA), EdDSA, आणि PS256/384/512 (RSA-PSS). यांना PEM किंवा JWK form मध्ये public key लागतो आणि ते जाणूनबुजून follow-up release साठी deferred आहेत.
  • Refused: alg: "none". Tool token decode करतो पण explicitly insecure म्हणून flag करतो — signature validation होत नाही, आणि असा token accept करणाऱ्या कोणत्याही production system मध्ये serious vulnerability आहे.

JWT decoding उदाहरण कसे दिसते?

वर input field मध्ये canonical RFC 7519 example token paste करा:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

Header {"alg":"HS256","typ":"JWT"} मध्ये decode होतो आणि payload {"sub":"1234567890","name":"John Doe","iat":1516239022} मध्ये. Verify panel मध्ये your-256-bit-secret प्रविष्ट करा आणि signature check valid परत येतो. Secret चा एकच character बदला आणि ते invalid परत येते. यातील काहीही तुमचा browser सोडत नाही.

हाच JWT decoder आम्हाला production मध्ये token debug करायला लागल्यावर हवा होता: privacy-respecting, जलद, आणि runtime वापरत असलेल्या तोच primitives वर बनवलेला.