ما هو مولّد تجزئة Bcrypt؟

يُنشئ تجزئات كلمات مرور آمنة ومُملّحة باستخدام خوارزمية bcrypt. يمكنك تجزئة كلمات المرور لتخزينها في قواعد البيانات أو التحقق من التجزئات الموجودة مقابل النص الأصلي.

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

كيفية الاستخدام

  1. أدخل كلمة المرور أو السلسلة التي تريد تجزئتها واختر عامل التكلفة (جولات الملح) بين 4 و18.
  2. انقر على توليد لإنشاء تجزئة bcrypt. تُنتج عوامل التكلفة الأعلى تجزئات أكثر أماناً، لكنها تستغرق وقتاً أطول في الحساب.
  3. انسخ التجزئة المُولَّدة لاستخدامها في تطبيقك، أو استخدم تبويب التحقق للتحقق من كلمة مرور مقابل تجزئة موجودة.

متى تستخدم

  • تجزئة كلمات مرور المستخدمين الجدد قبل تخزينها في قاعدة البيانات.
  • اختبار تدفّق تسجيل الدخول مقابل تجزئة $2b$ موجودة مسبقاً.
  • اختيار معامل الكلفة بقياس زمن التجزئة على الجهاز المستهدف.

النتيجة

مطوّر خلفي يحتاج إلى تخزين كلمة مرور مستخدم بشكل آمن. يُدخل MySecurePass123 مع 12 جولة ملح ويحصل على سلسلة تجزئة $2b$ لتخزينها في قاعدة بيانات PostgreSQL.

الأسئلة الشائعة

ما معامل الكلفة المناسب لبيئة الإنتاج؟
على الخوادم الحديثة، 12 حد أدنى معتاد و14 يصبح معياراً. اضبط زمن التجزئة بين 200 و500 ميلي ثانية لكل عملية دخول. أقل من 100 ميلي ثانية ضعيف جداً، وأكثر من ثانية يُثقل على مستخدمي الأجهزة البطيئة.
لماذا تختلف قيمة التجزئة لنفس كلمة المرور في كل مرة؟
bcrypt يولّد ملحاً جديداً بحجم 16 بايت في كل استدعاء ويضمّنه داخل نص التجزئة ذاته. هذا هو القصد بالضبط: مستخدمان كلمتا مرورهما «letmein» ينتهيان بتجزئتين مختلفتين تماماً، فلا يمكن كسر قاعدة بيانات مسرّبة بجدول قوس قزح واحد.
هل هناك حد أقصى لطول كلمة المرور يجب الانتباه إليه؟
bcrypt يقطع المدخلات بصمت بعد 72 بايت. إذا كنت تقبل عبارات أطول، فاحسب SHA-256 أولاً ثم مرّر الناتج إلى bcrypt. أغلب التطبيقات تكتفي بحدّ إدخال بين 64 و72 حرفاً.
هل أستطيع التحقق من تجزئة وُلّدت بمكتبة bcrypt أخرى؟
نعم. البادئات $2a$ و$2b$ و$2y$ متوافقة بين تطبيقات PHP وNode وPython وRuby وGo وJava. الصق أي تجزئة من أحدها في تبويب التحقق وستطابق كلمة المرور الأصلية.
هل يجب الاستمرار باستخدام bcrypt في 2026 أم الانتقال إلى argon2؟
argon2id هو التوصية الحديثة، لكن bcrypt لا يزال آمناً ومدعوماً في كل مكان. إن كنت تصون نظاماً قائماً يستخدم bcrypt فلا حاجة للهجرة الفورية. للمشاريع الجديدة اختر argon2 مباشرة.

أدوات ذات صلة