البرمجة

كيفية استخدام password_hash في PHP

عند استخدام password_hash في PHP 7، لا تحتاج إلى تحديد ملح (salt) يدويًا، لأن الدالة تقوم تلقائيًا بإنشاء ملح فريد لكل كلمة مرور. هذا يعني أنه عند تشفير كلمة مرور معينة، ستحصل دائمًا على نفس الكود المشفر إذا استخدمت نفس الكلمة المرورية ونفس خيارات التشفير.

ومع ذلك، إذا كنت تريد استخدام ملح مخصص، يمكنك استخدام الدالة password_hash مع الخيار salt. هناك خياران ممكنان:

  1. يمكنك توليد ملح عشوائي باستخدام دالة openssl_random_pseudo_bytes واستخدامه كملح مع الدالة password_hash:

    php
    $salt = openssl_random_pseudo_bytes(16); // 16 bytes for the salt $hashed_password = password_hash('i=badatphp', PASSWORD_BCRYPT, ['salt' => $salt, 'cost' => 10]);
  2. يمكنك أيضًا استخدام الدالة password_hash مع الخيار salt المحدد مسبقًا:

    php
    $salt = 'your_custom_salt_here'; $hashed_password = password_hash('i=badatphp', PASSWORD_BCRYPT, ['salt' => $salt, 'cost' => 10]);

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

المزيد من المعلومات

عند استخدام password_hash في PHP، يتم إنشاء ملح عشوائي تلقائيًا إذا لم يتم توفير ملح محدد. هذا يعني أنه في كل مرة تشفير فيها كلمة مرور معينة باستخدام password_hash، ستحصل على نفس الناتج إذا استخدمت نفس الكلمة المرورية ونفس خيارات التشفير، حتى إذا كانت الدالة تشفير مرة أخرى في نفس السياق.

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

يمكن استخدام الدالة password_verify للتحقق من أن كلمة المرور المدخلة من قبل المستخدم تتطابق مع الكلمة المشفرة. على سبيل المثال:

php
$hashed_password = '$2y$10$R0lXQzc4UW9TbThEb1R2c.y8tRbBc4w.yVajTV7y95OqQOogWLEr2'; // هذا هو الناتج الذي تم إنشاؤه باستخدام password_hash $user_input_password = 'i=badatphp'; // كلمة المرور التي يدخلها المستخدم if (password_verify($user_input_password, $hashed_password)) { echo 'تطابقت الكلمة المرورية'; } else { echo 'لم تتطابق الكلمة المرورية'; }

هذا يتيح لك التحقق من صحة كلمة المرور المدخلة دون الحاجة إلى الكشف عن الكلمة المرورية الحقيقية.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر