ما هو مولد Bcrypt؟
يقوم مولد bcrypt بتحويل كلمة مرور عادية إلى تجزئة bcrypt: سلسلة مكونة من 60 حرفًا تقوم بتخزين كلمة المرور بأمان دون الاحتفاظ بكلمة المرور نفسها. Bcrypt هي وظيفة تجزئة كلمة المرور صممها Niels Provos وDavid Mazieres في عام 1999، وهي مبنية على تشفير Blowfish، ولا تزال الخيار الافتراضي في أطر عمل مثل Laravel وSpring Security وDjango (كواحدة من العديد من التجزئة المدعومة). تقوم هذه الأداة بإنشاء تجزئة من أي كلمة مرور، وفي وضع التحقق، تتحقق مما إذا كانت كلمة المرور تتطابق مع التجزئة الموجودة لديك بالفعل.
يقوم Bcrypt بأمرين لا يقوم بهما SHA-256 الخام. فهو يمتص كل تجزئة تحتوي على 16 بايت عشوائي مخبوز في الإخراج، لذلك يحصل مستخدمان لهما نفس كلمة المرور على تجزئات مختلفة وتكون جداول قوس قزح المحسوبة مسبقًا عديمة الفائدة. وهو بطيء عمدًا: يتحكم عامل التكلفة من 4 إلى 31 في عدد جولات توسيع المفاتيح التي يتم تشغيلها، مما يضاعف العمل مع كل خطوة. هذا البطء هو بيت القصيد. تتيح التجزئة السريعة للمهاجم الذي لديه قاعدة بيانات مسربة تجربة مليارات التخمينات في الثانية على وحدة معالجة الرسومات؛ تستغرق تجزئة cost-12 bcrypt خمس ثانية أو نحو ذلك من وقت وحدة المعالجة المركزية، مما يؤدي إلى تقييد المهاجم بعدد قليل من التخمينات في الثانية لكل نواة، وهو ما يمنع قاعدة البيانات المسروقة من التحول إلى قائمة كلمات مرور النص العادي بين عشية وضحاها.
تنسيق الإخراج يصف نفسه بنفسه. تجزئة مثل $2b$12$R9h/cIPz0gi.URNNX3kh2OPST9/PgBkqquzi.Ss7KIUgO2t0jWMUW تحتوي على أربعة حقول مفصولة بعلامات الدولار: الإصدار (2b)، والتكلفة (12)، ثم ملح Base64 مكون من 22 حرفًا متبوعًا بملخص مكون من 31 حرفًا. نظرًا لأن الملح والتكلفة ينتقلان داخل التجزئة، فإن التحقق لا يحتاج إلا إلى كلمة المرور وسلسلة التجزئة، وهو بالضبط ما يستخدمه وضع التحقق هنا.
كل شيء يعمل من جانب العميل في متصفحك. كلمة المرور التي تكتبها، والتجزئة التي تلصقها، والملح الذي يتم إنشاؤه لا يترك علامة التبويب أبدًا، ولا يضغط على أي خادم، ولا يهبط في أي سجل. تعرض لوحة الشبكة الخاصة بأدوات المطور الخاصة بك أن الطلبات الوحيدة هي فحص الاستخدام وسجل الاستخدام، اللذين يحملان إعداد التكلفة ولكن لا يحملان كلمة المرور أو التجزئة أبدًا. يتم تنفيذ خوارزمية bcrypt في TypeScript خالص، لذا تعمل الأداة أيضًا دون اتصال بالإنترنت بمجرد تحميل الصفحة. الإخراج متوافق مع OpenBSD، وPHP Wordway_hash (PASSWORD_BCRYPT)، ومكتبات Node bcrypt، وأدوات التحقق bcrypt في كل إطار عمل رئيسي، لذلك يتم التحقق من صحة التجزئة التي تم إنشاؤها هنا في تطبيقك والعكس صحيح.
الطريقة السريعة لتجربة مولد تجزئة bcrypt هي العينة. في الإنشاء، اضغط على تحميل العينة لملء العنصر الأساسي الصحيح لبطارية الحصان، واترك عامل التكلفة عند 10، ثم اضغط على إنشاء تجزئة. تحصل على سلسلة مكونة من 60 حرفًا تبدأ من $2b$10$، والضغط على إنشاء تجزئة مرة أخرى يعطي سلسلة مختلفة، لأن الملح جديد في كل مرة. في التحقق، تملأ عينة التحميل التجزئة المخزنة ونفس كلمة المرور، والتحقق من تطابق التقارير (التكلفة 10). قم بتغيير الحرف الأول إلى الحرف C الكبير وسيبلغ عن عدم التطابق. تلك الرحلة ذهابًا وإيابًا هي ما يجب أن يثبته منشئ كلمات مرور bcrypt.
كيفية استخدام مولد Bcrypt؟
أدخل كلمة مرور
اكتب أو الصق كلمة المرور التي تريد تجزئةها. يستخدم Bcrypt أول 72 بايت من كلمة المرور المشفرة UTF-8، لذلك يتم اقتطاع أي شيء أطول؛ تحذرك الأداة عندما يحدث ذلك.
اختر عامل التكلفة
اختر تكلفة من 4 إلى 31 باستخدام شريط التمرير. كل خطوة تضاعف وقت التجزئة. التكلفة من 10 إلى 12 هي النطاق الشائع لأنظمة تسجيل الدخول للإنتاج في العشرينيات؛ التكاليف المرتفعة أكثر مقاومة للتشقق ولكنها أبطأ في كل تسجيل دخول مشروع أيضًا.
توليد التجزئة
انقر فوق إنشاء. يتم إنشاء ملح عشوائي جديد بحجم 16 بايت ويتم حساب تجزئة bcrypt في متصفحك. نظرًا لأن الملح عشوائي، فإن تجزئة نفس كلمة المرور مرة أخرى تنتج تجزئة مختلفة، وهو أمر متوقع وصحيح.
انسخه، أو قم بالتبديل للتحقق
انسخ التجزئة المكونة من 60 حرفًا في جدول المستخدم أو التكوين الخاص بك. للتحقق من كلمة المرور مقابل تجزئة موجودة، قم بالتبديل إلى وضع التحقق، والصق التجزئة وكلمة المرور المرشحة، وستطابق تقارير الأداة أو لا تتطابق باستخدام التكلفة والملح المضمنين في التجزئة.
الميزات الرئيسية
إنشاء والتحقق
قم بتجزئة كلمة مرور جديدة أو تحقق من كلمة المرور مقابل تجزئة bcrypt موجودة، وكلاهما في أداة واحدة
عامل التكلفة القابل للتعديل
شريط تمرير من التكلفة 4 إلى 31 مع تقدير مباشر لكيفية نمو العمل أثناء رفعه
الملح العشوائي في كل مرة
يتم إنشاء ملح قوي مشفرًا بحجم 16 بايت لكل تجزئة باستخدام Web Crypto API
إخراج متوافق مع المعايير
ينتج تنسيق $2b$ الذي يقبله كل من OpenBSD وPHP Wordword_hash وLaravel وNode bcrypt
Frequently Asked Questions
Related Tools
Hash Generator
Generate MD5, SHA-1, SHA-256, SHA-384, and SHA-512 hashes from any text
JWT Decoder
Decode JWT headers and payloads, inspect claims, and check token expiry
Password Generator
Generate strong, random passwords with custom character sets and strength analysis
Password Strength Checker
Test how strong a password is with an entropy-based strength meter, estimated crack times, and specific suggestions to make it harder to guess - all processed privately in your browser.
Comments
0 comments
No comments yet. Be the first to share your thoughts!