المعلوماتية > عام

الرياضيات الكامنة وراء كلمات المرور (Passwords)

هل شعرت يومًا بالإحباط من محاولاتك لتعيين كلمة مرور لحساب ما؛ نتيجة رفضها لكونها ضعيفة جدًّا؟ لماذا لا يمكنني أن أعين كلمة سهلة وحسب؟!

قيل لنا أيضًا أن نغيّر خياراتنا بانتظام، فمن الواضح أن مثل هذه التدابير تضيف السلامة، ولكن كيف؟

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

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

ما المنطق وراء وضع كلمات مرور قوية؟ 

عندما يُطلَب منك إنشاء كلمة مرور بعدد محارف معيّن ومجموعة من الشروط، فسيتناسب اختيارك مع الخيارات الفريدة جميعها التي تتوافق مع هذه الشروط في "فضاء" الاحتمالات.

على سبيل المثال؛ إذا طُلِب منك استخدام ستة أحرف صغيرة -مثل afzjxd أو auntie أو secret أو wwwwww- فإن فضاء الاحتمالات قد يحتوي على 266 أو 308,915,776 احتمال، وبمعنى آخر؛ يوجد 26 خيارًا ممكنًا للمحرف الأول و26 خيارًا ممكنًا للمحرف الثاني وهكذا، وتكون هذه الخيارات مستقلة؛ أي لا يجب عليك استخدام محارف مختلفة، لذا؛ إنّ حجم فضاء كلمة المرور هو جداء قيم احتمالات المحارف الستة أو 26 × 26 × 26 × 26 × 26 × 26 = 266.

وإذا طُلِب منك تحديد كلمة مرور مؤلفة من 12 محرفًا ويمكن أن تتضمن أحرفًا كبيرة وصغيرة (52 احتمالًا) وأرقامًا (10 احتمالات) ورموزًا (10 احتمالات هي: ! و@ و# و$ و٪ و^ و& و؟ و/ و+)، فسيكون لديك 72 احتمالًا لكل محرف من المحارف الاثني عشر المكوِّنة لكلمة المرور، ومن ثم يكون حجم فضاء الاحتمالات عندئذ: 7212 (19,408,409,961,765,342,806,016، أو تقريبًا: 19* 1021).

وهنا يكون حجم فضاء الاحتمالات أكبر بـ 62 تريليون مرة من فضاء الاحتمالات في الكلمة الأولى المكونة من ستة أحرف.

سيستغرق الحاسوب الذي يعمل بكامل إمكانياته لمعرفة كلمة المرور المكونة من 12 حرفًا -واحدًا تلو الآخر- وقتًا أطول من 62 تريليون مرة. وإذا كان حاسوبك قد استغرق ثانيةً واحدة في تنبؤ فضاء ستة أحرف، فسيتعيّن عليه أن يخصص مليونَي سنة لفحص كل كلمة مرور في فضاء 12 حرفًا. 

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

وعادةً ما يتضمن حساب حجم هذه الفضاءات بواسطة الحاسوب حسابَ عدد الأرقام الثنائية في عدد الاحتمالات، علمًا أنّه يُرمَز لعدد الأرقام الثنائية بـ N، وهو مشتق من الصيغة الرياضية الآتية:

 1 + integer(log2(N))

في الصيغة؛ قيمة ((log2(N) عدد حقيقي مع العديد من المنازل العشرية، مثل: log2 (266) = 28.202638

على سبيل المثال؛ ينتج عن الحساب في كلمة المرور المكونة من ستة أحرف صغيرة في المثال الأول قيمةَ 29 بت، أما فيما يخص المثال الثاني الأكثر تعقيدًا والمكوَّن من 12 محرفًا؛ فينتج عن الحساب قيمة 75 بت. 

يشير علماء الرياضيات إلى أن فضاء الاحتمال هي إنتروبيا (entropy) من 29 للمحارف الستة و75 بت للمحارف الاثني عشر، وتوصي الوكالة الفرنسية الوطنية للأمن السيبراني (ANSSI) بالمساحات التي تحتوي على 100 بت -على الأقل- عندما يتعلق الأمر بكلمات المرور أو المفاتيح السرية لأنظمة التشفير التي يجب أن تكون آمنة على نحو مطلق. 

يتضمن التشفير تمثيل البيانات بطريقة تضمن عدم إمكانية استردادها ما لم يكن لدى المستلم المفتاح السري لكسر الشفرة (secret code-breaking key). 

وفي الواقع، توصي الوكالة بتوفير مساحة 128 بت لضمان الأمن عدة سنوات. وتعد 64 بت صغيرة جدًّا (ضعيفة جدًّا)؛ إذ تكون صغيرة في المجال من 64 إلى 80 بت، ومتوسطة (قوية إلى حد ما) في المجال من 80 إلى 100 بت.

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

وللحصول على كلمة مرور قوية حقًّا وفق ما توصي به ANSSI؛ ستحتاج -على سبيل المثال- إلى تسلسل مكون من 16 محرفًا، كل منها مأخوذ من مجموعة من 200 محرف. وهذا من شأنه أن يجعل مساحتها 123 بت، ومن ثم تصبح كلمة المرور مستحيلة الحفظ. 

لذلك؛ يصرّ مصممو النظام على الكلمات الطويلة فقط عندما تُنشَأ كلمات المرور تلقائيًّا بواسطة النظام ولا يتعيّن على المستخدمين تذكرها، وفيما عدا ذلك هم عمومًا أقل تطلبًا ويقبلون كلمات مرور ضعيفة أو متوسطة القوة.

فيما يأتي أول 25 كلمة في أحد قواميس كلمة المرور، وهي مدرجة بالترتيب بدءًا من الأكثر شيوعًا (أُخِذت الأمثلة من قاعدة بيانات مكونة من خمسة ملايين كلمة مرور سُرِّبَت في عام 2017م، وحُلِّلت بواسطة SplashData).

1. 123456

2. password

3. 12345678

4. qwerty

5. 12345

6. 123456789

7. letmein

8. 1234567

9. football

10. iloveyou

11. admin

12. welcome

13. monkey

14. login

15. abc123

16. starwars

17. 123123

18. dragon

19. passw0rd

20. master

21. hello

22. freedom

23. whatever

24. qazwsx

25. Trustno1

ملاحظة: إذا كنت تستخدم كلمة المرور (iloveyou)، فهذا ليس دهاءً كما كنت تظن! وبالطبع تختلف القوائم وفقًا للبلد الذي تُجمَع فيه ومواقع الويب المعنية، ثم إنها تختلف مع مرور الوقت أيضًا.

يمكنك الاطلاع على قاموس كلمات المرور الأكثر استخدامًا على الرابط الآتي: هنا

المصادر:

هنا

هنا