اذهب إلى المحتوى

السؤال

نشر (معدل)

كلمة السر تخزن بقاعدة البيانات مشفره باستعمال التشفير التالي:
   

            'password' => Hash::make($input['password']),

وعند الحصول على كلمة السر من قاعدة البيانات كيف نفك تشفيرها لمقارنتها بكلمة مرور مدخله من طرف المستخدم لإعادة التأكيد.

تم التعديل في بواسطة Hassan Hedr
توضيح العنوان

Recommended Posts

  • 1
نشر

عملية التقطيع أو Hashing هي عملية تحويل قيمة إلى أخرى بنفس الطريقة دومًا، لكن دون إمكانية الرجوع من النتيجة إلى القيمة الأصل، لذا نصفها بأنها باتجاه واحد فقط، يفيد ذلك في التحقق من المساواة بين القيم دون الحاجة لتخزين القيمة الأصلية، فقط تخزين القيمة المقطّعة، ولاحقًا يمكنك التأكد من مطابقة قيمة ما مع القيمة المخزنة لديك بتمريرها على نفس خوارزمية التقطيع ومقارنة تساوي النتيجتين،

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

password-hashing-unsalted.png

يمكنك الاستفادة من قراءة المقالات التالية:

 

  • 0
نشر (معدل)

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

ولذلك نقوم بإستخدام الدالة check للتاكد من ان كلمة المرور مطابقة للقيمة المشفرة وهذا الكود التالي يوضح الطريقة .

if (Hash::check('password', $hashedPassword)) {
    // الكود المنفذ إن تم التطابق
}

أول معامل للدالة هو كلمة المرور المدخلة من المستخدم و ثاني معامل هو القيمة المشفرة في قاعدة البيانات . والدالة تقوم بمقارنة المعاملين وإن كان هناك تطابق فسوف يتم تنفيذ الكود بداخل if .

تم التعديل في بواسطة محمد عاطف11

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...