"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > هل يؤثر الملح الذي تم إنشاؤه بشكل عشوائي على التحقق من كلمة المرور باستخدام bcrypt؟

هل يؤثر الملح الذي تم إنشاؤه بشكل عشوائي على التحقق من كلمة المرور باستخدام bcrypt؟

تم النشر بتاريخ 2024-11-10
تصفح:634

Does Randomly Generated Salt Affect Password Verification with bcrypt?

bcrypt والأملاح المولدة عشوائيًا

الخلفية

bcrypt هي خوارزمية تجزئة كلمة المرور التي تستخدم التمليح لتعزيز الأمان. يتضمن التمليح دمج بيانات عشوائية في تجزئة كلمة المرور، مما يضمن أنه حتى كلمات المرور المتطابقة ستنتج نتائج تجزئة مختلفة.

توليد الملح والتجزئة

تتضمن فئة PHP المقدمة وظيفة تسمى genSalt () التي تولد ملح عشوائي باستخدام الدالة openssl_random_pseudo_bytes() . يتم بعد ذلك استخدام هذا الملح كجزء من عملية تجزئة bcrypt في وظيفة genHash().

تأخذ وظيفة genHash() كلمة مرور وتجمعها مع الملح الذي تم إنشاؤه عشوائيًا. التجزئة الناتجة عبارة عن مزيج من كلمة المرور الأصلية والملح والبادئة الخاصة بالخوارزمية ($2y$) التي تشير إلى خوارزمية bcrypt ومعلماتها (على سبيل المثال، عامل عبء العمل).

التحقق من كلمة المرور

للتحقق من كلمة المرور، تقوم وظيفة التحقق () المقدمة بمقارنة كلمة المرور المدخلة مع التجزئة المخزنة. يقوم بذلك عن طريق ربط كلمة المرور المقدمة مع التجزئة المخزنة واستخدام وظيفة crypt() لتجزئتها مرة أخرى.

فهم منطق مقارنة التجزئة

المفتاح لفهم سبب الملح الذي تم إنشاؤه عشوائيًا لا يؤثر على التحقق من كلمة المرور هو فحص تنسيق التجزئة المخزنة. يتكون التجزئة من جزأين رئيسيين:

    بادئة الخوارزمية ($2y$)، وعامل عبء العمل (على سبيل المثال، 10)، والملح (على سبيل المثال، abcdefg...)
  1. كلمة المرور المجزأة
عندما تقوم وظيفة التحقق () بتجزئة كلمة المرور المقدمة مع التجزئة المخزنة، فإنها تستخدم فقط الجزء الملح كمدخل لها. وهذا يضمن دمج الملح في عملية التحقق.

الاستنتاج

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

بيان الافراج أعيد طبع هذه المقالة على: 1729415415 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3