UTILS.
‎100%‎ داخل المتصفح
🔐

مولّد ومحقّق تجزئة Bcrypt

أنشئ تجزئة كلمة مرور bcrypt بعامل تكلفة قابل للاختيار، أو تحقّق من كلمة مرور نصية مقابل تجزئة $2b$ موجودة. يعمل بالكامل في متصفحك.

تُجزَّأ كلمات المرور 100% في متصفحك — لا يُرفَع أي شيء.

— يظهر المخرج هنا —

حول هذه الأداة

ينتج مولّد ومحقّق تجزئة Bcrypt ويفحص تجزئات كلمات مرور bcrypt دون إرسال كلمة مرورك إلى خادم قط. bcrypt، الذي صمّمه Provos وMazières عام 1999، يلفّ جدولة مفاتيح Eksblowfish في عامل عمل تكيّفي: يضبط معامل التكلفة 2^cost من جولات إعداد المفاتيح، فرفع التكلفة يجعل كل تخمين أبطأ أُسّياً على المهاجم مع بقائه رخيصاً لتسجيل دخول شرعي واحد. يقرأ وضع التوليد 16 بايت ملح عشوائية من crypto.getRandomValues في المتصفح، ويشغّل إعداد Eksblowfish عند التكلفة المختارة، ويشفّر ثابت "OrpheanBeholderScryDoubt" ذا الـ 192 بت 64 مرة، ويُصدِر سلسلة Modular Crypt Format القياسية $2b$NN$ + ملح base64 من 22 حرفاً + ملخّص base64 من 31 حرفاً.

تعمل الخوارزمية كبنية WebAssembly خالية من eval لـ bcrypt مُحمَّلة محلياً، فلا يُرفَع أي شيء وتعمل الأداة دون اتصال بمجرد تحميلها. لا يعتبر bcrypt سوى أول 72 بايت من كلمة المرور — تحذّرك الأداة عندما يتجاوز مدخلك ذلك الحد فلا تفاجأ أبداً بقصٍّ صامت. عامل التكلفة قابل للاختيار من 4 إلى 16 (الافتراضي 10)؛ وتضاعف كل خطوة العمل، فـ 12 أبطأ أربع مرات من 10.

يحلّل وضع التحقق البادئة $2b$/$2a$/$2y$ والتكلفة المكوّنة من رقمين والملح المضمّن من تجزئة موجودة، ويعيد حساب الملخّص بكلمة المرور المرشّحة، ويُبلِّغ عن التطابق أو عدمه. ولأن الملح والتكلفة يسافران داخل سلسلة التجزئة نفسها، فأنت لا تحتاج سوى كلمة المرور والتجزئة المخزَّنة لفحص تسجيل دخول. كل شيء يُحسَب داخل الصفحة — تُجزَّأ كلمات المرور 100% في متصفحك ولا يُرفَع أي شيء.

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

أي عامل تكلفة أختار؟
تضبط التكلفة 2^cost من جولات إعداد المفاتيح. 10 (الافتراضي) خط أساس شائع؛ و12 أبطأ أربع مرات وخيار عصري جيد لتسجيلات الدخول التفاعلية. التكاليف الأعلى تقاوم القوة الغاشمة أفضل لكنها تستغرق وقتاً أطول للحساب، فوازِن بين الأمان والتأخير الذي يمكن أن يتحمّله كل تسجيل دخول.
لماذا تُقصّ كلمة مروري الطويلة؟
لا يجزّئ bcrypt سوى أول 72 بايت من المدخل بحكم التصميم — وتُتجاهل البايتات بعد ذلك. تحذّرك الأداة عندما تتجاوز كلمة المرور 72 بايت UTF-8 لتعلم أن الذيل لا يسهم في التجزئة. للأسرار الأطول، جزّئها مسبقاً بـ SHA-256 قبل bcrypt.
هل يمكنني التحقق من تجزئة تبدأ بـ $2a$ أو $2y$؟
نعم. يقبل وضع التحقق البادئات $2a$ و$2b$ و$2y$، وهي متغيّرات قابلة للتبادل للخوارزمية نفسها. يقرأ التكلفة والملح من التجزئة، ويعيد الحساب بكلمة مرورك، ويُبلِّغ عمّا إذا كانا يتطابقان.
هل تُرسَل كلمة مروري إلى أي مكان؟
لا. تجري التجزئة والتحقق بالكامل في متصفحك عبر بنية WebAssembly محلية لـ bcrypt. لا تغادر كلمة المرور والملح والتجزئة جهازك أبداً، فيمكنك اختبار بيانات اعتماد حقيقية بأمان دون اتصال.

المزيد من الأدوات