Password Hashing
تجزئة كلمات المرور (تخزين آمن لبيانات الاعتماد)
عملية تحويل كلمة مرور نصية إلى قيمة تجزئة ثابتة الطول لا يمكن عكسها للتخزين، لضمان أنه حتى لو تم اختراق قاعدة البيانات، لا يمكن استرداد كلمات المرور الأصلية بسهولة.
التفاصيل التقنية
يجب أن تكون خوارزميات تجزئة كلمات المرور بطيئة عمداً لمقاومة هجمات القوة العمياء: bcrypt (1999، عامل عمل قابل للتعديل، ناتج 184 بت)، scrypt (2009، تتطلب ذاكرة كثيفة، تقاوم هجمات GPU)، وArgon2 (2015، الفائز في مسابقة تجزئة كلمات المرور، وقت/ذاكرة/توازي قابل للتكوين). يُدمج كل كلمة مرور مع ملح عشوائي فريد قبل التجزئة لمنع هجمات جدول قوس قزح. يضيف الفلفل (سر من جانب الخادم) حماية إضافية. التجزئات التشفيرية الخام (SHA-256) غير مناسبة لأنها مصممة لتكون سريعة. يوصي OWASP بـ Argon2id كخيار أساسي.
مثال
```
Password hashing comparison:
bcrypt: $2b$12$salt22chars..hash31chars..
Cost factor 12 → ~250ms per hash
argon2id: $argon2id$v=19$m=65536,t=3,p=4$salt$hash
Memory: 64MB, Iterations: 3, Parallelism: 4
Never use: MD5, SHA-256 alone (too fast → brute-forceable)
```