JWT डिकोडर
JWT डीकोड करके उसका हेडर, पेलोड क्लेम और सिग्नेचर पढ़ें; exp, nbf और iat तारीख़ों और एक्सपायरी स्टेटस के साथ। लोकली चलता है; कुछ अपलोड नहीं होता।
शुरुआत का "Bearer " अपने-आप हटा दिया जाता है।
{
"alg": "HS256",
"typ": "JWT"
}{
"sub": "1234567890",
"name": "John Doe",
"iat": 1516239022
}| एल्गोरिद्म | HS256 |
|---|---|
| सिग्नेचर | SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c |
JWT डिकोडर क्या है?
JWT डिकोडर JSON Web Token को हेडर, पेलोड और सिग्नेचर में बाँटता है और JSON को सुंदर रूप में दिखाता है। समय वाले क्लेम (exp, nbf, iat) पढ़ने योग्य UTC तारीख़ों और सापेक्ष समय में बदले जाते हैं, और स्टेटस बैज बताता है कि टोकन expired है, अभी वैध नहीं हुआ है या उसकी कोई समाप्ति नहीं है। यह सिर्फ़ डीकोड करता है – सिग्नेचर वेरिफ़ाई नहीं करता।
JWT डिकोडर का उपयोग कैसे करें
- टोकन चिपकाएं (शुरुआती
Bearerअपने-आप हट जाता है)। - डीकोड किया हेडर (एल्गोरिदम, टाइप, key ID) और पेलोड क्लेम पढ़ें।
- एक्सपायरी स्टेटस और exp/nbf/iat तारीख़ें देखें।
- किसी भी क्लेम पर भरोसा करने से पहले सही key के साथ JWT Verifier इस्तेमाल करें।
उदाहरण
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
Header {"alg": "HS256", "typ": "JWT"} · payload {"sub": "1234567890", "name": "John Doe", "iat": 1516239022} · status: no expiration JWT डिकोडर का उपयोग कब करें
इसे ऑथेंटिकेशन डीबग करने के लिए इस्तेमाल करें: देखें कि टोकन में कौन-से क्लेम, स्कोप, audience या एक्सपायरी हैं। डीकोड किए क्लेम को भरोसेमंद न मानें – कोई भी मनमाने कंटेंट वाला टोकन बना सकता है। एन्क्रिप्टेड टोकन (JWE, पाँच हिस्से) key के बिना डीकोड नहीं हो सकते।
JWT डिकोडर कैसे काम करता है
कॉम्पैक्ट JWS में डॉट से अलग तीन Base64URL हिस्से होते हैं। पहले दो डीकोड होते हैं (Base64URL → बाइट → UTF-8) और JSON के रूप में पार्स होते हैं; तीसरा जस का तस दिखाया जाता है क्योंकि वह बाइनरी सिग्नेचर डेटा है। समय क्लेम NumericDate वैल्यू (1970-01-01 UTC से सेकंड) हैं और आपके डिवाइस की घड़ी से तुलना किए जाते हैं। कुछ भी आपके ब्राउज़र से बाहर नहीं जाता।
सामान्य उपयोग मामले
- पता लगाना कि API 401 क्यों लौटाती है: क्या टोकन expired है या ग़लत audience के लिए है?
- एक्सेस टोकन के अंदर की भूमिकाएँ या स्कोप पढ़ना।
- हेडर में kid देखकर जानना कि कौन-सी साइनिंग key इस्तेमाल हुई।
- OpenID Connect प्रोवाइडर के ID टोकन जाँचना।
सुरक्षा नोट
डीकोडिंग सिर्फ़ आपके ब्राउज़र में होती है। JWT को पासवर्ड की तरह संभालें: वैध टोकन रखने वाला कोई भी उसे समाप्त होने तक इस्तेमाल कर सकता है।
अक्सर पूछे जाने वाले प्रश्न
क्या प्रोडक्शन टोकन चिपकाना सुरक्षित है?
टोकन लोकली डीकोड होता है और कहीं नहीं भेजा जाता। फिर भी, वैध टोकन एक क्रेडेंशियल है – अगर आपने उसे ऐसी जगह साझा किया जो आपके नियंत्रण में नहीं तो उसे रद्द करें।
डीकोडिंग वेरिफ़िकेशन क्यों नहीं है?
पेलोड सिर्फ़ Base64URL-एन्कोडेड है, एन्क्रिप्टेड नहीं। वेरिफ़िकेशन के लिए सीक्रेट या पब्लिक key से सिग्नेचर जाँचना होता है।
exp, nbf और iat का क्या मतलब है?
exp समाप्ति का समय है, nbf "not before" (इससे पहले टोकन अमान्य है), और iat वह समय जब वह जारी हुआ – सभी Unix epoch से सेकंड में।