شرح صفوف ومحتوى الفقرة
كيف يحفظ خادم الواجهة الخلفية كلمات مرور المستخدمين داخل قاعدة البيانات؟ يُمنع منعاً باتاً حفظ كلمات المرور كنص صريح مقروء ()! فلو خزّن الموقع كلمة مرورك كما هي () وتسربت نسخة من قاعدة البيانات، لانكشفت حسابات جميع المستخدمين في لحظة واحدة.
بدلاً من ذلك، تحمي أطر العمل الخلفية الحديثة كلمات المرور تلقائياً عبر التجزئة أحادية الاتجاه والتمليح ():
- التجزئة أحادية الاتجاه (): عند إنشاء الحساب، يحوّل الخادم كلمة المرور عبر معادلة رياضية باتجاه واحد إلى بصمة رموز غير مفهومة ()؛ وعند تسجيل الدخول، يجزّئ الخادم الكلمة التي كتبتها ويقارن البصمتين دون أن يعرف أحد كلمة مرورك الأصلية.
- إضافة الملح العشوائي الفريد (): يدمج الخادم نصاً عشوائياً فريداً مع كلمة مرور كل مستخدم قبل تجزئتها؛ بحيث لو اختار مستخدمان نفس كلمة المرور بالضبط، تظهر بصمتاهما في قاعدة البيانات مختلفتين تماماً.
- خوارزميات كلمات المرور البطيئة عمداً ( و): لا تُستخدم خوارزميات الفحص السريعة مثل لكلمات المرور، بل تُستخدم خوارزميات مصممة خصيصاً لتكون بطيئة ومكلفة للمهاجم مثل bcrypt وArgon2 لمنع تجربة ملايين الكلمات في الثانية.