पासवर्ड जनरेटर

आपके ब्राउज़र के क्रिप्टोग्राफ़िक रैंडम जनरेटर से बना पासवर्ड, उस लंबाई और उन अक्षर-समूहों के साथ जो आप चुनें। यह आपकी अपनी मशीन पर बनता है और कहीं नहीं भेजा जाता — पासवर्ड के मामले में यह शिष्टाचार नहीं, पूरी बात है: जो पासवर्ड नेटवर्क पार करके आप तक पहुँचा, उसे कोई और भी देख सका होगा।

20

l, I, 1, O और 0 छोड़ देता है। अगर स्क्रीन से पढ़कर टाइप करना हो तो काम का, और इसमें कुछ बिट का नुक़सान होता है।

  • कहाँ चलता है कुछ भी अपलोड नहीं होता, क्योंकि कोई फ़ाइल है ही नहीं — गणना इसी पन्ने में होती है।
  • न कतार, न खाता यह उतनी ही तेज़ी से जवाब देता है जितनी आपकी मशीन देती है, और कभी नहीं पूछता कि आप कौन हैं।
  • जितनी बार चाहें न कुछ गिना जाता है, न कोई सीमा है — दोबारा जवाब देने में हमारा कुछ ख़र्च नहीं होता।

काम कैसे करता है

  1. लंबाई चुनिए। बीस अच्छी शुरुआत है; इससे ज़्यादा लेने में कोई ख़र्च नहीं।
  2. ज़रूरत के अक्षर-समूह चुनिए। कुछ सिस्टम आज भी चिह्न नहीं लेते, इसलिए उन्हें बंद किया जा सकता है।
  3. „बनाएँ" दबाइए। पासवर्ड तुरंत आ जाता है, साथ में उसकी मज़बूती भी।
  4. इसे सीधे अपने पासवर्ड मैनेजर में कॉपी कीजिए। याद रखने की कोशिश मत कीजिए — मैनेजर इसी के लिए है।

बेतरतीबी कहाँ से आती है

अक्षर `crypto.getRandomValues` से लिए जाते हैं, यानी ब्राउज़र का क्रिप्टोग्राफ़िक रैंडम जनरेटर, जो ऑपरेटिंग सिस्टम की एन्ट्रॉपी से चलता है। दूसरा विकल्प `Math.random` हर ब्राउज़र में है और यहाँ बाहर है: उसका तरीक़ा सार्वजनिक है, भीतरी अवस्था छोटी है, और थोड़े से नतीजों से वह अवस्था निकाल लेना हल हो चुकी समस्या है, जिसका कोड छपा हुआ है। उस पर बना जनरेटर ऐसे पासवर्ड देता है जिनका असली दायरा उसी अवस्था जितना है, चाहे पासवर्ड कितना भी लंबा दिखे।

देखकर दोनों में फ़र्क़ नहीं किया जा सकता। इसीलिए यह बताना ज़रूरी है कि कौन-सा इस्तेमाल हो रहा है, और इसीलिए इस परियोजना में एक जाँच है जो उस फ़ाइल में `Math.random` दिखते ही विफल हो जाती है।

वह झुकाव जो ज़्यादातर जनरेटरों में है

बेतरतीब बाइट से बेतरतीब अक्षर बनाना आम तौर पर `byte % संख्या` लिखा जाता है, और यह तब-तब बारीकी से ग़लत है जब 256 अक्षर-संख्या से पूरा-पूरा न बँटे। छब्बीस अक्षरों पर, 0 से 255 तक की बाइटें `a` से `v` तक को दस-दस बार और `w` से `z` तक को सिर्फ़ नौ बार ढकती हैं — पहले बाईस अक्षर लगभग ग्यारह प्रतिशत ज़्यादा आते हैं।

दोष छोटा है और असली है, और इस तरह के जनरेटरों में यही सबसे आम है। इलाज यह है कि उस छोटी पूँछ के मान फेंककर दोबारा खींचा जाए — एक लूप, और औसतन हर अक्षर पर दो से कम खिंचाव। यहाँ यही होता है।

एन्ट्रॉपी का अंक क्या बताता है

एन्ट्रॉपी बिट में बताई जाती है, और पासवर्ड की मज़बूती कहने का यही ईमानदार तरीक़ा है: हर बिट ज़रूरी कोशिशों की संख्या दोगुनी कर देता है। चारों समूहों से बना बीस अक्षर का पासवर्ड क़रीब 130 बिट का होता है, यानी लगभग 2^130 संभावनाएँ — एक ऐसा अंक जिसका कोई भौतिक अर्थ नहीं, और यही बात है।

इससे सौदे भी दिख जाते हैं। बीस अक्षरों में से चिह्न हटाने पर क़रीब 11 बिट जाते हैं। मिलते-जुलते अक्षर हटाने पर क़रीब 3। चार अक्षर जोड़ने पर क़रीब 26 मिलते हैं। इसीलिए लंबाई हर बार जटिलता से जीतती है: वे चार अक्षर कीबोर्ड के सारे चिह्नों से ज़्यादा क़ीमती हैं, और ऐसे पासवर्ड में आसानी से खपते हैं जिसे आप कभी हाथ से टाइप करने वाले नहीं।

चुना हुआ हर समूह ज़रूर आता है

अगर आप अंक चुनते हैं, तो पासवर्ड में अंक होगा। यह अपने आप नहीं होता — मिले-जुले वर्णों में से बीस अक्षर बेतरतीब खींचने पर सचमुच यह गुंजाइश रहती है कि किसी एक समूह से कुछ न आए, और नतीजा ऐसा पासवर्ड होता है जिसे नियम ठुकरा देते हैं और जिसे आपको दोबारा बनाना पड़ता है।

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

जनरेटर आधा काम ही है

बार-बार इस्तेमाल किया गया मज़बूत पासवर्ड कमज़ोर पासवर्ड है, क्योंकि जिस पल उसे रखने वाली कोई भी साइट सेंध खाती है, उसकी मज़बूती बेमानी हो जाती है। बनाने का मूल्य इसी में है कि हर खाते को अलग पासवर्ड मिले, और यह तभी चलता है जब कोई चीज़ उन्हें आपके लिए याद रखे।

तो पासवर्ड मैनेजर इस्तेमाल कीजिए, कोई भी — वह भी जो पहले से आपके ब्राउज़र में है। यहाँ का जनरेटर उस पल के लिए है जब आप फ़ॉर्म के सामने खड़े हैं; उसे क़ीमती वही बात बनाती है कि नतीजा कहीं ऐसी जगह जाए जहाँ वह आपको दोबारा मिल जाए।

पासवर्ड जनरेटर: आम सवाल

क्या पासवर्ड किसी सर्वर पर भेजा जाता है?

नहीं, और साइट के जितने औज़ार हैं उनमें यहाँ यह बात सबसे ज़्यादा मायने रखती है। यह आपके अपने ब्राउज़र में बनता है और कॉपी करने तक सिर्फ़ पन्ने में रहता है। कुछ अपलोड नहीं होता, कुछ दर्ज नहीं होता, खाता नहीं चाहिए। सर्वर पर चलने वाला पासवर्ड जनरेटर वह जनरेटर है जिसका नतीजा कोई और देख चुका है।

मेरा पासवर्ड कितना लंबा होना चाहिए?

सोलह ठीक-ठाक न्यूनतम है और बीस बेहतर। क़रीब तीस के बाद किसी भी व्यावहारिक हमलावर के मुक़ाबले कुछ बचता नहीं, तो लंबाई की सीमा बस यह है कि सिस्टम कितना लेता है। चूँकि आपको टाइप नहीं, चिपकाना चाहिए, लंबाई आपको कुछ नहीं पड़ती।

क्या मिलते-जुलते अक्षर बंद कर दूँ?

सिर्फ़ तब, जब आपको पासवर्ड स्क्रीन से पढ़कर कहीं और टाइप करना हो — टीवी पर, छपे काग़ज़ से, या ऐसे यंत्र पर जिसमें क्लिपबोर्ड नहीं। इससे अक्षरों का दायरा घटता है और कुछ बिट जाते हैं, जो चालू करते ही एन्ट्रॉपी का अंक आपको दिखा देता है।

क्या वही पासवर्ड दोबारा बन सकता है?

किसी काम के अर्थ में नहीं। तयशुदा सेटिंग पर क़रीब 2^130 संभावनाएँ हैं, तो दोहराव तब भी नहीं होगा जब हर जीवित व्यक्ति ब्रह्मांड की पूरी उम्र तक हर सेकंड एक पासवर्ड बनाता रहे।

क्या यह मुफ़्त है?

हाँ, बिना खाते के और बिना इस गिनती के कि आप कितने बनाते हैं। यह आपकी मशीन पर चलता है, तो आपको दोबारा बटन दबाने देने में हमारा कुछ ख़र्च नहीं होता।