विषय सूची
- 1. परिचय
- 2. वर्तमान पासवर्ड जनरेशन एल्गोरिदम
- 3. प्रस्तावित औपचारिक सत्यापन ढाँचा
- 4. तकनीकी विवरण और गणितीय सूत्रीकरण
- 5. प्रायोगिक परिणाम और चार्ट विवरण
- 6. विश्लेषण ढाँचा: मूल अंतर्दृष्टि और तार्किक प्रवाह
- 7. शक्तियाँ, कमियाँ और क्रियान्वयन योग्य अंतर्दृष्टियाँ
- 8. अनुप्रयोग संभावनाएँ और भविष्य की दिशाएँ
- 9. संदर्भ
1. परिचय
पासवर्ड मैनेजर (PMs) ऑनलाइन सुरक्षा बढ़ाने के लिए महत्वपूर्ण उपकरण हैं, जो मजबूत, अद्वितीय पासवर्ड के उपयोग को स्मृति के संज्ञानात्मक बोझ के बिना सक्षम बनाते हैं। विशेषज्ञों की सिफारिशों के बावजूद, उपयोगकर्ता अपनाने में मूलभूत विश्वास की कमी एक बाधा बनी हुई है। यह पत्र यादृच्छिक पासवर्ड जनरेशन (RPG) सुविधा को इस विश्वास की कमी को प्रभावित करने वाला एक महत्वपूर्ण घटक पहचानता है। हमारा तर्क है कि एक औपचारिक रूप से सत्यापित RPG कार्यान्वयन केवल एक शैक्षणिक अभ्यास नहीं, बल्कि सुरक्षा सिद्धांत और उपयोगकर्ता विश्वास के बीच की खाई को पाटने के लिए एक व्यावहारिक आवश्यकता है। मूल प्रस्ताव यह है कि सिद्ध कार्यात्मक शुद्धता और क्रिप्टोग्राफिक सुरक्षा गुणों वाले एक संदर्भ कार्यान्वयन को बनाने के लिए EasyCrypt प्रमाण वातावरण का लाभ उठाया जाए, जो अनुमानी आश्वासनों से आगे बढ़कर हो।
2. वर्तमान पासवर्ड जनरेशन एल्गोरिदम
इस अध्ययन ने 15 पासवर्ड मैनेजरों का सर्वेक्षण किया, जिसमें तीन ओपन-सोर्स, व्यापक रूप से उपयोग किए जाने वाले उदाहरणों पर विस्तृत ध्यान केंद्रित किया गया: Google Chrome का अंतर्निहित मैनेजर, Bitwarden, और KeePass। यह चयन मुख्यधारा के एल्गोरिदम का एक प्रतिनिधि क्रॉस-सेक्शन प्रदान करता है।
2.1 पासवर्ड संरचना नीतियाँ
पासवर्ड संरचना नीतियाँ उत्पन्न पासवर्ड के लिए संरचनात्मक बाधाओं को परिभाषित करती हैं, जिनमें लंबाई और वर्ण वर्ग आवश्यकताएँ (जैसे, लोअरकेस, अपरकेस, संख्याएँ, विशेष वर्ण) शामिल हैं। इन नीतियों का उद्देश्य आसानी से अनुमानित संयोजनों को रोकने के लिए पासवर्ड स्थान को सीमित करना है। विश्लेषण किए गए PMs विभिन्न स्तरों की सूक्ष्मता प्रदान करते हैं:
- Chrome और Bitwarden: प्रति वर्ण सेट न्यूनतम घटनाओं को परिभाषित करने की अनुमति देते हैं।
- KeePass: कस्टम वर्ण सेट परिभाषित करने, विशिष्ट वर्णों को बाहर करने और डुप्लिकेट हटाने जैसे अधिक उन्नत विकल्प प्रदान करता है।
- सभी तीनों उपयोगकर्ता त्रुटि को कम करने के लिए दृष्टिगत रूप से समान वर्णों (जैसे, 'l', '1', 'I', 'O', '0') को बाहर करने के विकल्प प्रदान करते हैं।
"विशेष वर्णों" के विशिष्ट सेट विभिन्न मैनेजरों में भिन्न होते हैं, जो मानकीकरण की कमी को इंगित करते हैं जो अंतरसंचालनीयता और उपयोगकर्ता अपेक्षाओं को प्रभावित कर सकती है।
2.2 यादृच्छिक पासवर्ड जनरेशन
सामान्य एल्गोरिदमिक पैटर्न में न्यूनतम/अधिकतम घटना बाधाओं का सम्मान करते हुए निर्दिष्ट सेट से यादृच्छिक वर्ण उत्पन्न करना शामिल है। उदाहरण के लिए, Chrome का एल्गोरिदम चरणों में काम करता है: पहले प्रति सेट न्यूनतम आवश्यकताओं को पूरा करना, फिर शेष लंबाई को उन सेटों के संघ से भरना जो अभी तक अपने अधिकतम तक नहीं पहुंचे हैं, और अंत में अंतिम वर्ण अनुक्रम पर एक यादृच्छिक क्रमपरिवर्तन लागू करना। जबकि यह सीधा सा लगता है, इन एल्गोरिदम की शुद्धता—यह सुनिश्चित करना कि वे हमेशा उपयोगकर्ता-परिभाषित नीति को संतुष्ट करने वाला पासवर्ड उत्पन्न करते हैं—और उनकी क्रिप्टोग्राफिक सुरक्षा—यह सुनिश्चित करना कि आउटपुट वास्तव में यादृच्छिक और निष्पक्ष है—आमतौर पर मान ली जाती है, सिद्ध नहीं की जाती।
3. प्रस्तावित औपचारिक सत्यापन ढाँचा
यह पत्र एक संदर्भ RPG कार्यान्वयन को औपचारिक रूप से निर्दिष्ट और सत्यापित करने के लिए EasyCrypt का उपयोग प्रस्तावित करता है। EasyCrypt गेम-आधारित क्रिप्टोग्राफिक प्रमाणों के निर्माण और सत्यापन के लिए एक ढाँचा है। इस दृष्टिकोण में शामिल है:
- विनिर्देश: RPG की कार्यात्मक आवश्यकताओं को औपचारिक रूप से परिभाषित करना (इनपुट नीति -> आउटपुट पासवर्ड जो नीति को संतुष्ट करता है)।
- कार्यान्वयन: EasyCrypt की प्रोग्रामिंग भाषा में RPG एल्गोरिदम लिखना।
- कार्यात्मक शुद्धता प्रमाण: गणितीय रूप से यह सिद्ध करना कि किसी भी वैध इनपुट नीति के लिए, कार्यान्वयन हमेशा समाप्त होता है और सभी बाधाओं को पूरा करने वाला एक पासवर्ड आउटपुट करता है।
- सुरक्षा प्रमाण: RPG को एक क्रिप्टोग्राफिक आदिम के रूप में मॉडल करने और यह सिद्ध करने के लिए गेम-आधारित दृष्टिकोण का उपयोग करना कि मानक क्रिप्टोग्राफिक धारणाओं के तहत, इसका आउटपुट समान प्रारूप की वास्तव में यादृच्छिक स्ट्रिंग से अविभेद्य है।
यह सुरक्षा को एक अनुभवजन्य दावे से एक गणितीय प्रमेय में ले जाता है।
4. तकनीकी विवरण और गणितीय सूत्रीकरण
सत्यापन का मूल पासवर्ड जनरेशन प्रक्रिया और उसके गुणों को औपचारिक रूप देने में निहित है। आइए मुख्य तत्वों को परिभाषित करें:
- वर्ण सेट: मान लीजिए $S = \{S_1, S_2, ..., S_k\}$ अनुमत वर्ण वर्गों का सेट है (जैसे, $S_1$=लोअरकेस, $S_2$=अपरकेस)।
- नीति $\Pi$: एक टपल $(L, \vec{min}, \vec{max})$, जहाँ:
- $L$: पासवर्ड लंबाई।
- $\vec{min} = (m_1, m_2, ..., m_k)$: प्रत्येक सेट $S_i$ के लिए न्यूनतम घटनाएँ।
- $\vec{max} = (M_1, M_2, ..., M_k)$: प्रत्येक सेट $S_i$ के लिए अधिकतम घटनाएँ।
- फ़ंक्शन $\text{Gen}(\Pi, r)$: RPG एल्गोरिदम जो नीति $\Pi$ और यादृच्छिकता $r$ लेकर पासवर्ड $p$ उत्पन्न करता है।
कार्यात्मक शुद्धता गुण:
$\forall \Pi, \forall r, \text{ let } p = \text{Gen}(\Pi, r). \text{ Then:}$
1. $\text{length}(p) = L$.
2. $\forall i \in [1, k], m_i \leq \text{count}(p, S_i) \leq M_i$.
सुरक्षा गुण (अविभेद्यता):
किसी भी संभाव्य बहुपद-समय प्रतिद्वंद्वी $\mathcal{A}$ का $\text{Gen}$ के आउटपुट और $\Pi$ के अनुरूप लंबाई $L$ की वास्तव में यादृच्छिक स्ट्रिंग के बीच अंतर करने में लाभ नगण्य है। औपचारिक रूप से:
$\text{Adv}_{\text{Gen}}(\mathcal{A}) = |\Pr[\mathcal{A}^{\text{Gen}(\Pi, \cdot)}() = 1] - \Pr[\mathcal{A}^{\mathcal{R}_{\Pi}}() = 1]| \leq \text{negl}(\lambda)$
जहाँ $\mathcal{R}_{\Pi}$ नीति $\Pi$ के लिए एक पूर्ण यादृच्छिक ओरेकल है और $\lambda$ सुरक्षा पैरामीटर है।
5. प्रायोगिक परिणाम और चार्ट विवरण
जबकि PDF पूर्वावलोकन में स्पष्ट प्रायोगिक परिणाम या चार्ट शामिल नहीं हैं, निहित "प्रयोग" मौजूदा PM एल्गोरिदम का सर्वेक्षण और स्वयं औपचारिक सत्यापन प्रक्रिया है। इस विश्लेषण के लिए एक संकल्पनात्मक चार्ट एक नीति कॉन्फ़िगरेशन मैट्रिक्स होगा (जैसा कि PDF की तालिका 1 में आंशिक रूप से दिखाया गया है)। इस मैट्रिक्स में एक अक्ष पर पासवर्ड मैनेजर (Chrome, Bitwarden, KeePass) और दूसरे अक्ष पर नीति सुविधाएँ (अधिकतम लंबाई, वर्ण सेट, प्रति सेट न्यूनतम/अधिकतम, समान वर्णों को बाहर करना, कस्टम सेट, आदि) होंगे। सेल चेकमार्क या विशिष्ट मानों से भरे जाएंगे। चार्ट दृष्टिगत रूप से निम्नलिखित को उजागर करेगा:
- सुविधा विखंडन: विभिन्न मैनेजरों में एक समान नीति विनिर्देश की कमी।
- जटिलता प्रवणता: KeePass सबसे अधिक सूक्ष्म नियंत्रण प्रदान करता है, Chrome/Bitwarden अधिक प्रतिबंधात्मक हैं।
- सत्यापन चुनौती: अधिक सुविधाएँ (जैसे कस्टम सेट, डुप्लिकेट हटाना) होने पर, औपचारिक मॉडल और प्रमाण दायित्व अधिक जटिल हो जाते हैं।
संदर्भ कार्यान्वयन के लिए EasyCrypt प्रमाणों का सफल समापन प्राथमिक "परिणाम" होगा, जो यह प्रदर्शित करता है कि निर्दिष्ट गुण सभी संभावित इनपुट और निष्पादन पथों के लिए मान्य हैं।
6. विश्लेषण ढाँचा: मूल अंतर्दृष्टि और तार्किक प्रवाह
मूल अंतर्दृष्टि: पासवर्ड मैनेजरों में विश्वास का संकट मूल रूप से एक सत्यापनीयता संकट है। उपयोगकर्ताओं और विशेषज्ञों से महत्वपूर्ण सुरक्षा कार्यों वाले ब्लैक-बॉक्स एल्गोरिदम पर भरोसा करने के लिए कहा जाता है। इस पत्र की प्रतिभा पासवर्ड जनरेटर—एक अलग, सुस्पष्ट घटक—को औपचारिक तरीकों को लागू करने के लिए एक "विश्वास एंकर" बनाने के लिए आदर्श प्रवेश बिंदु के रूप में चिन्हित करने में है। यह पूरे, अव्यवस्थित PM एप्लिकेशन को सत्यापित करने के बारे में नहीं है, बल्कि यह सिद्ध करने के बारे में है कि मूल क्रिप्टोग्राफिक इंजन सुदृढ़ है।
तार्किक प्रवाह: तर्क शल्य चिकित्सा की सटीकता के साथ आगे बढ़ता है: 1) स्थापित करना कि विश्वास अपनाने में बाधा है। 2) RPG को एक प्रमुख विश्वास कारक के रूप में पहचानना। 3) वर्तमान RPGs का फोरेंसिक सर्वेक्षण करना, जो तदर्थ, असत्यापित डिज़ाइनों को प्रकट करता है। 4) एक समाधान प्रस्तावित करना: एक औपचारिक रूप से सत्यापित संदर्भ कार्यान्वयन। 5) उपकरण (EasyCrypt) और प्रमाणों के प्रकार (कार्यात्मक + गेम-आधारित सुरक्षा) निर्दिष्ट करना। तर्क प्रभावशाली है: यदि आप पासवर्ड जनरेटर के सही और सुरक्षित रूप से काम करने को सिद्ध नहीं कर सकते, तो उस पर बनी हर चीज़ अस्थिर आधार पर है।
7. शक्तियाँ, कमियाँ और क्रियान्वयन योग्य अंतर्दृष्टियाँ
शक्तियाँ:
- व्यावहारिक दायरा: एकल, महत्वपूर्ण घटक पर ध्यान केंद्रित करने से औपचारिक सत्यापन संभव हो जाता है, पूरे PM का प्रयास करने के विपरीत।
- उपकरण चयन: EasyCrypt क्रिप्टोग्राफिक प्रोटोकॉल सत्यापन के लिए शैक्षणिक क्षेत्र में एक सम्मानित ढाँचा है, जो विश्वसनीयता प्रदान करता है।
- गेम-आधारित प्रमाण: इस कठोर पद्धति को अपनाना आधुनिक क्रिप्टोग्राफिक अभ्यास के साथ संरेखित है, जैसा कि Bellare और Rogaway जैसे मौलिक कार्यों में देखा गया है।
कमियाँ और अंतराल:
- एकीकरण अंतराल: पत्र एक औपचारिक रूप से सत्यापित घटक को बड़े, जटिल और अक्सर खराब-आर्किटेक्ट वाले मौजूदा PM कोडबेस में एकीकृत करने की भारी चुनौती पर मौन है। आसपास के C++ या JavaScript में एक भी असुरक्षित मेमोरी एक्सेस प्रमाणों को अमान्य कर सकता है।
- नीति जटिलता: सर्वेक्षण किए गए PMs, विशेष रूप से KeePass, अविश्वसनीय रूप से जटिल नीति विकल्प रखते हैं। उन सभी को औपचारिक रूप देने (कस्टम सेट, रेगेक्स-जैसे नियम?) से एक दुर्भावनापूर्ण विनिर्देश हो सकता है।
- यादृच्छिकता स्रोत: प्रमाण एक पूर्ण यादृच्छिकता स्रोत मानता है। व्यवहार में, OS एन्ट्रॉपी पूल (जैसे, CVE-2008-0166) में बग या खराब PRNG सीडिंग सुरक्षा गारंटी को तोड़ सकती है, जो EasyCrypt द्वारा आमतौर पर मॉडल किए जाने वाले स्तर से नीचे की एक परत है।
क्रियान्वयन योग्य अंतर्दृष्टियाँ:
- PM डेवलपर्स के लिए: सबसे सरल औपचारिक रूप से सत्यापित RPG को एक फॉलबैक या प्रीमियम "उच्च-आश्वासन" मोड के रूप में लागू करके शुरू करें। इसे अनुपालन और विपणन उपकरण के रूप में उपयोग करें।
- मानक निकायों (NIST, FIDO) के लिए: यह कार्य एक मानक, सत्यापित RPG विनिर्देश बनाने के लिए एक खाका प्रदान करता है। विखंडन को समाप्त करने और सुरक्षा स्तर को बढ़ाने के लिए इसके अपनाने को बढ़ावा दें।
- ऑडिटर और शोधकर्ताओं के लिए: मौजूदा RPGs के मैन्युअल समीक्षा के लिए प्रस्तावित ढाँचे को एक चेकलिस्ट के रूप में उपयोग करें। कार्यात्मक शुद्धता गुण को भी संतुष्ट करने में विफलता एक गंभीर भेद्यता होगी।
8. अनुप्रयोग संभावनाएँ और भविष्य की दिशाएँ
इसके निहितार्थ उपभोक्ता पासवर्ड मैनेजरों से कहीं आगे तक फैले हुए हैं।
- एंटरप्राइज और IAM सिस्टम: पहचान और पहुँच प्रबंधन समाधान जो हजारों कर्मचारियों के लिए पासवर्ड नीतियों को लागू करते हैं, एक सत्यापित RPG को एकीकृत कर सकते हैं ताकि बड़े पैमाने पर अनुपालन और ऑडिट क्षमता सुनिश्चित की जा सके।
- हार्डवेयर सुरक्षा मॉड्यूल (HSMs) और TPMs: विश्वास के ये हार्डवेयर मूल सत्यापित RPG को होस्ट कर सकते हैं, जो मजबूत पासवर्ड का एक भौतिक रूप से सुरक्षित, प्रमाणित स्रोत प्रदान करते हैं।
- पासवर्ड रहित संक्रमण: जैसे-जैसे उद्योग FIDO2/WebAuthn की ओर बढ़ रहा है, एक लंबी संकर अवधि होगी। एक सत्यापित RPG यह सुनिश्चित करता है कि संक्रमण के दौरान "विरासत" पासवर्ड पक्ष यथासंभव मजबूत बना रहे।
- भविष्य के शोध दिशाएँ:
- सत्यापित नीति कंपाइलर: ऐसे उपकरण विकसित करना जो उच्च-स्तरीय उपयोगकर्ता नीतियों को स्वचालित रूप से RPG के निम्न-स्तरीय औपचारिक विनिर्देश में अनुवादित करते हैं।
- साइड-चैनल प्रतिरोध: सत्यापन को टाइमिंग-अटैक प्रतिरोध को शामिल करने के लिए विस्तारित करना, यह सुनिश्चित करना कि एल्गोरिदम का रनटाइम नीति या आउटपुट के बारे में जानकारी लीक न करे।
- सत्यापित क्रिप्टो लाइब्रेरी के साथ एकीकरण: RPG को औपचारिक रूप से सत्यापित क्रिप्टोग्राफिक लाइब्रेरी जैसे HACL* (प्रोजेक्ट एवरेस्ट में उपयोग किया गया) के साथ जोड़कर एक एंड-टू-एंड सत्यापित गुप्त प्रबंधन स्टैक बनाना।
अंतिम लक्ष्य सत्यापित RPG को एक वस्तु बनाना है—एक मानक लाइब्रेरी फ़ंक्शन जिसे कोई भी एप्लिकेशन कॉल कर सकता है, जिसमें विश्वास ब्रांड प्रतिष्ठा के बजाय गणित में निहित हो।
9. संदर्भ
- Grilo, M., Ferreira, J. F., & Almeida, J. B. (2021). Towards Formal Verification of Password Generation Algorithms used in Password Managers. arXiv preprint arXiv:2106.03626v2.
- Bellare, M., & Rogaway, P. (2006). The security of triple encryption and a framework for code-based game-playing proofs. In Advances in Cryptology-EUROCRYPT 2006 (pp. 409-426). Springer.
- Project Everest. (n.d.). HACL*: A verified modern cryptographic library. Retrieved from https://project-everest.github.io/
- National Institute of Standards and Technology (NIST). (2020). Digital Identity Guidelines: Authentication and Lifecycle Management (SP 800-63B).
- FIDO Alliance. (2021). FIDO2: WebAuthn & CTAP. Retrieved from https://fidoalliance.org/fido2/
- Zhu, J., Park, T., Isola, P., & Efros, A. A. (2017). Unpaired image-to-image translation using cycle-consistent adversarial networks. In Proceedings of the IEEE international conference on computer vision (pp. 2223-2232). (एक परिवर्तनकारी, सुस्पष्ट एल्गोरिदमिक समस्या के उदाहरण के रूप में उद्धृत जिसने बड़े पैमाने पर आकर्षण प्राप्त किया—सुरक्षा आदिमों के लिए औपचारिक सत्यापन की क्षमता के समान)।