JWT एक्सपायरेशन चेकर

ब्राउज़र में चलता है सुरक्षा

exp, nbf और iat क्लेम पढ़कर टोकन की वैधता अवधि आपके लोकल टाइमज़ोन और UTC — दोनों में बताता है, साथ में लाइव काउंटडाउन।

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

JWT क्या है?

JSON Web Token तीन Base64url सेगमेंट — header.payload.signature — की कॉम्पैक्ट स्ट्रिंग है जो किसी यूज़र या क्लाइंट के बारे में क्लेम (सब्जेक्ट, रोल, एक्सपायरी) और एक ऐसा सिग्नेचर ले जाती है जिसे रिसीवर सत्यापित कर सकता है। RFC 7519 में परिभाषित और साइनिंग नियम RFC 7515 व 7518 में, यह OAuth 2.0 एक्सेस टोकन और OpenID Connect ID टोकन का सामान्य फ़ॉर्मेट है। पेलोड केवल एन्कोडेड है, एन्क्रिप्टेड नहीं: टोकन रखने वाला कोई भी इसे पढ़ सकता है।

सुरक्षा नोट: डिकोड करना सत्यापित करना नहीं है। सर्वर को पिन की गई एल्गोरिद्म से सिग्नेचर जाँचना, alg=none अस्वीकार करना और exp, iss व aud सत्यापित करने चाहिए — और कहीं भी पेस्ट किया गया असली टोकन एक्सपायर होने तक एक सीक्रेट है।

गाइड पढ़ें: JWT क्या है? JSON Web Token समझें

JWT एक्सपायरेशन चेकर कैसे इस्तेमाल करें

  1. JWT पेस्ट करें।
  2. स्थिति और एक्सपायरी तक का काउंटडाउन पढ़ें (या वह कितनी देर पहले एक्सपायर हुआ)।
  3. अगर आपके सर्वर कुछ सेकंड की छूट देते हैं तो clock-skew सहनशीलता सेट करें।
  4. टाइमज़ोन से जुड़ी दिक्कतें डिबग करते समय UTC और लोकल समय की तुलना के लिए टाइमस्टैम्प तालिका इस्तेमाल करें।
nbf से पहले टोकन अभी वैध नहीं होता, nbf से exp तक वैध रहता है, और exp आते ही एक्सपायर हो जाता है; clock-skew सहनशीलता दोनों किनारों को चौड़ा करती है, पर सिर्फ़ एक अलग पंक्ति में। वैचारिक मॉडल

nbf और exp वाला टोकन

  • now < nbfअभी वैध नहींफ़ेल
  • nbf ≤ now < expवैधपास
  • now ≥ expएक्सपायरफ़ेल
  • nbf − skewskew
  • exp + skewskew
  1. 1iat जारी होने का समयलाइफ़टाइम और बीते हुए समय के लिए, स्थिति के लिए नहीं।
  2. 2nbf इससे पहले मान्य नहींयहाँ से वैध; nbf न हो तो शुरुआत की कोई सीमा नहीं।
  3. 3now जाँच का समय: आपके डिवाइस की घड़ी
  4. 4exp एक्सपायरीठीक exp पर टोकन एक्सपायर हो चुका होता है।

nbf वाला पर बिना exp का टोकन

  • now < nbfअभी वैध नहींफ़ेल
  • now ≥ nbfकोई एक्सपायरी नहीं: सुरक्षा जोखिमसावधानी

जगहें सिर्फ़ उदाहरण के लिए हैं। स्थिति और लाइव काउंटडाउन हमेशा सटीक किनारे इस्तेमाल करते हैं; सहनशीलता सिर्फ़ तब अलग With Ns skew पंक्ति जोड़ती है जब वह नतीजा बदल दे।

JWT एक्सपायरेशन चेकर की खूबियाँ

  • तुरंत नतीजा: वैध, एक्सपायर, अभी वैध नहीं, या कोई एक्सपायरी नहीं
  • लाइव काउंटडाउन जो आपके ब्राउज़र में हर सेकंड अपडेट होता है
  • exp, nbf, iat और auth_time — Unix टाइम, UTC, लोकल समय और सापेक्ष समय में
  • लाइफ़टाइम और उसका कितना प्रतिशत बीत चुका है
  • सर्वर की छूट से मेल खाने के लिए वैकल्पिक clock-skew सहनशीलता
  • मिलीसेकंड टाइमस्टैम्प और "जारी होने से पहले ही एक्सपायर" जैसी गलतियाँ पकड़ता है

JWT एक्सपायरेशन चेकर का उदाहरण

2100 में एक्सपायर होने वाला टोकन जाँचना

इनपुट:

eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1c2VyXzhmM2EyYyIsImlhdCI6MTcwMDAwMDAwMCwibmJmIjoxNzAwMDAwMDAwLCJleHAiOjQxMDI0NDQ4MDB9.…

आउटपुट:

Status: Valid — expires in <time remaining when you check> (2100-01-01 00:00:00 UTC)
Issued: 2023-11-14 22:13:20 UTC
Lifetime: 76y 2mo

JWT एक्सपायरेशन चेकर के बारे में अक्सर पूछे जाने वाले सवाल

"एक्सपायर" कैसे तय होता है?

exp क्लेम (Unix epoch से बीते सेकंड) की तुलना आपके कंप्यूटर की घड़ी से की जाती है। घड़ी के exp तक पहुँचते ही टोकन एक्सपायर माना जाता है (यानी exp अभी हो या बीत चुका हो), और जब तक nbf भविष्य में है तब तक "अभी वैध नहीं"। कुछ सेकंड की छूट देने वाले सर्वरों जैसा व्यवहार पाने के लिए clock-skew सहनशीलता जोड़ें।

यह टूल जिसे वैध बता रहा है, मेरा सर्वर उसे अस्वीकार क्यों कर रहा है?

सर्वर सिग्नेचर, issuer और audience भी जाँचते हैं और exp से कम अधिकतम आयु लागू कर सकते हैं। आपकी मशीन और सर्वर की घड़ियों का अंतर भी मायने रखता है — "जाँच का समय" समय की तुलना सर्वर की घड़ी से करें।

अगर टोकन में exp क्लेम ही न हो तो?

टूल "No expiry" बताता है। ऐसे टोकन अपने आप कभी एक्सपायर नहीं होते, जो एक सुरक्षा जोखिम है; जारीकर्ता को हमेशा exp सेट करना चाहिए।

क्या काउंटडाउन अपने आप अपडेट होता है?

हाँ। टोकन जाँचे जाने के बाद बचा हुआ समय आपके ब्राउज़र में हर सेकंड फिर से गिना जाता है।

तकनीकी नोट्स

JWT टाइमस्टैम्प NumericDate वैल्यू होते हैं — 1970-01-01T00:00:00Z से बीते सेकंड, जिनमें leap second नहीं गिने जाते। चेकर उनकी तुलना आपके डिवाइस की घड़ी से करता है, इसलिए लोकल घड़ी ग़लत हो तो नतीजे भी ग़लत आएँगे; "जाँच का समय" पंक्ति इस्तेमाल किया गया संदर्भ समय दिखाती है।

संदर्भ

  • RFC 7519: JSON Web Token (JWT)IETF · 2015JWT फ़ॉर्मेट — हेडर, पेलोड, सिग्नेचर — और रजिस्टर्ड क्लेम iss, sub, aud, exp, nbf, iat और jti को परिभाषित करता है।
  • RFC 7515: JSON Web Signature (JWS)IETF · 2015JWT कैसे साइन और सीरियलाइज़ होता है: प्रोटेक्टेड हेडर, साइनिंग इनपुट और कॉम्पैक्ट सीरियलाइज़ेशन।
  • RFC 7518: JSON Web Algorithms (JWA)IETF · 2015alg हेडर के पीछे की एल्गोरिद्म: HS256/384/512, RS256, ES256 और हर एक के लिए की-साइज़ की आवश्यकताएँ।