Tarayıcınız güncel değil

Bu siteyi görüntülemek için tarayıcınızın veya cihazınızın işletim sisteminin güncellenmesi gerekiyor.

Your browser is out of date. Please update iOS or your browser to view this site.

मुख्य सामग्री पर जाएं
Gizke.com
ब्लॉग

JWT डिकोडर

आपके डिवाइस पर चलता है। कुछ भी नहीं भेजा जाता।

JSON Web Token को पूरी तरह अपने ब्राउज़र में डिकोड और जांचें - हेडर, पेलोड, समाप्ति समय, और एक वैकल्पिक हस्ताक्षर जांच, कहीं भी अपलोड नहीं किया जाता।

JSON Web Token (JWT) दो पक्षों के बीच क्लेम्स दर्शाने का एक कॉम्पैक्ट, URL-सुरक्षित तरीका है - इसका उपयोग हर जगह होता है, "Authorization: Bearer ..." हेडर से लेकर सेशन कुकीज़ और सिंगल साइन-ऑन (SSO) तक। एक JWT बस डॉट्स से जुड़े तीन base64url-एन्कोडेड भाग (हेडर, पेलोड, हस्ताक्षर) होते हैं, इसलिए कोई भी बिना हस्ताक्षर करने वाली की के हेडर और पेलोड को डिकोड और पढ़ सकता है - केवल हस्ताक्षर सत्यापित करने के लिए सीक्रेट या प्राइवेट की चाहिए। यह टूल आपके ब्राउज़र में स्थानीय रूप से दोनों भागों को डिकोड करता है, मानक क्लेम्स को समझाता है, समाप्त या अभी तक मान्य न हुए टोकन को चिह्नित करता है, और "none" एल्गोरिद्म सुरक्षा खामी के बारे में चेतावनी देता है - आपका टोकन कभी कहीं नहीं भेजा जाता।

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

क्या मेरा JWT किसी सर्वर पर भेजा जाता है?
नहीं। डिकोडिंग पूरी तरह आपके ब्राउज़र में atob और TextDecoder वेब API का उपयोग करके होती है - टोकन, और हस्ताक्षर सत्यापित करने के लिए पेस्ट की गई कोई भी सीक्रेट या पब्लिक की, कभी आपके डिवाइस से बाहर नहीं जाती।
क्या यह टूल हस्ताक्षर सत्यापित कर सकता है?
हाँ, यथासंभव प्रयास वाले बोनस के रूप में। यदि आप HMAC सीक्रेट (HS256/384/512 के लिए) जानते हैं या PEM-एन्कोडेड पब्लिक की (RS256/384/512 या ES256/384/512 के लिए) पेस्ट करते हैं, तो यह टूल ब्राउज़र के Web Crypto API का उपयोग करके स्थानीय रूप से हस्ताक्षर की जांच करता है। की के बिना, केवल हेडर और पेलोड डिकोड और प्रदर्शित होते हैं - डिकोडिंग के लिए कभी हस्ताक्षर करने वाली की की आवश्यकता नहीं होती।
एल्गोरिद्म "none" क्यों दिखा रहा है?
"alg": "none" का मतलब है कि टोकन बिल्कुल भी हस्ताक्षरित नहीं है - कोई भी इसमें कोई भी क्लेम लिख सकता था। कुछ लाइब्रेरीज़ ने ऐतिहासिक रूप से ऐसे अहस्ताक्षरित टोकनों को मान्य मान लिया, जो प्रमाणीकरण को दरकिनार करने का एक जाना-माना तरीका बन गया। यह टूल हमेशा इसे स्पष्ट रूप से चिह्नित करता है ताकि आप इसे न चूकें।
exp, iat, और nbf का क्या मतलब है?
ये RFC 7519 के मानक टाइमस्टैम्प क्लेम्स हैं: iat बताता है कि टोकन कब जारी किया गया, nbf वह सबसे पहला क्षण है जब यह मान्य होता है, और exp वह क्षण है जब यह मान्य नहीं रहता। तीनों को NumericDate के रूप में संग्रहीत किया जाता है - यूनिक्स epoch से सेकंड - जिसे यह टूल एक पठनीय तारीख और "2 घंटे में समाप्त होगा" जैसे सापेक्ष समय में बदल देता है।
मैं बिना सीक्रेट के पेलोड क्यों पढ़ सकता हूँ?
क्योंकि JWT का हेडर और पेलोड केवल base64url-एन्कोडेड होते हैं, एन्क्रिप्टेड नहीं - एन्कोडिंग गोपनीयता नहीं है। टोकन रखने वाला कोई भी पहले से ही क्लेम्स पढ़ सकता है; हस्ताक्षर केवल यह साबित करता है कि उन्हें बिना की वाले किसी व्यक्ति ने बदला नहीं है। कभी भी ऐसी कोई चीज़ सीधे JWT पेलोड में न डालें जिसे आप नहीं चाहते कि कोई हमलावर पढ़ ले।
मेरे टोकन में 3 भाग हैं फिर भी डिकोड नहीं हो रहा - क्यों?
तीनों खंडों (हेडर, पेलोड, हस्ताक्षर) में से हर एक को मान्य base64url टेक्स्ट होना चाहिए, और हेडर तथा पेलोड को मान्य JSON में डिकोड होना चाहिए। यह टूल हेडर और पेलोड को अलग-अलग डिकोड करता है और चुपचाप विफल होने के बजाय बिल्कुल बताता है कि कौन-सा हिस्सा खराब है और क्यों (गलत base64, गलत UTF-8, या अमान्य JSON)।
डेवलपर्स के लिए: इस पेज को URL में `token` पैरामीटर के साथ खोलें - जैसे gizke.com/jwt?token=eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIn0.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c - और वह टोकन अपने आप पहले से भर जाएगा। अधिकांश विज़िटर्स को इसकी ज़रूरत नहीं होगी; यह किसी तैयार उदाहरण से सीधे लिंक करने के लिए है।

इस टूल को शेयर करें

ब्लॉगहमारे बारे मेंसंपर्कउपयोग की शर्तेंगोपनीयता नीति