مولد Hash bcrypt
إنشاء بصمة
الأعلى = أبطأ وأكثر أمانًا. 12 قيمة افتراضية جيدة.
بين حين وآخر يكون لديك hash bcrypt من نسخة احتياطية قديمة وكلمة مرور نصية، وتحتاج معرفة هل يتطابقان. أو لديك كلمة مرور وتريد hash الذي سينتجه عامل cost معين. تفعل هذه الأداة الأمرين: اكتب كلمة مرور فتولد hash جديدا، أو الصق hash ومرشحا فتخبرك هل نجح التحقق، باستخدام نفس المقارنة ثابتة الزمن التي يستخدمها فحص تسجيل الدخول في الإنتاج.
توليد bcrypt أو التحقق منه
-
1
اختر وضعا
ولّد hash جديدا من كلمة مرور، أو تحقق من كلمة مرور مقابل hash موجود من نوع `$2a$` / `$2b$` / `$2y$`.
-
2
للتوليد: أدخل النص وcost
Cost من 4 إلى 13؛ 10-12 طبيعي. ينشأ salt عشوائي من 16 بايت لكل hash.
-
3
للتحقق: الصق hash والنص
تستخرج الأداة salt وcost من hash وتعيد تجزئة النص بنفس المعاملات.
-
4
اقرأ النتيجة
وضع التوليد ينسخ hash بطول 60 محرفا؛ ووضع التحقق يعيد تطابقا أخضر أو عدم تطابق أحمر.
داخل وضع التحقق
مع hash مخزن مثل:
$2b$12$mE2n5YqWjKqT9tXg.OQPoeeHZJ9hdSvOt5wFdRRQwl6yE1vWWY3z6
يقوم المتحقق بما يلي:
- يحلل version (
2b) وcost (12) وsalt (أول 22 محرفا بعد cost) وdigest (آخر 31 محرفا). - يعيد تشغيل bcrypt على النص المرشح باستخدام salt وcost المستخرجين.
- يقارن digest الناتج بالأصلي باستخدام مقارنة ثابتة الزمن.
المقارنة الناجحة تعطي true؛ وأي اختلاف يعطي false.
المقارنة ثابتة الزمن
مقارنة سلسلتين باستخدام == الساذج تعود فور اختلاف أول بايت، قناة توقيت جانبية قد تسرب hash رقما بعد رقم عبر عدد كاف من العينات. تستخدم فحوص كلمات المرور في الإنتاج (وهذه الأداة) مقارنة ثابتة الزمن تفحص كل بايت دائما، لذلك لا يعتمد زمن القرار على عدد البايتات الأولى المتطابقة.
حالات تشخيص شائعة
| العرض | السبب المرجح |
|---|---|
| يفشل التحقق وأنت متأكد من كلمة المرور | مسافات بيضاء لاحقة أو BOM في الإدخال. أزل الاثنين. |
يفشل التحقق مع version 2y |
بعض المكتبات لا تحب 2y؛ لكنه صالح ومتوافق. أعد التجزئة بـ 2b لاحقا. |
| Hash قصير جدا / مشوه | ليس hash من bcrypt. MD5 طوله 32 محرف hex، وSHA-1 طوله 40، وbcrypt طوله 60 مع فواصل $. |
| تحذير اختلاف cost | cost المخزن أدنى من الحد الأدنى لسياستك. أعد التجزئة عند أول تسجيل دخول ناجح. |
إعادة التجزئة عند تسجيل الدخول
أفضل ممارسة: عندما يسجل المستخدم دخوله بنجاح، افحص هل لدى hash المخزن cost أقل من سياستك الحالية. إذا كان كذلك، أعد تجزئة كلمة المرور بالتكلفة الجديدة وحدّث قاعدة البيانات. خلال بضعة أشهر ترفع مستوى قاعدة المستخدمين كلها دون مطالبة أحد بتغيير كلمة مروره.
ما لا تفعله الأداة
- التحقق المجمّع، مصممة لـ hash واحد في كل مرة.
- الكسر أو التخمين الشامل، هجمات القاموس أو rainbow-table خارج النطاق عمدا.
- استرجاع كلمة المرور الأصلية، bcrypt أحادي الاتجاه؛ إذا نسيت كلمة المرور فالمسار الوحيد هو إعادة التعيين.
الأسئلة الشائعة
تُرسل إلى خادمنا عبر اتصال مشفر، لأن التجزئة والتحقق يُحسبان هناك. لا تُخزن ولا تُسجل، ولا تُضاف أبدا إلى رابط الصفحة.
لأن salt يولد عشوائيا لكل hash. هذه هي الفكرة كلها، مستخدمان لهما كلمة المرور نفسها يحصلان على hashes مختلفة، مما يهزم جداول قوس قزح (rainbow tables).
نعم، هذا بالضبط ما يفعله وضع التحقق: الصق hash الذي لديك، والصق كلمة مرور مرشحة، فتؤكد الأداة التطابق أو تنفيه.
نعم. كل المتغيرات الحديثة تعمل معا، digest متوافق عبر الإصدارات؛ الاختلاف في الوسم فقط. بعض hashes $2$ القديمة من أنظمة حقبة 2000 قد تحتاج مكتبة بدعم صريح للصيغ القديمة.
أدوات ذات صلة
مولّد عبارات المرور
ولّد عبارة مرور سهلة التذكر من كلمات شائعة عشوائية، مع عدد كلمات وفاصل وأحرف كبيرة قابلة للضبط ورقم اختياري مُلحق.
مولّد مفاتيح PGP
أنشئ زوج مفاتيح OpenPGP مدرّعًا بنظام ASCII وشهادة إبطال باستخدام Curve25519 أو RSA 2048 أو RSA 4096.
شيفرة الأرقام إلى الحروف
حوّل الأرقام إلى حروف والعكس باستخدام شيفرة A=1، B=2 (A1Z26) للألغاز والأحاجي وإشارات غرف الهروب.
مولد مفاتيح برمجة التطبيقات العشوائي
أنشئ على الخادم مفاتيح API بطول 8–128 حرفًا بصيغة hex أو base64url أو أبجدية رقمية، أو أنشئ UUIDv4.
مولّد MD5
أنشئ قيمة تجزئة MD5 من أي نص أو ملف، بطول 128 بت وبصيغة سداسية عشرية، ويُحسب كل ذلك بالكامل داخل متصفحك.
مولد JWT
قم بتوليد وثائق التوقيع الرقمية الموقعة (JWT) التي تحتوي على رأس مخصص، ومطالب حمل البيانات، وطريقة توقيع باستخدام HMAC أو RSA، بالإضافة إلى قيود على مدة الصلاحية والجمهور المستهدف، وذلك لأغراض الاختبار.
الأداة متاحة بلغات أخرى
- Generador de Hash bcrypt [ES]
- Trình tạo hash bcrypt [VI]
- bcrypt 해시 생성기 [KO]
- Generator Hash bcrypt [ID]
- Generator hashy bcrypt [PL]
- Générateur de hachage bcrypt [FR]
- Gerador de Hash bcrypt [PT]
- bcrypt-Hash-Generator [DE]
- bcrypt Hashジェネレーター [JA]
- bcrypt-hashgenerator [NL]
- bcrypt-hashgenerator [SV]
- ตัวสร้าง bcrypt Hash [TH]
- bcrypt Hash Generator [EN]
- Generatore di hash bcrypt [IT]
- Генератор bcrypt-хешей [RU]
- bcrypt Hash Oluşturucu [TR]
- bcrypt 哈希生成器 [ZH]