انتقل إلى محتوى الدرس

Hashing Passwords With Hash Facade تجزئة كلمات المرور عبر Hash

فهم معمارية الحراس ومزودي المصادقة وتأمين كلمات المرور بالتجزئة عبر Hash::make وتشفير البيانات الحساسة بـ Crypt.
1 صفوف تعليمية
إطار العمل Laravel
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

يُمنع تخزين كلمات المرور كنص صريح أو بتشفير قابل للعكس؛ وبدلاً من ذلك يوفر Laravel واجهة Hash لتوليد تجزئة أحادية الاتجاه بخوارزمية Bcrypt أو Argon2. تولد دالة Hash::make بصمة مملحة عشوائياً، بينما تتحقق دالة Hash::check بأمان من تطابق كلمة المرور المدخلة مع البصمة المخزنة.

  • توليد البصمة (Hash::make): تنتج تجزئة مملحة فريدة في كل مرة حتى لو تشابهت كلمتا مرور لمستخدمين مختلفين.
  • فحص التطابق (Hash::check): تقارن النص المدخل بالبصمة المخزنة بزمن ثابت يحمي من هجمات قياس التوقيت.
  • فحص الترقية (needsRehash): تكشف ما إذا كانت البصمة القديمة تحتاج إعادة تجزئة بعد زيادة جولات التكلفة.
PHP
use Illuminate\Support\Facades\Hash;

$hashed = Hash::make($request->input('password'));

if (Hash::check($plainInput, $user->password)) {
    // Password verified!
}