कोई भी शब्द सोचिए। अभी, इसी वक्त, जो पहला दिमाग में आए।
जो भी आया हो, वह संयोग से नहीं आया। वह आपका शब्द था: इस हफ्ते पढ़ी हुई कोई चीज़, सामने रखी हुई कोई वस्तु, आपके नाम का पहला अक्षर। इंसान से जब संयोग माँगा जाता है, तो वह आत्मकथा बनाकर देता है। और आत्मकथा का अंदाज़ा लगाया जा सकता है।
पासवर्ड की पूरी समस्या बस इतनी ही है। बात यह नहीं कि लोग आलसी हैं — वह भी हैं — बात यह है कि हम यादृच्छिकता पैदा करने में अक्षम हैं। हमें कुछ अक्षर पसंद होते हैं, हम दोहराव से बचते हैं क्योंकि “वह यादृच्छिक नहीं लगता”, हम बिना सोचे स्वर और व्यंजन बदल-बदलकर लगाते हैं, और अगर कोई संख्या माँगे तो वही उठा लेते हैं जो पास में है: तारीखें, उम्र, मतलब रखने वाले अंक। हमलावर को इसका फायदा उठाने के लिए यह जानने की ज़रूरत नहीं कि आप कौन हैं। उसे बस इतना पता होना काफी है कि आप इंसान हैं।
एक इंजीनियर, पाँच पाँसे और एक सूची
1995 में Arnold G. Reinhold ने अपनी वेबसाइट पर एक तरीका छापा जिसका नाम उन्होंने Diceware रखा। विचार इतना सीधा है कि इसे समझाना पड़े, यह अपने आप में थोड़ा खिझाने वाला है: अगर दिक्कत यह है कि इंसान संयोग से चुनना नहीं जानता, तो चुनाव इंसान के हाथ से ले लीजिए।
पूरी विधि तीन पंक्तियों में समा जाती है:
- आप पाँच पाँसे फेंकते हैं और नतीजे क्रम से लिख लेते हैं। मान लीजिए आया
4-2-6-1-3। - आप एक सूची में
42613ढूँढ़ते हैं। - वही आपका शब्द है। अगले के लिए फिर से फेंकिए।
सूची में 7,776 प्रविष्टियाँ हैं, और यह संख्या मनमानी नहीं है: यह 6⁵ है, यानी
पाँच पाँसों के सारे संभव नतीजे। हर संयोजन — 11111 से 66666 तक — एक अलग
प्रविष्टि पर जाता है, न कोई छूटता है न कोई दोहराया जाता है। मूल सूची में अंग्रेज़ी
के छोटे शब्दों के साथ कुछ अक्षर-समूह, अंक और अकेले चिह्न भी मिले हुए हैं — ठीक
इसीलिए कि 7,776 अच्छे शब्द ढूँढ़ना जितना आसान लगता है, उतना है नहीं।
अहम चीज़ सूची नहीं है। अहम चीज़ पाँसा है।
12.9 bits सचमुच 12.9 bits क्यों हैं
यही वह हिस्सा है जो लगभग कोई नहीं समझता, और यही अकेला हिस्सा है जो मायने रखता है।
Diceware के एक शब्द की एन्ट्रॉपी log₂(7,776) = 12.9 bits है। यह अंकगणित है, सुरक्षा नहीं: 7,776 नतीजे हैं और सबकी प्रायिकता बिल्कुल बराबर है।
अब इसकी तुलना उससे कीजिए जो तब होता है जब चुनाव आप करते हैं। अगर मैं आपसे 7,776 शब्दों के शब्दकोश में से एक शब्द माँगूँ, तो हिसाब दिखने में वही लगता है — विकल्प यहाँ भी 7,776 हैं — पर है नहीं, क्योंकि आप उन्हें बराबर प्रायिकता से नहीं चुनते। आप आम शब्द चुनेंगे, अपने पसंदीदा शब्द चुनेंगे, वे शब्द चुनेंगे जो आज ही आपने कहीं देखे हैं। उस शब्दकोश में कागज़ पर 12.9 bits हैं और आपके दिमाग में उससे कहीं कम, और हमलावर अपनी सूची को आवृत्ति के हिसाब से जमाकर पहले वही आज़माता है जो लोग चुनते हैं। एन्ट्रॉपी यह नहीं है कि विकल्प कितने हैं: यह है कि आपकी पसंद के बारे में हमलावर जो जानता है, उसे घटाने के बाद विकल्प कितने बचते हैं।
पाँसों की कोई पसंद नहीं होती। याददाश्त भी नहीं होती: पाँसे को पता ही नहीं कि पिछली
बार जंगल आया था, इसलिए वह दोहराव से नहीं बचता, विविधता नहीं खोजता, और उसे शर्म
भी नहीं आती अगर एक ही अक्षर से शुरू होने वाले दो शब्द निकल आएँ। इसीलिए Diceware के
12.9 bits सचमुच के 12.9 bits हैं, किसी विज्ञापन-पर्चे का आशावादी आँकड़ा नहीं।
और इसीलिए हिसाब ऊपर की ओर जुड़ता चला जाता है। हर शब्द जोड़ता है:
- पाँच शब्द: करीब 64 bits।
- छह शब्द: करीब 77 bits।
- सात शब्द: करीब 90 bits।
यह साफ-सुथरा जोड़ है, कोई जादुई गुणा नहीं, क्योंकि हर बार पाँसा फेंकना बाकी सबसे स्वतंत्र है। Reinhold की सलाह है कि पाँच शब्दों से नीचे न जाएँ, और जो चीज़ें सचमुच मायने रखती हैं उनके लिए छह या उससे ज़्यादा रखें। यह असर आप जनरेटर में खुद देख सकते हैं: एक शब्द जोड़ने पर हमेशा उतना ही जुड़ता है, और यही “हमेशा” पूरा आविष्कार है।
राज़ सूची में नहीं है
आपत्ति अपने आप आ जाती है: अगर सूची सार्वजनिक है, तो इसे तोड़ना आसान नहीं हो जाता?
नहीं, और इसे ठहरकर कहना ज़रूरी है। 12.9 bits पहले से ही यह मानकर चलते हैं कि सूची हमलावर के पास है। वे यह भी मानकर चलते हैं कि उसे पता है आप Diceware इस्तेमाल करते हैं, कि उसे पता है आपके वाक्यांश में कितने शब्द हैं, और कि उसे पता है आप उन्हें किस क्रम में लिखते हैं। यह सब पहले ही घटाया जा चुका है। उसे बस यह नहीं पता कि आपके पाँसों पर क्या आया — और जब आप “77 bits” कहते हैं, तो आप उसी की गिनती कर रहे होते हैं।
यह ठीक उसका उल्टा है जो हम P@ssw0rd के साथ करते हैं, जहाँ सारी उम्मीद इस बात पर
टिकी है कि किसी के दिमाग में a की जगह @ रखने का ख्याल नहीं आएगा। आ जाता है।
शब्दकोश-हमले का कोई भी औज़ार सबसे पहले जो नियम लगाता है, यह उन्हीं में से एक है।
अगर मन ललचा रहा हो, तो इसे चेकर में आज़माकर देखिए कि यह कितनी देर
टिकता है।
EFF और वैकल्पिक सूचियाँ
2016 में Electronic Frontier Foundation ने पाँसों से बनने वाले वाक्यांशों के लिए अपनी शब्द-सूचियाँ छापीं। लंबी सूची में वही 7,776 प्रविष्टियाँ बनी रहती हैं — वही पाँच पाँसे, वही 12.9 bits — पर सामग्री बदल जाती है: अजीब अक्षर-समूह और चिह्न बाहर, रोज़मर्रा के शब्द अंदर, जो टाइप करने में और एक-दूसरे से अलग पहचानने में आसान हों। उन्होंने 1,296 शब्दों की छोटी सूचियाँ भी छापीं (6⁴, चार पाँसे, प्रति शब्द 10.3 bits): एक में छोटे और आसानी से याद रह जाने वाले शब्द, और दूसरी इस तरह बनाई गई कि हर शब्द अपने शुरुआती अक्षरों से ही बाकियों से अलग पहचाना जा सके और ऑटोकम्प्लीट हो सके। बदले में, हर बार पाँसा फेंकना कम कीमत का होता है और फेंकना ज़्यादा बार पड़ता है।
इस मामले की सबसे सुंदर बात यह है कि किसी की पसंद से अंकगणित नहीं बदलता। प्रविष्टियों की संख्या ही तय करती है। आप अपनी सूची हिंदी में बना सकते हैं, तमिल में, या क्लिंगन में: जब तक उसमें 7,776 अलग-अलग प्रविष्टियाँ हों और आप चुनाव पाँसों से करें, हर शब्द 12.9 bits का ही है। सूची बदलकर आप बस यह तय कर रहे हैं कि नतीजा आपको कितना भाता है, यह नहीं कि वह कितना सुरक्षित है।
इसे बिगाड़ने के तीन तरीके
Diceware तीन तरह से नाकाम होता है, और तीनों दरअसल एक ही गलती हैं: इंसान का दोबारा हाथ डाल देना।
- फेंककर फिर से फेंकना क्योंकि “यह वाला पसंद नहीं आया”। अगर आप नतीजे खारिज करते हैं, तो आप पाँसे इस्तेमाल नहीं कर रहे: आप अपनी पसंद इस्तेमाल कर रहे हैं और पाँसा बस सजावट का है। जो आया, वही आया।
- शब्दों का क्रम बदलना ताकि वे किसी वाक्य जैसे लगें। क्रम भी उसी फेंक का हिस्सा है।
- आखिर में एक
!और शुरू में एक बड़ा अक्षर लगाकर उसे “बेहतर” करना। ऐसे हमलावर के सामने इससे कुछ नहीं जुड़ता जो जानता है कि लोग आखिर में!और शुरू में बड़ा अक्षर लगाते हैं। अगर किसी बेवकूफ नीति की शर्त पूरी करनी है तो कर दीजिए, पर यह मत मानिए कि आपने सुरक्षा कमा ली: वह आपने एक बार और पाँसा फेंककर कमाई थी।
और एक चेतावनी जो Reinhold पहले ही देते थे: आम पाँसे भरपूर काम के हैं — कैसीनो वाले ज़्यादा सटीक होते हैं, पर उनकी ज़रूरत नहीं — फेंकना किसी चिकनी सतह पर चाहिए, और नतीजा जैसा आए वैसा ही लिख लेना चाहिए।
निचोड़
पाँसों से निकाले गए छह शब्दों का वाक्यांश P@ssw0rd से लिखने में लंबा है,
Tr0ub4dor&3 से याद रखने में आसान है, और दोनों के मुकाबले तोड़ने में कई गुना
ज़्यादा महँगा है। इसलिए नहीं कि वह ज़्यादा घुमावदार है — है नहीं, वे छह आम शब्द ही
हैं — बल्कि इसलिए कि आपके पासवर्ड में वही एक चीज़ है जो आपने तय नहीं की।
Diceware का पूरा चुटकुला यही है: सबसे अच्छा पासवर्ड वही है जिसमें आपकी राय शामिल ही नहीं होती।
स्रोत: Arnold G. Reinhold, “The Diceware Passphrase Home Page” और उनकी 7,776 शब्दों की सूची (1995) · Electronic Frontier Foundation, पाँसों से बनने वाले पासफ़्रेज़ के लिए शब्द-सूचियाँ (2016) · अंकगणित जाँचा जा सकता है: 6⁵ = 7,776 और log₂(7,776) ≈ 12.92 bits प्रति शब्द।