टूल
गाइड

TOTP / HOTP 2FA जनरेटर

क्रिप्टो

Base32 सीक्रेट या otpauth:// URI से समय-आधारित (TOTP) या काउंटर-आधारित (HOTP) वन-टाइम पासवर्ड बनाएँ। लाइव काउंटडाउन और स्कैन करने योग्य QR कोड — सब कुछ आपके ब्राउज़र में स्थानीय रूप से।

100% क्लाइंट-साइड कोई बैकएंड नहीं

दूरस्थ URL लाए नहीं जाते; अपना JSON सीधे पेस्ट करें।

मोड
कोड जनरेट करने के लिए Base32 सीक्रेट (या otpauth:// URI) दर्ज करें।
TOTP
------
--
otpauth URI

Google Authenticator, Authy, 1Password या किसी भी TOTP ऐप से स्कैन करें।

कोड स्थानीय रूप से जनरेट होते हैं — आपका सीक्रेट कभी ब्राउज़र से बाहर नहीं जाता।
इस पृष्ठ पर

TOTP क्या है?#

एक समय-आधारित वन-टाइम पासवर्ड (TOTP) वह घूमता हुआ 6-अंकीय कोड है जो आपका ऑथेंटिकेटर ऐप हर खाते के बगल में दिखाता है। इसके नीचे, यह एक HMAC है: साझा गुप्त और मौजूदा समय विंडो को एक साथ हैश किया जाता है, और परिणाम को एक छोटे न्यूमेरिक कोड में काटा जाता है। चूंकि कोड घड़ी पर निर्भर करता है, यह हर 30 सेकंड में अपने आप घूमता है — जो “आपके पास जो है” (गुप्त) को एक दूसरे कारक के रूप में उपयोग करने योग्य बनाता है बिना आपके फ़ोन और सेवा के बीच किसी नेटवर्क राउंड-ट्रिप के।

यह पेज एक पूरी तरह काम करने वाला TOTP और HOTP जनरेटर है। TOTP कोड को मौजूदा समय से निकालता है और अवधि बीतने पर खुद को रिफ़्रेश करता है; HOTP इसे एक काउंटर से निकालता है जो हर उपयोग पर बढ़ता है। आप सीधे एक Base32 गुप्त टाइप कर सकते हैं, या एक otpauth:// URI चिपका सकते हैं (वह स्ट्रिंग जो 2FA सक्षम करते समय सेवाएँ आपको दिखाए गए QR कोड में एन्कोड होती है) और हर फ़ील्ड स्वतः भर सकते हैं। पेज कैनोनिकल otpauth:// URI भी निकालता है और एक स्कैन करने योग्य QR कोड रेंडर करता है, इसलिए आप यहाँ से सीधे एक नया खाता फ़ोन ऐप में प्रोविज़न कर सकते हैं।

सब कुछ स्थानीय रूप से चलता है: गुप्त कभी पेज से बाहर नहीं जाता, और किसी भी प्रमाणीकरण सेवा के लिए कोई ऑनलाइन कॉल नहीं।

इसका उपयोग कैसे करें#

  1. कोई मोड चुनें: TOTP (समय-आधारित, खुद को रिफ़्रेश करता है) या HOTP (काउंटर-आधारित, हाथ से बढ़ता है)।
  2. गुप्त प्रदान करें। या तो गुप्त फ़ील्ड में Base32 गुप्त चिपकाएँ, या हर पैरामीटर एक बार में स्वतः भरने के लिए URI फ़ील्ड में कोई otpauth:// URI चिपकाएँ।
  3. जारीकर्ता और खाता लेबल सेट करें (ये केवल प्रविष्टि को ऑथेंटिकेटर ऐप में नाम देने को प्रभावित करते हैं, कोड खुद को नहीं)।
  4. एल्गोरिथ्म (SHA-1 / SHA-256 / SHA-512 — SHA-1 सार्वभौमिक डिफ़ॉल्ट है), अंक (6 / 7 / 8 — 6 मानक है), और — TOTP के लिए — सेकंड में अवधि (डिफ़ॉल्ट 30) चुनें। HOTP के लिए, काउंटर सेट करें और हर उपयोग के बाद उसे आगे बढ़ाने के लिए +1 पर क्लिक करें।
  5. उत्पन्न पर क्लिक करें। कोड बड़ा दिखता है जिसमें एक काउंटडाउन रिंग मौजूदा अवधि में बचे सेकंड्स दिखाती है; उसके नीचे, otpauth:// URI और एक स्कैन करने योग्य QR कोड।

प्रमुख विशेषताएँ#

  • TOTP और HOTP एक जगह। गुप्त दोबारा दर्ज किए बिना समय-आधारित और काउंटर-आधारित वेरिएंट के बीच स्विच करें।
  • सहिष्णु Base32 हैंडलिंग। स्पेसेस, हाइफ़न, लोअरकेस, और फुटकर कैरेक्टर्स स्वतः साफ़ किए जाते हैं, इसलिए अजीब फ़ॉर्मेट्स से कॉपी किए गए गुप्त भी काम करते हैं।
  • URI इम्पोर्ट और एक्सपोर्ट। हर फ़ील्ड भरने के लिए otpauth:// URI चिपकाएँ, या कहीं और एक नया खाता प्रोविज़न करने के लिए जनरेट किया गया URI कॉपी करें।
  • लाइव QR कोड। पेज के भीतर URI से रेंडर किया गया, किसी भी ऑथेंटिकेटर ऐप में स्कैन करने के लिए तैयार।
  • काउंटडाउन रिंग। अगले रोलओवर तक का एक दृश्य काउंटडाउन, ताकि आप जान सकें कि आप जो कोड टाइपने वाले हैं उसके पास पर्याप्त समय बचा है या नहीं।
  • ज़ीरो अपलोड। जनरेशन, पार्सिंग, और QR रेंडरिंग सब स्थानीय हैं; गुप्त कभी प्रेषित नहीं होता।

कार्य उदाहरण#

RFC 6238 संदर्भ सीड ASCII स्ट्रिंग 12345678901234567890 है, जो Base32 में GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQ है। वह गुप्त टाइप करें, अंक 8 और अवधि 30 सेट करें, और कोड प्रकाशित टेस्ट वेक्टर्स से बिलकुल मेल खाते हैं:

  • SHA-1 समय = युग में 59 सेकंड पर → 94287082
  • SHA-256 उसी क्षण पर → 46119246
  • SHA-512 उसी क्षण पर → 90693936

समय = 1111111109 (भविष्य में बहुत आगे की एक तिथि) पर, SHA-1 07081804 देता है। ये वही ज्ञात-उत्तर वैल्यूज़ हैं जिनके विरुद्ध इस औज़ार का अपना टेस्ट सूट जाँच करता है, इसलिए वे एक जनरेटर के सही होने की पुष्टि का भरोसेमंद तरीका हैं। रोज़मर्रा के 2FA के लिए, सेवाएँ 6 अंक, SHA-1, और 30-सेकंड अवधि उपयोग करती हैं — अंक वापस 6 पर स्विच करें और वही गुप्त वह घूमता हुआ कोड देता है जो एक ऑथेंटिकेटर ऐप दिखाएगा।

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

मेरा कोड मेरे फ़ोन ऐप से मेल नहीं खाता। क्या गलत है?#

लगभग हमेशा गुप्त या घड़ी। पहले पुष्टि करें कि Base32 गुप्त समान है — सेवा के सेटअप पेज से दोबारा कॉपी करें, क्योंकि एक गलत कैरेक्टर सब बदल देता है। फिर पैरामीटर जाँचें: अधिकांश सेवाएँ SHA-1, 6 अंक, 30-सेकंड अवधि उपयोग करती हैं; यदि सेवा SHA-256 या 8 अंक उपयोग करती है और आपके पास SHA-1 / 6 चुना हुआ है तो कोड भिन्न होंगे। अंत में, सुनिश्चित करें कि आपकी डिवाइस घड़ी सही है — TOTP थोड़े विचलन बर्दाश्त करता है, पर लगभग 30 सेकंड से अधिक बंद होने पर यह टूट जाएगा।

TOTP और HOTP में क्या अंतर है?#

TOTP मौजूदा समय को चलता हुआ कारक मानता है, इसलिए यह हर अवधि में स्वतः बढ़ता है। HOTP एक सरल काउंटर उपयोग करता है जो हर बार कोड खपत होने पर बढ़ता है, इसलिए दोनों पक्षों को इस बारे में समकालिक रहना होता है कि कितने कोड उपयोग किए गए हैं। TOTP वही है जो आज लगभग हर उपभोक्ता 2FA प्रवाह उपयोग करता है, क्योंकि इसे घड़ी के अलावा किसी समकालन की ज़रूरत नहीं।

क्या अपना गुप्त किसी वेब पेज में डालना सुरक्षित है?#

गुप्त कभी इस पेज से बाहर नहीं जाता — जनरेशन, पार्सिंग, और QR रेंडरिंग सब आपके ब्राउज़र में स्थानीय रूप से चलती है, बिना किसी नेटवर्क कॉल के। फिर भी, किसी प्रोडक्शन 2FA गुप्त के लिए जिसे आप नियंत्रित करते हैं, सबसे सुरक्षित अभ्यास है उसे किसी ऐसे वातावरण में उत्पन्न करना और संग्रहित करना जिस पर आप पूरी तरह भरोसा करते हैं, किसी भी वेब पेज पर नहीं, और सेवा द्वारा दिए गए रिकवरी कोड सुरक्षित रखना।

मेरा otpauth:// URI चिपकाने पर सब कुछ क्यों भर देता है?#

वह URI मानक फ़ॉर्मेट है जिसमें ऑथेंटिकेटर ऐप्स आदान-प्रदान करते हैं: यह टाइप, जारीकर्ता, खाता, गुप्त, एल्गोरिथ्म, अंक, और अवधि (या काउंटर) को एक स्ट्रिंग में एन्कोड करता है। पार्सर उन फ़ील्ड्स को पढ़ता है और फ़ॉर्म भरता है, जो ठीक वही होता है जब आप अपने फ़ोन से किसी QR कोड को स्कैन करते हैं — QR केवल वही URI एक छवि के रूप में रेंडर किया हुआ है।