tigtools

JWT डिकोडर

JWT पेस्ट करके उसका हेडर और क्लेम पढ़ें और देखें कि वह कब समाप्त होगा। डिकोडिंग आपके ब्राउज़र में होती है और इससे सिग्नेचर सत्यापित नहीं होता।

आपके ब्राउज़र में चलता है साइन अप की ज़रूरत नहीं

डिकोड करना, सत्यापन करना नहीं है: कोई भी किसी भी सामग्री वाला टोकन बना सकता है। यह टूल सिग्नेचर की जाँच नहीं करता। यह केवल आपके ब्राउज़र में चलता है, फिर भी किसी भी वेबसाइट पर लाइव प्रोडक्शन टोकन पेस्ट करने से बचें।

इस्तेमाल करने का तरीका

  1. Authorization हेडर, कुकी या अपने ब्राउज़र के डेवलपर टूल से टोकन कॉपी करें। शुरुआत में मौजूद “Bearer ” अपने-आप हटा दिया जाएगा।
  2. इसे बॉक्स में पेस्ट करें। हेडर और पेलोड, फ़ॉर्मैट किए गए JSON के रूप में दिखेंगे।
  3. स्टेटस लाइन और क्लेम तालिका में issuer, audience और समाप्ति की तारीखें अपने स्थानीय समय में देखें।
  4. ज़रूरत पड़ने पर हेडर या पेलोड का JSON कॉपी करें।

यह कैसे काम करता है

JSON Web Token (JWT, RFC 7519) अपने आम हस्ताक्षरित रूप (JWS) में तीन base64url-एन्कोड किए गए हिस्सों से बना होता है, जो डॉट से अलग होते हैं। हेडर बताता है कि टोकन पर किस एल्गोरिदम से हस्ताक्षर किए गए, जैसे HS256 (SHA-256 के साथ HMAC) या RS256 (RSA)। पेलोड में क्लेम होते हैं: उपयोगकर्ता और टोकन के बारे में कथन। हस्ताक्षर से सर्वर जाँच सकता है कि हेडर और पेलोड में बदलाव तो नहीं किया गया है।

हेडर और पेलोड सिर्फ़ एन्कोड किए जाते हैं, एन्क्रिप्ट नहीं। टोकन पाने वाला कोई भी व्यक्ति उसकी सामग्री पढ़ सकता है—यह टूल ठीक यही करता है। JWT पेलोड में गोपनीय जानकारी न रखें।

डिकोड करने से टोकन के बारे में कुछ भी साबित नहीं होता। जारीकर्ता की कुंजी के बिना कोई नहीं बता सकता कि हस्ताक्षर असली है या नहीं, इसलिए इस टूल के नतीजे का इस्तेमाल कभी भी यह तय करने के लिए न करें कि किसी टोकन पर भरोसा करना चाहिए या नहीं। सत्यापन आपके सर्वर पर, ऐसे अपडेटेड JWT लाइब्रेरी से होना चाहिए जो हस्ताक्षर, एल्गोरिदम, exp, nbf, iss और aud की जाँच करे।

रजिस्टर्ड क्लेम की जानकारी तालिका में दी गई है। exp, nbf और iat, NumericDate मान होते हैं: 1 जनवरी 1970 UTC से बीते सेकंड। यह टूल इन्हें आपके समय क्षेत्र की तारीखों में बदलता है और आपके डिवाइस की घड़ी से तुलना करता है। इसमें घड़ी के अंतर के लिए सर्वर अक्सर जो थोड़ी छूट देते हैं, वह शामिल नहीं है। आपकी घड़ी गलत होने पर स्थिति भी गलत होगी।

पाँच हिस्सों वाले टोकन एन्क्रिप्ट किए गए JWT (JWE) होते हैं। कुंजी के बिना उनका पेलोड डिकोड नहीं किया जा सकता, इसलिए यह टूल केवल फ़ॉर्मैट बताता है।

उदाहरण

मेरा API 401 क्यों लौटा रहा है?

आपका ऐप जो access token भेजता है, उसे डिकोड करें। अगर स्थिति में “Expired on …” लिखा हो, तो क्लाइंट को टोकन रीफ़्रेश करना होगा। अगर aud में https://api.example.com दिखता है, लेकिन आप https://api2.example.com को कॉल कर रहे हैं, तो ऑडियंस मेल नहीं खाती।

OpenID Connect ID token की जाँच

लॉगिन प्रदाता के ID token में iss (प्रदाता), sub (स्थायी उपयोगकर्ता ID), aud (आपकी क्लाइंट ID), iat और exp, साथ ही email और name जैसे प्रोफ़ाइल क्लेम होते हैं। इसे डिकोड करने से पता चलता है कि आपके ऐप को असल में कौन-से क्लेम मिलते हैं।

टाइमस्टैम्प क्लेम पढ़ें

पेलोड में "exp": 1735689600 है। क्लेम तालिका में यह 1 जनवरी 2025, 00:00:00 UTC के रूप में दिखता है, जिसे आपके स्थानीय समय में बदला जाता है। साथ ही यह भी दिखता है कि वह समय कितनी देर पहले था या कितनी देर बाद आएगा।

अक्सर पूछे जाने वाले सवाल

क्या यह टूल JWT हस्ताक्षर का सत्यापन करता है?

नहीं। यह सिर्फ़ हेडर और पेलोड को डिकोड करता है। सत्यापन के लिए गोपनीय कुंजी (HS256 के लिए) या जारीकर्ता की सार्वजनिक कुंजी (RS256 और ES256 के लिए) चाहिए। यह काम आपके सर्वर पर किसी भरोसेमंद लाइब्रेरी से होना चाहिए।

क्या यहाँ अपना टोकन पेस्ट करना सुरक्षित है?

टोकन आपके ब्राउज़र में डिकोड होता है और कहीं भेजा नहीं जाता। फिर भी, एक मान्य टोकन की अवधि समाप्त होने तक वह पासवर्ड की तरह काम करता है। इसलिए बेहतर है कि एक्सपायर हो चुके या टेस्ट टोकन इस्तेमाल करें और प्रोडक्शन टोकन ऐसे टूल में कभी पेस्ट न करें जिस पर आपको भरोसा न हो।

कोई भी पेलोड क्यों पढ़ सकता है?

साइन किए गए JWT, base64url से एन्कोड किए जाते हैं; यह एन्क्रिप्शन नहीं है। सिग्नेचर टोकन को बदले जाने से बचाता है, पढ़े जाने से नहीं। अगर सामग्री गोपनीय रखनी है, तो एन्क्रिप्टेड JWT (JWE) का इस्तेमाल करें या डेटा सर्वर पर रखें।

“exp” का क्या मतलब है और इसकी इकाई क्या है?

exp, NumericDate के रूप में समाप्ति का समय बताता है: 1970-01-01 00:00:00 UTC से बीते पूरे सेकंड (मिलीसेकंड नहीं)। उस समय या उसके बाद टोकन अस्वीकार कर देना चाहिए।

“not valid base64url” क्यों दिखता है?

कॉपी करते समय टोकन शायद अधूरा रह गया हो या बदल गया हो—जैसे उसके आखिरी अक्षर छूट गए हों, उसके आसपास उद्धरण-चिह्न जुड़ गए हों या URL एन्कोडिंग के कारण डॉट की जगह (%2E) आ गया हो। जारी किए गए मूल टोकन को ज्यों का त्यों पेस्ट करें।

गोपनीयता

टोकन आपके ब्राउज़र में JavaScript से डिकोड किया जाता है। इसे किसी सर्वर पर नहीं भेजा जाता, संग्रहित नहीं किया जाता और analytics में शामिल नहीं किया जाता। सिग्नेचर की पुष्टि या कुंजी की खोज नहीं होती, इसलिए कोई नेटवर्क अनुरोध नहीं किया जाता।