مولد التحقق من Bcrypt
تجزئة كلمات المرور باستخدام bcrypt والتحقق من الـ hashes مقابل النصوص العادية. اختر معامل التكلفة الخاص بك. يعمل بالكامل في متصفحك — لا تُرسل أي بيانات إلى أي خادم.
مولد التحقق من Bcrypt
التكلفة الأعلى = أكثر أماناً لكن أبطأ في الحساب.
حول bcrypt
Bcrypt هي دالة تجزئة كلمات المرور مصممة لتكون بطيئة وحسابياً مكلفة، مما يجعل الهجمات بالقوة الغاشمة غير عملية. بخلاف SHA-256، المصممة لتكون سريعة، فإن bcrypt تتباطأ عن قصد مع كل زيادة في معامل التكلفة. معامل التكلفة يضاعف الحمل الحسابي مع كل زيادة — التكلفة 11 أبطأ مرتين من التكلفة 10.
بيانك تبقى في متصفحك — لا تُرسل أي بيانات إلى أي خادم.
ما هو bcrypt؟
Bcrypt هي خوارزمية تجزئة كلمات مرور ابتكرها Niels Provos و David Mazières عام 1999. بخلاف دوال التجزئة التشفيرية الموجهة للاستخدام العام مثل SHA-256، تم تصميم bcrypt خصيصاً لتكون بطيئة وتتطلب موارد حسابية كثيفة، مما يجعلها مقاومة للهجمات بالقوة الغاشمة والهجمات بالقواميس. كما أنها تضمن ملح عشوائي تلقائياً، لذلك تنتج كلمات المرور المتطابقة hashes مختلفة في كل مرة.
اختيار معامل التكلفة
معامل التكلفة (المسمى أيضاً معامل العمل أو الجولات) يتحكم في مدى تكلفة التجزئة حسابياً. هو لوغاريتم أساسه 2 — التكلفة 10 تنفذ 2¹⁰ = 1024 تكراراً، التكلفة 11 تنفذ 2048، وهكذا. توصي OWASP بحد أدنى للتكلفة قدره 10، و 12 أو أعلى للتطبيقات الجديدة مع تحسن الأجهزة. استهدف وقت تجزئة 100-300 مللي ثانية في بيئة الإنتاج الخاصة بك.
كيفية الاستخدام
- حدد علامة التبويب Hash، وأدخل كلمة المرور بصيغة نصية عادية، واختر معامل التكلفة.
- انقر على إنشاء Hash — يظهر hash bcrypt في مربع الإخراج.
- انسخ hash لتخزينه في قاعدة البيانات الخاصة بك.
- للتحقق لاحقاً: انتقل إلى علامة التبويب التحقق، أدخل النص العادي وـ hash المخزن، ثم انقر على التحقق.
الأسئلة الشائعة
- هل يمكنني عكس hash bcrypt للحصول على كلمة المرور الأصلية؟
- لا. Bcrypt هي دالة تجزئة أحادية الاتجاه — من غير العملي حسابياً عكس hash bcrypt. الطريقة الوحيدة للتحقق من كلمة المرور هي تجزئة المرشح والمقارنة، وهذا بالضبط ما تفعله علامة التبويب التحقق.
- لماذا تنتج bcrypt hash مختلف في كل مرة لنفس الإدخال؟
- Bcrypt توليد ملح عشوائي بـ 128 بت تلقائياً لكل hash. يتم تضمين الملح في سلسلة hash (البادئة $2b$10$... تحتوي على كل من التكلفة والملح). هذا يعني أن hashes اثنين لنفس كلمة المرور ستبدو مختلفة لكن كليهما سيتحقق بشكل صحيح.
- ما هو الحد الأقصى لطول الإدخال لـ bcrypt؟
- Bcrypt تقطع الإدخال عند 72 بايت. إذا كانت كلمة المرور بصيغة نصية عادية أطول من 72 بايت (تقريباً 72 حرف ASCII، أقل للأحرف متعددة البايت)، يتم تجزئة أول 72 بايت فقط. بالنسبة لعبارات المرور الطويلة جداً، اعتبر التجزئة المسبقة باستخدام SHA-256 قبل bcrypt، أو استخدم Argon2 بدلاً منها.
- هل لا تزال bcrypt موصى بها أم يجب أن أستخدم Argon2؟
- Bcrypt تبقى خياراً قوياً وموسع الدعم لتجزئة كلمات المرور وآمنة للاستخدام. Argon2 (الفائز بمسابقة تجزئة كلمات المرور) هي التوصية الحديثة للأنظمة الجديدة، حيث أنها أيضاً صعبة الذاكرة، مما يجعل الهجمات المستندة إلى GPU أكثر تكلفة. كلاهما أفضل بكثير من استخدام SHA-256 أو MD5 الخام لكلمات المرور.