اختر اللغة

نحو التحقق الرسمي من خوارزميات توليد كلمات المرور في مديري كلمات المرور

ورقة بحثية تقترح تنفيذًا مرجعيًا مُتحققًا منه رسميًا لمولدات كلمات المرور العشوائية في مديري كلمات المرور، باستخدام EasyCrypt لإثبات الصحة الوظيفية والأمنية.
computationalcoin.com | PDF Size: 0.1 MB
التقييم: 4.5/5
تقييمك
لقد قيمت هذا المستند مسبقاً
غلاف مستند PDF - نحو التحقق الرسمي من خوارزميات توليد كلمات المرور في مديري كلمات المرور

1. المقدمة

يُعد مديرو كلمات المرور (PMs) أدوات حاسمة يوصي بها خبراء الأمن للتخفيف من نقاط الضعف المرتبطة بمصادقة كلمات المرور، مثل كلمات المرور الضعيفة وإعادة استخدامها. فهي تتيح استخدام كلمات مرور قوية وفريدة من خلال التعامل مع التخزين والتوليد. ومع ذلك، فإن اعتماد المستخدمين يعوقه نقص الثقة في هذه التطبيقات. تحدد هذه الورقة البحثية ميزة توليد كلمات المرور العشوائية (RPG) كعامل رئيسي يؤثر على كل من الثقة والاستخدام. لمعالجة ذلك، يقترح المؤلفون تطوير والتحقق الرسمي من تنفيذ مرجعي لخوارزمية توليد كلمات المرور العشوائية، بهدف توفير أساس سليم من الناحية التشفيرية وآمن بشكل قابل للإثبات يمكن للمستخدمين والمطورين الوثوق به.

المشكلة الأساسية هي أنه بينما يعزز مديرو كلمات المرور الأمان، فإن آلياتهم الداخلية - خاصة توليد كلمات المرور - غالبًا ما تكون صناديق سوداء غير شفافة. بدون ضمانات قابلة للتحقق، يظل المستخدمون متشككين. يتضمن مسار الحل استخدام الأساليب الرسمية، وتحديدًا إطار عمل EasyCrypt، لتحديد الخوارزمية رياضيًا وإثبات صحتها وخصائصها الأمنية ضد نموذج خصم محدد جيدًا.

2. خوارزميات توليد كلمات المرور الحالية

تستعرض الورقة البحثية 15 مديرًا لكلمات المرور، مع التركيز على ثلاثة أمثلة مفتوحة المصدر ومستخدمة على نطاق واسع: المدير المدمج في متصفح جوجل كروم، وBitwarden، وKeePass. يكشف التحليل عن أنماط شائعة واختلافات حرجة في نهجها لتوليد كلمات المرور العشوائية.

2.1 سياسات تكوين كلمة المرور

يسمح جميع مديري كلمات المرور الذين تمت دراستهم للمستخدمين بتحديد سياسات تقيد بنية كلمات المرور المُولدة. تتضمن هذه السياسات عادةً:

  • طول كلمة المرور: يتراوح من 1-200 (كروم) إلى حد أقصى متطرف 1-30000 (KeePass).
  • مجموعات الأحرف: تشمل المجموعات القياسية الأحرف الصغيرة، والأحرف الكبيرة، والأرقام، والأحرف الخاصة. يوفر KeePass دقة إضافية مع مجموعات منفصلة للأقواس، والمسافة، والشرطة، والشرطة السفلية.
  • الحد الأدنى/الأقصى لكل مجموعة: يسمح كروم وBitwarden بتحديد الحد الأدنى لعدد مرات الظهور لكل مجموعة أحرف. بينما لا يفعل KeePass ذلك.
  • استبعاد الأحرف الغامضة: يسمح الثلاثة باستبعاد الأحرف المتشابهة بصريًا (مثل 'l'، '1'، 'O'، '0') لتقليل خطأ المستخدم.
  • مجموعات مخصصة والتكرارات: يسمح KeePass بشكل فريد بتحديد مجموعات أحرف مخصصة لتضمينها أو استبعادها، ويمكنه إزالة الأحرف المكررة من كلمة المرور المُولدة.

يُبرز التنوع في خيارات السياسة نقصًا في التوحيد القياسي، مما يعقد إنشاء نموذج عالمي قابل للتحقق.

2.2 توليد كلمة المرور العشوائية

تتضمن الخوارزمية العامة اختيار أحرف عشوائيًا من المجموعات المسموح بها مع مراعاة قيود السياسة (الطول، الحدود الدنيا، الحدود القصوى). تصف الورقة البحثية خوارزمية كروم بالتفصيل:

  1. أولاً، قم بتوليد أحرف لكل مجموعة لديها حد أدنى محدد لعدد مرات الظهور.
  2. ثم، قم بتوليد الأحرف المتبقية عن طريق الاختيار العشوائي من اتحاد جميع المجموعات التي لم تصل بعد إلى الحد الأقصى المسموح به لمرات الظهور.
  3. أخيرًا، قم بتطبيق تبديل عشوائي على سلسلة الأحرف المُولدة.

يجب تنفيذ هذه العملية بعناية لضمان العشوائية الحقيقية والتوزيع غير المتحيز عبر مساحة كلمات المرور المقيدة بالسياسة بأكملها. يمكن للتحيزات الدقيقة في الاختيار أو التبديل أن تضعف كلمات المرور الناتجة.

3. التنفيذ المقترح المُتحقق منه رسميًا

المساهمة المركزية للورقة البحثية هي اقتراح بناء تنفيذ مرجعي لتوليد كلمات المرور العشوائية مع إثباتات مدققة آليًا لخصائصه.

3.1 المواصفات الرسمية

الخطوة الأولى هي إنشاء مواصفات رياضية دقيقة لخوارزمية توليد كلمات المرور داخل EasyCrypt. تحدد هذه المواصفات:

  • المدخلات: معلمات السياسة (الطول $L$، مجموعات الأحرف $S_1, S_2, ..., S_n$، الحدود الدنيا $min_i$، الحدود القصوى $max_i$).
  • المخرج: سلسلة كلمة مرور $p$ بطول $L$.
  • الشروط المسبقة: يجب أن تكون السياسة متسقة (على سبيل المثال، $\sum min_i \leq L$).
  • الشروط اللاحقة (الصحة الوظيفية): يجب أن يفي المخرج $p$ بجميع قيود السياسة. بشكل رسمي، $\forall i, min_i \leq count(p, S_i) \leq max_i$، حيث $count$ تحسب الأحرف من المجموعة $S_i$ في $p$.

3.2 الخصائص الأمنية والإثباتات

بالإضافة إلى الصحة، يجب إثبات أمان التنفيذ. تتبنى الورقة البحثية نهج إثبات تشفيري قائم على الألعاب. الخاصية الأمنية الرئيسية هي أخذ العينات العشوائية المنتظمة من مجموعة جميع كلمات المرور التي تلبي السياسة المحددة.

يتم صياغة هذا على أنه لعبة أمنية حيث يحاول الخصم التمييز بين كلمة مرور تم إنشاؤها بواسطة الخوارزمية الحقيقية وكلمة مرور تم أخذ عينات منها بشكل منتظم من مساحة كلمات المرور الصالحة. يوضح الإثبات أنه لا يمكن لأي خصم فعال الفوز بهذه اللعبة باحتمالية أفضل بشكل ملحوظ من التخمين العشوائي (1/2). وهذا يضمن أن الخوارزمية لا تقدم أنماطًا أو تحيزات يمكن التنبؤ بها.

سيستفيد الإثبات من مكتبات EasyCrypt للاستدلال على الحسابات الاحتمالية وأخذ العينات العشوائية.

4. النتائج التجريبية والتحليل

بينما يمثل ملف PDF المقدم عملاً أوليًا ولا يحتوي على نتائج تجريبية كاملة، فإنه يمهد الطريق لها. من شأن التحقق المقترح أن ينتج النتائج الملموسة التالية:

  • تقرير التحقق: شهادة إثبات مولدة آليًا من EasyCrypt، تؤكد التزام كود الخوارزمية بمواصفاتها الرسمية ونظرياتها الأمنية.
  • التحليل المقارن: يمكن مقارنة الخوارزمية المُتحقق منها مع التنفيذات الحالية في كروم، وBitwarden، وKeePass. ستشمل الاختبارات توليد دفعات كبيرة من كلمات المرور (مليون مثلاً) تحت سياسات متطابقة وتحليل التوزيع إحصائيًا.
  • المقياس: سيكون المقياس الرئيسي هو تباعد كولباك-ليبلر (KL) أو اختبار كاي مربع بين التوزيع التجريبي لكلمات المرور المُولدة والتوزيع المنتظم النظري على المساحة المحددة بالسياسة. يجب أن تظهر الخوارزمية المُتحقق منها رسميًا تباعدًا لا يمكن تمييزه إحصائيًا عن الصفر، بينما قد تكشف التنفيذات غير المُتحقق منها عن تحيزات دقيقة.
  • وصف الرسم البياني: رسم بياني شريطي يقارن الإنتروبيا (بالبت) لتوزيع كلمات المرور المُولدة لكل خوارزمية من خوارزميات مديري كلمات المرور مقابل الإنتروبيا القصوى النظرية للسياسة المحددة. يجب أن تتماشى شريط التنفيذ المرجعي المُتحقق منه تمامًا مع شريط "الحد الأقصى النظري".

5. التفاصيل التقنية والإطار الرياضي

يعتمد التحقق الرسمي على النمذجة الرياضية الدقيقة. دعنا نحدد المفاهيم الأساسية:

مساحة كلمة المرور: بالنظر إلى سياسة بطول $L$ ومجموعات الأحرف المسموح بها $S_1, ..., S_n$، فإن المجموعة الكلية لكلمات المرور الممتثلة $\mathcal{P}$ هي مجموعة فرعية من الضرب الديكارتي $\mathcal{C}^L$، حيث $\mathcal{C} = \bigcup_{i=1}^n S_i$. حجم $\mathcal{P}$ مقيد بقواعد الحد الأدنى والحد الأقصى.

التوزيع المنتظم: الهدف الأمني هو أن تنفذ الخوارزمية $\mathcal{A}$ دالة لا يمكن تمييزها عن أخذ عينات منتظم حقيقي $\mathcal{U}_{\mathcal{P}}$. لأي كلمة مرور $p \in \mathcal{P}$، يجب أن يكون الاحتمال: $$\Pr[\mathcal{A}(policy) = p] = \frac{1}{|\mathcal{P}|}$$ حيث $|\mathcal{P}|$ هو عدد عناصر مجموعة كلمات المرور الصالحة.

مخطط إثبات قائم على الألعاب: يتم تأطير الأمان على أنه لعبة "حقيقي أو عشوائي" (RoR).

  1. يقوم المتحدي بقلب عملة سرية $b \xleftarrow{\$} \{0,1\}$.
  2. يمكن للخصم $\mathcal{D}$ استجواب المتحدي بسياسات كلمات المرور.
  3. إذا كانت $b=0$ (حقيقي)، يقوم المتحدي بتشغيل الخوارزمية الفعلية $\mathcal{A}$.
  4. إذا كانت $b=1$ (عشوائي)، يقوم المتحدي بأخذ عينات بشكل منتظم من $\mathcal{P}$ باستخدام $\mathcal{U}_{\mathcal{P}}$.
  5. يخرج $\mathcal{D}$ تخمينًا $b'$.
يتم تعريف ميزة الخصم على النحو التالي: $$\mathbf{Adv}^{ror}_{\mathcal{A},\mathcal{D}}(\lambda) = \left| \Pr[b' = b] - \frac{1}{2} \right|$$ يوضح الإثبات أنه بالنسبة لجميع الخصوم $\mathcal{D}$ ذوي الوقت الاحتمالي متعدد الحدود، فإن هذه الميزة تكون مهملة في معلمة الأمان $\lambda$ (المتعلقة بمصدر العشوائية).

6. إطار التحليل: مثال غير برمجي

نظرًا لأن ملف PDF لا يتضمن كودًا فعليًا، إليك إطار تحليل مفاهيمي لتقييم خوارزمية توليد كلمات المرور العشوائية، مقدمًا كقائمة مراجعة:

الحالة: تقييم مولد كلمات المرور في "PM-X".

الخطوة 1 - تفكيك السياسة: تعيين خيارات واجهة المستخدم لـ "PM-X" (مربعات الاختيار، المنزلقات) إلى مجموعة سياسة رسمية: (L=12, Sets={Lower, Upper, Digits}, min_Lower=1, min_Upper=1, min_Digits=1, exclude={'l','O','0'}).

الخطوة 2 - شفافية الخوارزمية: هل يمكن وصف خطوات الخوارزمية (مثل عملية كروم المكونة من 3 خطوات) بوضوح من الوثائق أو الكود المصدري؟ إذا لم يكن الأمر كذلك، فإنها تفشل في اختبار الشفافية.

الخطوة 3 - حساب الإنتروبيا: حساب الحد الأقصى النظري للإنتروبيا للسياسة: $log_2(|\mathcal{P}|)$ بت. بالنسبة للسياسة أعلاه، $|\mathcal{P}|$ هو عدد سلاسل الأحرف الـ 12 من أبجدية (70 حرفًا بعد الاستبعادات مثلاً) التي تلبي القيود الدنيا. هذا هو المعيار الأمني.

الخطوة 4 - تصميم الاختبار الإحصائي: تصميم تجربة لتوليد $N$ كلمة مرور واختبار التوزيع المنتظم. استخدم اختبار كاي مربع عبر مساحة كلمات المرور بأكملها أو مجموعة فرعية تم أخذ عينات منها بذكاء.

الخطوة 5 - اكتشاف التحيز: ابحث عن تحيزات محددة: هل تكون بعض مواقع الأحرف أقل عشوائية؟ هل تقلل الخوارزمية المستخدمة لتحقيق الحدود الدنيا من العشوائية للفتحات المتبقية؟

يوفر هذا الإطار منهجية منظمة وخالية من الكود لفحص أي خوارزمية توليد كلمات مرور عشوائية بشكل نقدي، بما يتماشى مع هدف الورقة البحثية المتمثل في الانتقال من الغموض إلى التحليل القابل للتحقق.

7. التطبيقات المستقبلية واتجاهات البحث

يفتح هذا العمل عدة مسارات واعدة:

  • التوحيد القياسي: يمكن أن تصبح خوارزمية توليد كلمات مرور عشوائية مُتحقق منها رسميًا مكونًا قياسيًا (مثل مكتبة) يتم دمجه في مديري كلمات المرور عبر الصناعة، على غرار كيفية توفير libsodium للبدائيات التشفيرية المُتحقق منها.
  • التكامل مع المتصفحات وأنظمة التشغيل: يمكن لأنظمة التشغيل (مثل Windows Hello، macOS Keychain) والمتصفحات اعتماد المولد المُتحقق منه لميزات اقتراح كلمات المرور المدمجة فيها، مما يرفع مستوى الأمان الأساسي لجميع المستخدمين.
  • التوليد المدعوم بالأجهزة: يمكن تنفيذ الخوارزمية المُتحقق منها في عناصر الأجهزة الآمنة (TPM، Secure Enclave) للتوليد الذي يكون آمنًا من الناحية المادية والمنطقية.
  • اعتبارات ما بعد الكم: يمكن للبحث المستقبلي استكشاف سياسات توليد كلمات المرور التي تنتج كلمات مرور مقاومة لهجمات القوة الغاشمة الكلاسيكية والكمية، مع تكييف الإثباتات الرسمية لنماذج التهديد الجديدة.
  • تحقق المقايضة بين قابلية الاستخدام والأمان: توسيع النموذج الرسمي لإثبات خصائص تتعلق بقابلية تذكر كلمات المرور المُولدة أو إمكانية كتابتها، لسد الفجوة بين التشفير الخالص والتفاعل بين الإنسان والحاسوب.
  • تحليل السياسة الآلي: تطوير أدوات تستخدم النموذج الرسمي لتحليل سياسة يحددها المستخدم تلقائيًا والإبلاغ عن إنتروبياها الفعالة وأي قيود غير مقصودة تضعف مساحة كلمات المرور.

8. المراجع

  1. Grilo, M., Ferreira, J. F., & Almeida, J. B. (2021). Towards Formal Verification of Password Generation Algorithms used in Password Managers. arXiv preprint arXiv:2106.03626.
  2. 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.
  3. Barthe, G., Dupressoir, F., Grégoire, B., Kunz, C., Schmidt, B., & Strub, P. Y. (2016). EasyCrypt: A computer-aided cryptography toolset. Lecture Notes in Computer Science, 9573, 3-32.
  4. National Institute of Standards and Technology (NIST). (2020). Digital Identity Guidelines: Authentication and Lifecycle Management (SP 800-63B).
  5. Shannon, C. E. (1948). A mathematical theory of communication. The Bell System Technical Journal, 27(3), 379-423. (عمل تأسيسي حول الإنتروبيا ونظرية المعلومات).
  6. Florêncio, D., Herley, C., & Van Oorschot, P. C. (2014). An administrator's guide to internet password research. In 28th Large Installation System Administration Conference (LISA14) (pp. 44-61).

9. منظور المحلل: الفكرة الأساسية والنقد

الفكرة الأساسية

تحدد هذه الورقة البحثية بشكل صحيح نقطة ضعف حرجة، ولكن غالبًا ما يتم تجاهلها، في سلسلة توريد الأمن السيبراني: العشوائية غير المُتحقق منها في قلب مديري كلمات المرور. الفكرة الحقيقية ليست أن توليد كلمات المرور معقد - بل أن نموذج الثقة لأداة أمنية أساسية معطل. يُطلب من المستخدمين الوثوق بصندوق أسود بمفاتيحهم الرقمية. اقتراح المؤلفين بتطبيق التحقق الرسمي، وهي تقنية أكثر شيوعًا في تصميم الأجهزة وبرامج الطيران الحرجة (مثل الأنظمة المعتمدة DO-178C)، على بدائية أمنية للمستهلكين هو طموح وضروري في نفس الوقت. إنها محاولة لزرع دقة مختبرات البحث في SRI International أو INRIA في عالم أمن التطبيقات الذي غالبًا ما يكون مهملاً.

التدفق المنطقي

يتدفق الحجة منطقيًا من مشكلة راسخة (عدم ثقة المستخدمين في مديري كلمات المرور) إلى سبب جذري تقني محدد (توليد كلمات المرور غير الشفاف)، ثم إلى مسار حل ملموس وعالي الضمان (المواصفات الرسمية والإثبات). مسح مديري كلمات المرور الحاليين ليس أكاديميًا فحسب؛ بل يوضح بشكل فعال التناقض الكبير في التنفيذات، مما يدعم الحجة لوجود معيار مرجعي مُتحقق منه. التحول إلى EasyCrypt والإثباتات القائمة على الألعاب مناسب، حيث أن هذا الإطار، الذي طورته مؤسسات رائدة في التشفير الرسمي، مصمم خصيصًا لهذه الفئة من المشكلات. يعكس التدفق منهجية الأعمال الأساسية في التشفير المُتحقق منه، مثل التحقق من مولد HMAC-DRBG.

نقاط القوة والعيوب

نقاط القوة: أكبر قوة للورقة البحثية هي تركيزها على مشكلة عالية التأثير وقابلة للمعالجة. فهي لا تحاول التحقق من مدير كلمات مرور كامل؛ بل تستهدف النواة التشفيرية. استخدام مديري كلمات المرور مفتوحة المصدر للتحليل يرسخ البحث في الواقع. اختيار الإثباتات القائمة على الألعاب هو المعيار الصناعي لتحليل التشفير الحديث.

العيوب والفجوات الحرجة: الورقة البحثية، كما هي مقدمة، هي اقتراح مقنع أكثر من كونها دراسة مكتملة. أكثر حذف واضح هو الكود الفعلي لـ EasyCrypt والإثباتات المكتملة. بدون هذه، يظل الادعاء نظريًا. علاوة على ذلك، فإنها تهمش مشكلة تعقيد السياسة. يجب أن تتعامل المواصفات الرسمية مع كل حالة حدودية للسياسات المحددة من قبل المستخدم (مثل الحدود الدنيا/القصوى المتضاربة، مجموعات الأحرف المخصصة). يمكن أن يؤدي هذا إلى مواصفات معقدة مثل التنفيذ، وهو تحدي معروف في الأساليب الرسمية. كما أنها تتجنب مصدر الإنتروبيا في العالم الحقيقي - الخوارزمية جيدة فقط بقدر جودة مولد الأرقام العشوائية الآمنة التشفيرية (CSPRNG) للنظام (مثل /dev/urandom). الخوارزمية المُتحقق منها التي تتغذى على عشوائية ضعيفة تظل ضعيفة. ستكون الورقة البحثية أقوى من خلال تحديد ضماناتها صراحةً بناءً على افتراض مصدر إنتروبيا مثالي.

رؤى قابلة للتنفيذ

1. لمطوري مديري كلمات المرور: افتحوا مصدر كود توليد كلمات المرور الخاص بكم على الفور واخضعوه لتدقيق طرف ثالث. ابدأوا في نمذجة خوارزميتكم، حتى بشكل غير رسمي، لتحديد التحيزات المحتملة. فكروا في دمج مكتبة مُتحقق منها مثل تلك التي يهدف هذا البحث إلى إنتاجها.

2. لمدققي الأمن: أضفوا "تحليل خوارزمية توليد كلمات المرور العشوائية" إلى قائمة مراجعة تدقيق مديري كلمات المرور القياسية لديكم. استخدموا الإطار الإحصائي الموضح في القسم 6 لاختبار التحيزات التوزيعية في مخرجات العملاء.

3. لهيئات التوحيد القياسي (مثل NIST، تحالف FIDO): ابدأوا مجموعة عمل لتحديد واجهة برمجة تطبيقات (API) قياسية ومجموعة من متطلبات الأمان لمولدات كلمات المرور، مما يمهد الطريق للتنفيذات المعتمدة. هذا يعكس التوحيد القياسي الناجح للخوارزميات التشفيرية.

4. للباحثين: هذا العمل هو نقطة انطلاق مثالية. الخطوة التالية هي إكمال تنفيذ وإثباتات EasyCrypt. المرحلة اللاحقة والحاسمة هي تطوير حزمة اختبار يمكنها أخذ الكود المُتحقق منه واختباره عشوائيًا ضد الكود الواقعي لكروم، وBitwarden، وما إلى ذلك، للعثور على التناقضات الملموسة ونقاط الضعف، والانتقال من النظرية إلى التأثير العملي.

في الختام، تسلط هذه الورقة البحثية الضوء الضروري على زاوية مظلمة من بنيتنا التحتية الأمنية. على الرغم من أنها غير مكتملة، إلا أن اتجاهها صحيح. لقد نضجت صناعة مديري كلمات المرور بما يتجاوز مرحلة "فقط ثق بنا"؛ حان الوقت للثقة الرياضية القابلة للتحقق. يمكن أن ينجح هذا البحث في تحديد سابقة جديدة لكيفية بناء جميع برامج الأمن من جانب العميل.