ما الذي يجعل كلمة المرور قوية

ما الذي يجعل كلمة المرور قوية

0 المراجعات

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


الجزء 1: كيف تعمل كلمات المرور؟


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

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

 قمت بتعيين "كلمة مرور" من 3 و 4. هذه "مجزأة" إلى 7 (3 +4 = 7). يتم تخزين هذه 7 فقط على الخادم. إذا تمكن أحد المتطفلين من الوصول إلى الخادم ووجد هذا "التجزئة" ، فلن يكون لديه طريقة لمعرفة ما إذا كانت "كلمة المرور" الخاصة بك هي 3 و 4 ، أو 1 و 6 ، أو 5 و 2. 

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

وهذا ما يسمى بوجود العديد من التصادمات - عندما يكون هناك اثنان أو المزيد من المدخلات تؤدي إلى نفس الإخراج المجزأ. لذلك ، نحتاج إلى إضافة بعض التحول الذي ينتج عنه أقل عدد ممكن من الاصطدامات ، ولكن مع تجنب أي عمليات عكسية. دعونا نحاول تسلسل الأرقام الأصلية ، وضرب الرقم الناتج في المجموع. إذن بالنسبة إلى 3 و 4 ، سيكون لدينا 3 + 4 = 7 ، ثم 7 * 34 = 238. بالنسبة إلى 5 و 2 ، سيكون لدينا 5 + 2 = 7 ، ثم 7 * 52 = 364.
تذكر أن أي تخمين نقوم به يجب أن يكون على شكل رقمين ، لذلك يتعين علينا حساب الإجابة الكاملة لكل مجموعة مكونة من رقمين نريد تخمينهما. إذن ما هو عددين يعطينا الناتج 1305؟
ربما يمكنك معرفة ذلك في النهاية باستخدام آلة حاسبة ، أو بشكل أسرع عن طريق كتابة برنامج للتخمين والتحقق ، لكن الأمر سيستغرق بعض العمل.

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

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

 

الجزء 2: Hash Cracking: كل شيء بالتخمين والتحقق


الطريقة الوحيدة "لاختراق" كلمة المرور هي حساب التجزئة لإدخال معين ، ومعرفة ما إذا كانت تتطابق مع التجزئة التي تحاول اختراقها - أي التخمين والتحقق. على سبيل المثال ، لنفترض أن دالة التجزئة المسماة MD5 تستغرق 3000 دورة من دورات وحدة المعالجة المركزية لحسابها (يختلف العدد الفعلي حسب الصيغة ونظام الكمبيوتر) ، وربما يستغرق الأمر 10 دورات للمقارنة ومعرفة ما إذا كانت التجزئة هي نفسها ... لذلك 3010 دورة للتحقق تجزئة واحدة. إذا كانت لديك كلمة مرور مكونة من 10 أحرف ، فهناك 72 درجة من التباديل الممكنة للأحرف الصغيرة والأحرف الكبيرة والأرقام والرموز (ربما اعتمادًا على الرموز المسموح بها كمدخلات) - حوالي 3.75 كوينتيليون احتمال. لذلك ، مع نواة واحدة لوحدة معالجة مركزية نموذجية بسرعة 3 هرتز وحوالي 3000 دورة لكل تجزئة ، لدينا 3 مليارات دورة في الثانية مقسومة على 3000 دورة لكل تجزئة = 1 مليون تجزئة في الثانية. 

واحد كوينتيليون هو ألف مليار مليون ، لذا فإن 3.75 تريليون ثانية لحساب كل التوليفات الممكنة ... أي حوالي 118،833 سنة من وقت وحدة المعالجة المركزية الثابت بمعدل 1 مليون تجزئة في الثانية. سنعود إلى هذا بعد قليل.

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


معظم وظائف التجزئة الحقيقية مكثفة للغاية ، وتضمن مخرجات فريدة لكل إدخال ، وما إلى ذلك. لكن وحدات المعالجة المركزية الحديثة بها العديد من النوى ، ويمكنك أيضًا الاستفادة من السحابة ... لذلك لنفترض أن لدينا مجموعة من الخوادم السحابية يبلغ مجموعها 100 مركز عند 3 هرتز- باستخدام مثالنا أعلاه الذي يبلغ 118،833 عامًا من وحدة المعالجة المركزية أحادية النواة ، والذي من شأنه أن يقودنا إلى 1188 عامًا ... لنفترض أن لدينا مزرعة خوادم عملاقة تحتوي على عشرة آلاف مركز ، يمكننا تخفيضها إلى 0.1188 سنة (حوالي 6 أسابيع). هذا لكل تجزئة ممكنة ، بالطبع - أي أننا قد اخترقنا كل كلمة مرور ممكنة. إذا كنا نحاول فقط العثور على تجزئة واحدة ، فقد نكون محظوظين ونكسرها ربما في غضون عقدين تافهين.


الجزء 3: كيفية كسر كلمة المرور


في الواقع ، لسنا بحاجة إلى تخمين كل الاحتمالات. يستخدم معظم الناس مجموعات من الأحرف والأرقام التي تتعلق بحياتهم - على سبيل المثال الكلمات والأرقام الإنجليزية من تاريخ ميلادهم - حتى نتمكن من تقليل مقدار التخمينات التي نحتاج إلى اتخاذها. على سبيل المثال ، يمكننا إدخال قائمة بكل كلمة في اللغة الإنجليزية في برنامج التكسير الشهير Hashcat ، وتوجيهه لحساب التجزئة لكل كلمة متبوعًا بالأرقام من 0 إلى 999. لذلك يتم تقريب ما يصل إلى 200000 كلمة باللغة الإنجليزية ، بالإضافة إلى 1000 الأرقام التالية لكل واحد هي 200000 * 1000 = 200 مليون احتمال ، الأمر الذي سيستغرق 200 ثانية بمعدل 1 مليون تجزئة / ثانية. ليس سيئا جدا.

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

 تجعل قاعدة مثل هذه من الصعب على الأشخاص إنشاء كلمة مرور يمكنهم تذكرها ، لذلك نميل إلى التوجه مباشرة إلى الأنماط والتسلسلات الشائعة. سيكتب معظم الأشخاص الحرف الأول من الكلمة بأحرف كبيرة ، ويضعون رقمًا مشتركًا مثل 123 ، 456 ، أو العام الأخير ، في النهاية ، ثم رمز يسهل الوصول إليه أثناء الضغط على مفتاح shift - عادةً ما يكون علامة تعجب ، في -تصنيف أو علامة الجنيه أو علامة النجمة (نعم ، يؤثر تخطيط لوحة المفاتيح على كيفية اختيار الأشخاص لكلمات المرور- "asdf" و "qwerty" هي بعض الأنماط الشائعة التي يمكن التعرف عليها). لذا من الناحية العملية ، تجعل هذه المتطلبات كلمات المرور أقل أمانًا - فهي تمنع كلمات المرور الرهيبة تمامًا مثل "كلمة المرور" ، ولكنها بشكل عام تجعل من السهل تخمين كلمات المرور المعقدة.

 

الجزء 4: كيف تجعل كلمة مرورك قوية

 

image about ما الذي يجعل كلمة المرور قوية


حسنًا ، هذا سهل من الناحية النظرية - فقط لا تتصرف كإنسان. ولكن كما نعلم جميعًا ، قول ذلك أسهل من فعله. لذا دع الكمبيوتر يقوم بذلك نيابةً عنك ، واستخدم مولد كلمات مرور قويًا. هذا يضمن أن كلمة مرورك ليست قوية من الناحية الحسابية فحسب ، بل إنها آمنة من التخمين القائم على السلوك. بالطبع ، لا يوجد ضمان بنسبة 100٪ أنه حتى سلسلة عشوائية من الأحرف لا يمكن تخمينها (أو أنك لن تحصل على برامج ضارة تسجل ضغطات المفاتيح ، أو تسرق كلمات المرور المحفوظة في متصفحك) ، لذا فهي أيضًا مفيدة فكرة أن يكون لديك كلمات مرور عشوائية مختلفة لكل حساب. حتى تذكر سلسلة عشوائية طويلة أمر صعب ، لذا فإن أفضل طريقة لتنفيذ ذلك هي بمساعدة مدير كلمات المرور مثل LastPass.
ومع ذلك ، يعد تغيير العادات أمرًا صعبًا ، ومن الأفضل التحسين بدلاً من عدم القيام بأي شيء ، لذلك إذا كان عليك الاستمرار في ابتكار كلمات المرور الخاصة بك ، فحاول القيام بعكس ما قد يفعله الإنسان:
استخدم الكلمات لتكوين عبارات لا معنى لها ("parkinglot-bathtub-arboretum")
ضع الأحرف الكبيرة عشوائيًا أو في منتصف العبارة ("parkingLot-bathtub-ARBORetum")
استخدم أرقامًا غير متسلسلة ومجموعة كبيرة من الرموز ("parkingLot٪ bath395tub& ARBORetum")
لا تستخدم أي معلومات تعريف عنك أو عن الموقع / الخدمة.
تأكد من أن كلمة مرورك ليست موجودة بالفعل في قاموس تكسير.
إذا كنت مسؤول نظام أو مطور برامج ، ففكر في استخدام خدمات فحص بيانات الاعتماد التي تتحقق من جميع المستخدمين ضد الحسابات وكلمات المرور المعروفة المخترقة ، وتحديث قواعد بياناتهم باستمرار حيث يتم اختراق المزيد من كلمات المرور أو تسريبها في عمليات الكشف عن البيانات.

التعليقات ( 0 )
الرجاء تسجيل الدخول لتتمكن من التعليق
مقال بواسطة

المقالات

2

متابعين

5

متابعهم

3

مقالات مشابة