यह क्या करता है
Google Authenticator, Microsoft Authenticator और 1Password जैसे टू-फ़ैक्टर ऐप छह अंकों के कोड दिखाते हैं जो हर 30 सेकंड में बदलते हैं। हर कोड एक साझा सीक्रेट से बना वन-टाइम पासवर्ड है: TOTP (RFC 6238) समय का और HOTP (RFC 4226) काउंटर का इस्तेमाल करता है। यह टूल सीक्रेट से वही कोड बनाता है, ताकि आप 2FA सेटअप टेस्ट कर सकें, सर्वर की इम्प्लीमेंटेशन डीबग कर सकें या जाँच सकें कि कोई कोड क्या होना चाहिए।
यह मौजूदा कोड लाइव काउंटडाउन के साथ दिखाता है, साथ ही पिछला और अगला कोड भी, जिन्हें सर्वर घड़ी के छोटे अंतर को ढकने के लिए अक्सर स्वीकार करते हैं।
इस्तेमाल कैसे करें
- Base32 सीक्रेट पेस्ट करें (अक्षर A–Z और अंक 2–7; स्पेस और केस से फ़र्क नहीं पड़ता), या QR कोड से पूरा
otpauth://URI पेस्ट करें। आज़माने के लिए उदाहरण पर क्लिक करें। - TOTP या HOTP चुनें, और एल्गोरिदम, अंक व समय अंतराल खाते के अनुसार सेट करें। otpauth URI की सेटिंग को प्राथमिकता मिलती है।
- HOTP के लिए काउंटर डालें और काउंटर +1 से एक-एक कोड देखें।
- मौजूदा कोड कॉपी करें। काउंटडाउन बताता है कि वह कितनी देर मान्य रहेगा।
उदाहरण
डेमो सीक्रेट JBSWY3DPEHPK3PXP बाइट “Hello!” के बाद 0xDEADBEEF का Base32 रूप है। नीचे दिया URI, जैसा QR कोड में एन्कोड होता है, ऐसे खाते का वर्णन करता है जो इसे डिफ़ॉल्ट सेटिंग के साथ इस्तेमाल करता है:
otpauth://totp/Example:alice@example.com?secret=JBSWY3DPEHPK3PXP&issuer=Example&algorithm=SHA1&digits=6&period=30
Unix समय 1700000000 पर यह सीक्रेट कोड 324 550 देता है, और विंडो में 10 सेकंड बचे हैं।
कोड कैसे बनता है
सीक्रेट को Base32 से बाइट में डिकोड किया जाता है। TOTP में काउंटर सेकंड में Unix समय को समय अंतराल से भाग देकर नीचे की ओर पूर्णांकित किया गया मान है। काउंटर को 8 बाइट में लिखकर सीक्रेट के साथ HMAC से साइन किया जाता है। डायनेमिक ट्रंकेशन HMAC आउटपुट के आख़िरी निबल के आधार पर 4 बाइट चुनता है, और संख्या को माँगे गए अंकों तक घटाया जाता है, शुरुआती शून्य बनाए रखते हुए।
अक्सर पूछे जाने वाले सवाल
› मेरा कोड ऑथेंटिकेटर ऐप के कोड से मेल क्यों नहीं खाता?
TOTP कोड घड़ी पर निर्भर होते हैं, इसलिए पहले जाँचें कि डिवाइस का समय अपने आप सेट होता है। फिर जाँचें कि एल्गोरिदम, अंकों की संख्या और समय अंतराल खाते से मेल खाते हैं। ज़्यादातर सेवाएँ SHA-1, 6 अंक और 30 सेकंड इस्तेमाल करती हैं, और ऑथेंटिकेटर ऐप दूसरी सेटिंग तभी मानते हैं जब QR कोड में लिखी हों।
› TOTP और HOTP में क्या अंतर है?
TOTP (RFC 6238) मौजूदा समय को समय अंतराल से भाग देकर काउंटर बनाता है, इसलिए कोड हर 30 सेकंड में बदलता है। HOTP (RFC 4226) ऐसा काउंटर इस्तेमाल करता है जो हर कोड इस्तेमाल होने पर एक बढ़ता है। दोनों सीक्रेट और काउंटर को HMAC से गुज़ारकर आख़िरी 6 से 8 अंक रखते हैं।
› क्या मेरा सीक्रेट कहीं सेव या भेजा जाता है?
नहीं। कोड आपके ब्राउज़र में Web Crypto API से बनते हैं। सीक्रेट सेव नहीं होता, एड्रेस बार में नहीं लिखा जाता और शेयर लिंक में शामिल नहीं होता; शेयर किए गए लिंक में सिर्फ़ सेटिंग होती हैं। फिर भी 2FA सीक्रेट दूसरे फ़ैक्टर की पूरी पहुँच देता है, इसलिए सिर्फ़ अपने सीक्रेट ही पेस्ट करें।
› क्या मैं अपने ऐप में टू-फ़ैक्टर ऑथेंटिकेशन जोड़ते समय इसका इस्तेमाल कर सकता हूँ?
हाँ। 160-बिट Base32 सीक्रेट बनाने के लिए रैंडम सीक्रेट पर क्लिक करें, उसे otpauth:// URI या QR कोड में अपने उपयोगकर्ताओं को दें, और अपने सर्वर के कोड की तुलना यहाँ दिखे कोड से करें। सर्वर आम तौर पर घड़ी के अंतर को सहने के लिए पिछला और अगला कोड भी स्वीकार करते हैं।