Oh MyUtils

JWT डिकोडर - JSON वेब टोकन डिकोड ऑनलाइन

JWT हेडर, पेलोड और सिग्नेचर तुरंत डिकोड और इंस्पेक्ट करें। टोकन एक्सपायरी और क्लेम वेरिफाई करें — सर्वर को डेटा नहीं भेजा जाता।

100% क्लाइंट-साइड - आपका टोकन इस ब्राउज़र से बाहर नहीं जाता
JWT टोकन

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

JSON वेब टोकन (JWT) क्या है?

JWT (JSON वेब टोकन) एक खुला मानक (RFC 7519) है जो पार्टियों के बीच JSON ऑब्जेक्ट के रूप में जानकारी को सुरक्षित रूप से प्रसारित करने के लिए है। इसमें डॉट्स द्वारा अलग किए गए तीन भाग होते हैं: हेडर (एल्गोरिथम और टोकन प्रकार), पेलोड (दावे/डेटा), और हस्ताक्षर (सत्यापन के लिए)। JWT आमतौर पर वेब एप्लिकेशन में प्रमाणीकरण और प्राधिकरण के लिए उपयोग किए जाते हैं।

मैं इस JWT डिकोडर का उपयोग कैसे करूं?

बस अपना JWT टोकन इनपुट फील्ड में पेस्ट करें। टूल स्वचालित रूप से इसे डिकोड करता है और हेडर, पेलोड और हस्ताक्षर को अलग-अलग टैब में प्रदर्शित करता है। आप डिकोडेड JSON सामग्री देखने के लिए प्रत्येक टैब पर क्लिक कर सकते हैं। हस्ताक्षर सत्यापित करने के लिए, सत्यापन अनुभाग में अपनी गुप्त कुंजी (HMAC के लिए) या सार्वजनिक कुंजी (RSA के लिए) दर्ज करें।

क्या यहां मेरा JWT डिकोड करना सुरक्षित है?

हां, यह टूल 100% क्लाइंट-साइड है। आपका JWT टोकन आपके ब्राउज़र से कभी बाहर नहीं जाता - सभी डिकोडिंग और सत्यापन JavaScript का उपयोग करके स्थानीय रूप से होता है। किसी भी सर्वर को कोई डेटा नहीं भेजा जाता। हालांकि, आपको संवेदनशील जानकारी वाले JWT को सार्वजनिक रूप से साझा नहीं करना चाहिए, क्योंकि पेलोड केवल Base64-एनकोडेड है, एन्क्रिप्टेड नहीं।

JWT दावे क्या हैं?

दावे एक इकाई (आमतौर पर उपयोगकर्ता) और अतिरिक्त डेटा के बारे में कथन हैं। मानक दावों में शामिल हैं: exp (समाप्ति समय), iat (जारी करने का समय), nbf (इससे पहले नहीं), sub (विषय), iss (जारीकर्ता), aud (दर्शक), और jti (JWT ID)। उपयोगकर्ता भूमिकाओं या अनुमतियों जैसे एप्लिकेशन-विशिष्ट डेटा के लिए कस्टम दावे भी जोड़े जा सकते हैं।

हस्ताक्षर सत्यापन कैसे काम करता है?

JWT हस्ताक्षर सुनिश्चित करते हैं कि टोकन के साथ छेड़छाड़ नहीं की गई है। HMAC एल्गोरिथम (HS256, HS384, HS512) के लिए, पार्टियों के बीच साझा की गई गुप्त कुंजी का उपयोग करके हस्ताक्षर बनाया जाता है। RSA एल्गोरिथम (RS256, RS384, RS512) के लिए, एक असममित कुंजी जोड़ी का उपयोग किया जाता है - हस्ताक्षर के लिए निजी कुंजी, सत्यापन के लिए सार्वजनिक कुंजी। यह टूल सुरक्षित सत्यापन के लिए Web Crypto API का उपयोग करता है।

कोड उदाहरण

// Decode JWT (without verification)
function decodeJWT(token) {
  const [headerB64, payloadB64] = token.split('.');
  
  const decodeBase64Url = (str) => {
    const base64 = str.replace(/-/g, '+').replace(/_/g, '/');
    return JSON.parse(atob(base64));
  };
  
  return {
    header: decodeBase64Url(headerB64),
    payload: decodeBase64Url(payloadB64)
  };
}

const token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
const { header, payload } = decodeJWT(token);
console.log(payload);

संबंधित उपकरण