4 থেকে 14 কস্টে bcrypt দিয়ে পাসওয়ার্ড হ্যাশ করুন, অথবা হ্যাশের সঙ্গে পাসওয়ার্ড মিলিয়ে দেখুন
আপনার ব্রাউজারে চলে। আপনি যা লেখেন তা কোথাও পাঠানো হয় না।Bcrypt ইচ্ছা করে ধীর, আর সেটাই চুরি যাওয়া পাসওয়ার্ডের ডেটাবেস ভাঙা কঠিন করে। কস্ট সেটিং প্রতি ধাপে কাজ দ্বিগুণ করে, এখানে 4 থেকে 14। একটি পাসওয়ার্ড হ্যাশ করুন, অথবা বিদ্যমান হ্যাশের সঙ্গে মিলিয়ে দেখুন। সবকিছু লোকালি চলে, তাই কোনো পাসওয়ার্ড পাঠানো হয় না।
এই পৃষ্ঠাটি ইংরেজি মূল লেখা থেকে যন্ত্রের সাহায্যে অনুবাদ করা হয়েছে। এই অনুবাদটি এখনও কোনো মানুষ পর্যালোচনা করেননি, তাই ইংরেজি সংস্করণটিকেই নির্ভরযোগ্য ধরুন। ইংরেজি মূল লেখাটি পড়ুন
হ্যাশ ট্যাবে পাসওয়ার্ড বা টেক্সট ঘরে পাসওয়ার্ড লিখুন এবং কস্ট ফ্যাক্টর ঠিক করুন; সাধারণত 10 থেকে 12।
হ্যাশ চাপুন এবং কপি বোতাম দিয়ে নতুন $2b$ হ্যাশটি কপি করুন।
পরে পাসওয়ার্ড যাচাই করতে যাচাই ট্যাব খুলে bcrypt হ্যাশ ঘরে হ্যাশটি পেস্ট করুন।
পাসওয়ার্ড লিখে যাচাই চাপুন; ফলাফলে মিলেছে বা মেলেনি দেখাবে।
এই bcrypt হ্যাশ জেনারেটর 4 থেকে 14 কস্টে একটি পাসওয়ার্ডকে সল্টযুক্ত bcrypt হ্যাশে পরিণত করে, এবং একটি পাসওয়ার্ড বিদ্যমান হ্যাশের সঙ্গে মেলে কি না তা যাচাই করে। প্রতিটি হ্যাশকে তার অংশে ভাগ করা হয়, অর্থাৎ ভার্সন, কস্ট, 22 অক্ষরের সল্ট আর 31 অক্ষরের হ্যাশ, যাতে আপনি দেখতে পান স্ট্রিংটি আসলে কী রাখে, সঙ্গে হিসাবে কত সময় লেগেছে।
ডেভেলপাররা এটি ব্যবহার করেন সিড ডেটা বা টেস্টের জন্য একটি জানা অ্যাডমিন পাসওয়ার্ড তৈরি করতে, ডেটাবেসের কোনো হ্যাশ সত্যিই ব্যবহারকারীর বলা পাসওয়ার্ডের কি না তা নিশ্চিত করতে, আর সাধারণ হার্ডওয়্যারে প্রতিটি ধাপে কত সময় লাগে দেখে কস্ট ফ্যাক্টর বেছে নিতে। এটি PHP ($2y$) ও পুরোনো লাইব্রেরির ($2a$) হ্যাশও পড়ে।
হ্যাশিং চলে একটি Web Worker-এ, অর্থাৎ আপনার ব্রাউজারের পটভূমির একটি থ্রেডে, bcryptjs লাইব্রেরি দিয়ে, তাই কস্ট 14-এও পেজটি সাড়া দেয়। কিছুই আপলোড হয় না। পাসওয়ার্ড ও হ্যাশ কখনো লগ বা সংরক্ষণ করা হয় না; কেবল আপনার বেছে নেওয়া কস্ট মনে রাখা হয়। এখানকার সময় bcryptjs ব্যবহারকারী একটি Node.js সার্ভারের কাছাকাছি, আর নেটিভ bcrypt লাইব্রেরি দুই থেকে তিন গুণ দ্রুত।
কস্টের প্রতিটি ধাপ কাজ দ্বিগুণ করে। ল্যাপটপে কস্ট 10-এ এক সেকেন্ডের দশ ভাগের এক থেকে পাঁচ ভাগের এক ভাগ লাগে; কস্ট 14 ষোলো গুণ ধীর, যা আপনার সার্ভারের প্রতিটি লগইনে টের পাওয়া যায়। বেশিরভাগ সিস্টেম 10 থেকে 12 ব্যবহার করে। bcrypt পাসওয়ার্ডের কেবল প্রথম 72 বাইট পড়ে, আর আপনারটি লম্বা হলে টুলটি সতর্ক করে।
সম্পর্কিত টুল: Password Strength Checker, Password Generator, HMAC Generator।
যাচাই ট্যাব খুলুন, $2a$, $2b$ বা $2y$ দিয়ে শুরু হওয়া পুরো 60 অক্ষরের হ্যাশটি পেস্ট করুন, পাসওয়ার্ড লিখে যাচাই চাপুন। টুলটি হ্যাশে রাখা সল্ট ও কস্ট দিয়ে পাসওয়ার্ড আবার হ্যাশ করে ফলাফল তুলনা করে। আপনি মিলেছে বা মেলেনি দেখবেন, সঙ্গে কত সময় লেগেছে।
না। bcrypt একমুখী ফাংশন, এনক্রিপশন নয়, তাই এমন কোনো কী নেই যা হ্যাশকে আবার পাসওয়ার্ডে ফেরায়। পাসওয়ার্ড খোঁজার একমাত্র উপায় হলো সম্ভাব্য পাসওয়ার্ড অনুমান করে প্রতিটি হ্যাশ করা, আর কস্ট ফ্যাক্টর তা ইচ্ছা করে ধীর করে। এই টুল একটি অনুমান যাচাই করতে পারে, হ্যাশ উল্টাতে পারে না।
প্রতিটি হ্যাশ নতুন একটি এলোমেলো 16 বাইটের সল্ট পায়, যা কস্টের পরের 22টি অক্ষরে রাখা থাকে। ভিন্ন সল্ট ভিন্ন হ্যাশ দেয়, ফলে আক্রমণকারীরা আগে থেকে হিসাব করা টেবিল দিয়ে একসঙ্গে অনেক ব্যবহারকারীর পাসওয়ার্ড ভাঙতে পারে না। তবু প্রতিটি হ্যাশই পাসওয়ার্ডের সঙ্গে যাচাই হয়, কারণ সল্ট হ্যাশের ভেতরেই থাকে।
আপনার লগইন সার্ভার যত বেশি সামলাতে পারে সেই কস্ট বেছে নিন, সাধারণত 10 থেকে 12। প্রতিটি ধাপ সময় দ্বিগুণ করে, তাই কস্ট 12 কস্ট 10-এর চেয়ে চার গুণ ধীর। প্রোডাকশন হার্ডওয়্যারে প্রতি হ্যাশে মোটামুটি সেকেন্ডের এক-চতুর্থাংশ লক্ষ্য রাখুন, আর যন্ত্র দ্রুত হওয়ার সঙ্গে সঙ্গে কয়েক বছর পরপর কস্ট বাড়ান।
এই তিনটি প্রিফিক্স ভার্সন চিহ্ন। $2a$ হলো মূল সংশোধিত ফরম্যাট, $2b$ হলো বর্তমান ফরম্যাট যা OpenBSD-র একটি দৈর্ঘ্যের বাগ ঠিক করে, আর $2y$ হলো PHP-তে সংশোধিত crypt_blowfish আউটপুটের নাম। সাধারণ পাসওয়ার্ডের জন্য তিনটিই একই অ্যালগরিদম এবং এখানে যাচাই হয়। $2x$ একটি পুরোনো ত্রুটিপূর্ণ লাইব্রেরির হ্যাশ চিহ্নিত করে, যা বদলানো উচিত।
না। হ্যাশিং ও যাচাই চলে আপনার ব্রাউজারের পটভূমির একটি থ্রেডে bcryptjs লাইব্রেরি দিয়ে। পাসওয়ার্ড ও হ্যাশ কোথাও পাঠানো, লগ বা সংরক্ষণ করা হয় না; এই ডিভাইসে কেবল আপনার বেছে নেওয়া কস্ট ফ্যাক্টর মনে রাখা হয়। ট্যাব বন্ধ করলে আপনার লেখা সবকিছু মুছে যায়।
এখনও আটকে আছেন? Bcrypt হ্যাশ ও যাচাই সম্পর্কে প্রশ্ন করুন আর যিনি জানেন তিনিই উত্তর দিতে পারেন। কোনো অ্যাকাউন্ট লাগবে না।