JWT डिकोडर
क्या है
JWT Decoder एक सुरक्षा एवं विकास उपकरण है जो JSON वेब टोकन (JWTs) की सामग्री का विश्लेषण करके प्रदर्शित करता है। JWTs एक खुला मानक (RFC 7519) हैं, जो पक्षों के बीच सूचना को एक संक्षिप्त और URL-सुरक्षित JSON ऑब्जेक्ट के रूप में संचारित करने के लिए उपयोग किया जाता है। JWTs तीन डॉट-अलग किए गए घटकों से मिलकर बने होते हैं: हेडर (जो टोकन के प्रकार और हस्ताक्षर एल्गोरिथ्म को निर्दिष्ट करता है), पेलोड (जिसमें दावे या वास्तविक उपयोगकर्ता डेटा एवं मेटाडेटा शामिल होते हैं), और हस्ताक्षर (जो यह सत्यापित करता है कि टोकन प्रसारण के दौरान परिवर्तित नहीं हुआ है)।हमारा डीकोडर किसी भी JWT को तुरंत उसके तीन Base64 Url-एन्कोडेड भागों में विघटित कर देता है, प्रत्येक घटक को JSON में डीकोड करता है, और उन्हें एक संरचित, सिंटैक्स-हाइलाइटेड दृश्य में प्रदर्शित करता है; जिसमें मानव-पठनीय समयचिह्न Unix युग समयों को exp (अवधि समाप्ति), iat (जारी किया गया), और nbf (पहले से नहीं) दावों में परिवर्तित करते हैं। यह उपकरण टोकन संरचना (बिंदुओं से अलग किए गए तीन भाग, वैध Base64 Url एन्कोडिंग, डीकोड किए गए भागों में वैध JSON) की पुष्टि करता है और समाप्त हुए टोकन या असामान्य एल्गोरिथ्म जैसी संभावित समस्याओं को उजागर करता है।
कैसे उपयोग करें
- पूरा JWT स्ट्रिंग (तीनों डॉट-विभाजित खंडों सहित) को JWT इनपुट फ़ील्ड में पेस्ट करें, या फ़ाइल अपलोड विकल्प का उपयोग करके किसी फ़ाइल से टोकन लोड करें।
- Decode JWT बटन पर क्लिक करें ताकि टोकन के हेडर और पेलोड सिग्नेचर घटकों को तुरंत अलग-अलग पैनलों में पारस्परिक रूप से विश्लेषित एवं प्रदर्शित किया जा सके।
- उस हेडर पैनल की समीक्षा करें जो इस JWT पर हस्ताक्षर करने हेतु उपयोग किए गए एल्गोरिदम और टोकन प्रकार को दर्शाता है, जिसमें alg, typ और kid फील्ड शामिल हैं।
- पेलोड पैनल की जाँच करें, जिसमें सभी दावे (उपयोगकर्ता डेटा, समाप्ति समय, जारीकर्ता, दर्शक, दायरे) समयसंकेत दावों के लिए मानव-पठनीय तारीख प्रारूपण के साथ दिखाए गए हैं।
- हस्ताक्षर स्थिति पैनल की जाँच करें ताकि यह पता चल सके कि क्या टोकन समाप्त हो चुका है (समाप्ति दावे के आधार पर) और संभावित सुरक्षा समस्याओं का पता लगाने के लिए उपयोग किया गया एल्गोरिदम क्या है।
उदाहरण
इनपुट: JWT: eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0In0.signature
प्रक्रिया:
Split by . → Base64-decode header → Base64-decode payloadपरिणाम: Header: {alg:HS256}, Payload: {sub:1234}
इनपुट: JWT with exp claim
प्रक्रिया:
Decode payload → Extract exp timestamp → Check expiryपरिणाम: Token expires: 2026-12-31 (expires in 170 days)
संबंधित खोजें
लोग यह भी खोजते हैं: જेडीडब्ल्यू डिकोडर, डिकोड किया गया कुंजी प्रमाणपत्र, जेटन निरीक्षक, जेटन कोड डिकोड, जेनस वेब टोकन, वीजेडएस पार्सर।
જेडीडब्ल्यू डिकोडरडिकोड किया गया कुंजी प्रमाणपत्रजेटन निरीक्षकजेटन कोड डिकोडजेनस वेब टोकनवीजेडएस पार्सरजेडब्ल्यूए डिबगरजेडब्ल्यूटी सत्यापन
अक्सर पूछे जाने वाले प्रश्न
एक JWT क्या है और इसकी संरचना कैसी है?
JWT (JSON वेब टोकन) एक खुला मानक (RFC 7519) है जो पक्षों के बीच जानकारी को JSON ऑब्जेक्ट के रूप में सुरक्षित रूप से स्थानांतरित करने के लिए है। यह बिंदुओं से अलग किए गए तीन भागों से मिलकर बना है: हेडर में टोकन से संबंधित मेटाडेटा होता है, विशेष रूप से हस्ताक्षर एल्गोरिदम (जैसे HS256, RS256, ES256) और टोकन का प्रकार (हमेशा JWT), जिसे Base64Url JSON के रूप में एन्कोड किया जाता है।पेलोड में दावे (किसी संस्था, आमतौर पर उपयोगकर्ता के बारे में विवरण और अतिरिक्त डेटा) शामिल होते हैं, जैसे कि sub (विषय/उपयोगकर्ता आईडी), exp (समाप्ति समय-चिह्न), iat (जारी किया गया समय), aud (लक्ष्य समूह), iss (जारीकर्ता), तथा आपके एप्लिकेशन द्वारा जोड़े गए कोई भी कस्टम दावे। हस्ताक्षर की गणना एन्कोडेड हेडर और पेलोड को एक गुप्त कुंजी (HMAC एल्गोरिदम के लिए) या एक निजी कुंजी (RSA/ECDSA एल्गोरिदम के लिए) के साथ हैश करके की जाती है, जिससे यह सुनिश्चित होता है कि टोकन को बिना पता चले संशोधित नहीं किया जा सकता।अंतिम टोकन इस प्रकार है: eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8U.
क्या ऑनलाइन टूल का उपयोग करके JWT को डिकोड करना सुरक्षित है?
डिकोडिंग सुरक्षित है क्योंकि JWT का हेडर और पेलोड एन्क्रिप्ट नहीं होते—वे सिर्फ़ Base64Url में एन्कोड होते हैं (base64 की तरह, पर URL-सुरक्षित), यानी जिसके पास टोकन है वह उसकी सामग्री पढ़ सकता है। यह जानबूझकर ऐसा है: डिफ़ॉल्ट रूप से JWT साइन होते हैं, एन्क्रिप्ट नहीं। सिग्नेचर सिर्फ़ अखंडता जाँचता है, गोपनीयता नहीं। फिर भी, संवेदनशील डेटा (पासवर्ड, निजी जानकारी, API की) वाले टोकन आपको कभी भी किसी डिकोडिंग टूल में साझा नहीं करने चाहिए। खतरा डिकोडिंग में नहीं, टोकन को किसी तीसरे पक्ष के सामने उजागर करने में है। हमारा टूल सब कुछ आपके ब्राउज़र में ही करता है—टोकन कभी किसी सर्वर पर नहीं भेजा जाता, जिससे गोपनीयता बनी रहती है। अगर आपके ऐप को गोपनीय टोकन चाहिए, तो JWE (JSON Web Encryption) अपनाएँ, जो पेलोड को एन्क्रिप्ट करता है, या सुनिश्चित करें कि JWT में संवेदनशील जानकारी न हो।
कौन-से JWT एल्गोरिथम समर्थित हैं और मैं हेडर की व्याख्या कैसे करूँ?
सामान्य एल्गोरिथमों में शामिल हैं: HS256 (HMAC SHA-256) हस्ताक्षरण और सत्यापन के लिए एक सममित गुप्त कुंजी का उपयोग करता है — एक ही कुंजी हस्ताक्षर करती है और सत्यापन भी करती है; HS384 और HS512 बड़े हैश आउटपुट का उपयोग करते हैं। RS256 (RSA SHA-256) एक असममित कुंजी जोड़ी का उपयोग करता है: निजी कुंजी हस्ताक्षर करती है, सार्वजनिक कुंजी सत्यापन करती है — इसका उपयोग OAuth प्रदाताओं (Auth0, Okta) द्वारा किया जाता है; RS384 और RS512 बड़े हैश के साथ इसी प्रकार के हैं। ES256 (ECDSA P-256), ES384 और ES512 छोटे हस्ताक्षरों के लिए दीर्घवृत्त गणनात्मकता (elliptic curve cryptography) का उपयोग करते हैं।"none" का अर्थ एक बिना हस्ताक्षर वाला टोकन है — उत्पादन में ऐसे टोकनों को अस्वीकार कर दें। हेडर में कभी-कभी "kid" (कुंजी पहचान) भी शामिल होता है, जो यह निर्दिष्ट करता है कि जब कई कुंजियाँ उपलब्ध हों, तो किस हस्ताक्षरण कुंजी का उपयोग किया गया था। "alg tokens" में से जिनमें "none" एल्गोरिदम है, उनका अतीत में दुरुपयोग नहीं किया गया है।
मैं डिकोड किए गए JWT के हस्ताक्षर की पुष्टि कैसे कर सकता हूँ?
हमारा डीकोडर डीकोड किए गए घटकों और टोकन की संरचनात्मक वैधता को प्रदर्शित करता है, लेकिन हस्ताक्षर की पूर्ण जाँच नहीं कर सकता, क्योंकि जाँच के लिए हस्ताक्षर रहस्य (HS256 जैसे सममित एल्गोरिदम के लिए) या सार्वजनिक कुंजी (RS256 जैसे असममित एल्गोरिदम के लिए) की आवश्यकता होती है। जाँच करने के लिए: सममित एल्गोरिदम के लिए, हमारे हस्ताक्षर सत्यापन क्षेत्र में साझा रहस्य दर्ज करें; उपकरण हस्ताक्षर की पुनः गणना करेगा और उसे टोकन के हस्ताक्षर से तुलना करके मेल या असंगति का पता लगाएगा।असममित एल्गोरिथ्मों के लिए सार्वजनिक कुंजी (PEM प्रारूप) प्रदान करें और उपकरण क्रिप्टोग्राफिक सत्यापन करता है। हस्ताक्षर सत्यापन दो बातों की पुष्टि करता है: पहला, टोकन अपेक्षित जारीकर्ता (जिसके पास निजी कुंजी/रहस्य है) द्वारा हस्ताक्षरित है; और दूसरा, हस्ताक्षर करने के बाद से टोकन की सामग्री में कोई परिवर्तन नहीं किया गया है। उत्पादन में टोकन के सत्यापन हेतु, हमेशा अपने अधिकृतीकरण मिडलवेयर में हस्ताक्षरों का सत्यापन करें।
सामान्य JWT दावे क्या हैं और उनका क्या अर्थ है?
मानक JWT दावों (RFC 7519 में परिभाषित) में शामिल हैं: iss (इश्यूअर) उस प्रमुख की पहचान करता है जिसने JWT जारी किया है, आमतौर पर प्रमाणीकरण सर्वर का URL (जैसे https://auth.example.com); sub (सब्जेक्ट) उस प्रमुख की पहचान करता है जो JWT का विषय है, आमतौर पर उपयोगकर्ता आईडी; aud (ऑडिएंस) उन प्राप्तकर्ताओं की पहचान करता है जिनके लिए JWT बनाया गया है, आमतौर पर आपका एप्लिकेशन पहचानकर्ता।exp (एक्सपायरिशन समय) वह समय-चिह्न है जिसके बाद JWT को प्रसंस्करण के लिए स्वीकार नहीं किया जा सकता, जिसे यूनिक्स एपोक सेकंड में व्यक्त किया जाता है; nbf (नॉट ब्रीफ़र) वह समय-चिह्न है जिससे पहले JWT को स्वीकार नहीं किया जा सकता; iat (इश्यूड एट) JWT को जारी किए गए समय को दर्शाता है और टोकन की आयु निर्धारित करने में उपयोग किया जाता है; jti (JWT आईडी) JWT के लिए एक अद्वितीय पहचानकर्ता प्रदान करता है, जिसका उपयोग टोकन रीप्ले हमलों को रोकने के लिए किया जाता है।म्यूद्रा समाप्ति दिनांक सबसे महत्वपूर्ण शर्त है: समाप्त हो चुके टोकनों को अस्वीकार करने के लिए हमेशा अपने टोकन प्रमाणीकरण मिडलवेयर में म्यूद्रा समाप्ति दिनांक की जाँच करें।