বিনামূল্যে কনভার্টার

Bcrypt পাসওয়ার্ড জেনারেটর

আপনার ব্রাউজারে তাৎক্ষণিকভাবে সুরক্ষিত bcrypt পাসওয়ার্ড হ্যাশ তৈরি করুন। কস্ট ফ্যাক্টর বেছে নিন এবং ক্লায়েন্ট-সাইডে হ্যাশ করুন — সম্পূর্ণ প্রাইভেট এবং বিনামূল্যে।

এই টুল সম্পর্কে

bcrypt হল একটি পাসওয়ার্ড-হ্যাশিং ফাংশন যা 1999 সালে নিলস প্রোভোস এবং ডেভিড মাজিয়েরেস দ্বারা ডিজাইন করা হয়েছিল, ব্লোফিশ সাইফার থেকে উদ্ভূত। SHA-256-এর মতো সাধারণ-উদ্দেশ্য হ্যাশ ফাংশনগুলির বিপরীতে, bcrypt ইচ্ছাকৃতভাবে ধীর - এবং কনফিগারযোগ্যভাবে ধীর, একটি খরচ প্যারামিটারের মাধ্যমে - যা একটি পাসওয়ার্ড হ্যাশারের প্রয়োজন ঠিক সেই সম্পত্তি। একটি দ্রুততর হ্যাশ ফাংশন আক্রমণকারীদের প্রতি সেকেন্ডে আরও বেশি প্রার্থীকে জবরদস্তি করতে দেয়; একটি ধীর এক তাদের সীমাবদ্ধ.

bcrypt স্বয়ংক্রিয়ভাবে প্রতি-পাসওয়ার্ড লবণকে অন্তর্ভুক্ত করে, পূর্বনির্ধারিত রেইনবো টেবিলের উপর ভিত্তি করে আক্রমণের একটি সম্পূর্ণ শ্রেণীকে নির্মূল করে। লবণ এবং খরচ পরামিতি bcrypt আউটপুটের অংশ হিসাবে সংরক্ষণ করা হয়, তাই যাচাইকরণের জন্য শুধুমাত্র সংরক্ষিত হ্যাশ এবং প্রার্থীর পাসওয়ার্ড প্রয়োজন - আলাদা লবণ ব্যবস্থাপনা নেই। মন্থরতা, লবণ, এবং স্বয়ংসম্পূর্ণ বিন্যাসের এই সংমিশ্রণটি বিক্রিপ্টকে দুই দশক ধরে ডিফল্ট পাসওয়ার্ড হ্যাশ এবং আজকে একটি শক্তিশালী পছন্দ করেছে।

আধুনিক বিকল্প বিদ্যমান। Argon2 2015 পাসওয়ার্ড হ্যাশিং প্রতিযোগিতা জিতেছে এবং সময়-কঠোরতা ছাড়াও মেমরি-হার্ডনেস অফার করে। স্ক্রিপ্ট অনুরূপ বৈশিষ্ট্য অফার করে। নতুন ডিজাইনের জন্য, Argon2id হল প্রস্তাবিত পছন্দ। bcrypt গ্রহণযোগ্য এবং ব্যাপকভাবে স্থাপন করা হয়, বিশেষ করে এমন পরিবেশে যেখানে Argon2 উপলব্ধ নয়।

হ্যাশ পাসওয়ার্ড কেন বিক্রিপ্ট দিয়ে

প্লেইনটেক্সট হিসাবে পাসওয়ার্ড সংরক্ষণ করা অসৎ আচরণ। এগুলিকে SHA-256-এর মতো দ্রুত হ্যাশের সাথে সংরক্ষণ করা আরও ভাল - আধুনিক GPU গুলি প্রতি সেকেন্ডে বিলিয়ন SHA-256 হ্যাশ গণনা করে, যে কোনও সাধারণ পাসওয়ার্ডের বিরুদ্ধে কয়েক ঘণ্টার মধ্যে ব্রুট-ফোর্স অ্যাটাক তৈরি করে৷ bcrypt-এর ইচ্ছাকৃত ধীরগতি অর্থনীতিকে বদলে দেয়: খরচ ফ্যাক্টর 12-এ, একজন আক্রমণকারী প্রার্থীর পাসওয়ার্ড প্রতি প্রায় 250 ms খরচ করে, যে কোনো অ-তুচ্ছ পাসওয়ার্ডের জন্য ব্রুট-ফোর্স অব্যবহারিক করে তোলে।

bcrypt-এর স্বয়ংক্রিয় প্রতি-পাসওয়ার্ড লবণও রেইনবো টেবিল আক্রমণকে পরাস্ত করে। একই পাসওয়ার্ডের সাথে দুইজন ব্যবহারকারী বিভিন্ন বিক্রিপ্ট হ্যাশ তৈরি করে কারণ তাদের লবণ ভিন্ন। পাসওয়ার্ড ডাটাবেসের সাথে আপোস করা আক্রমণকারীকে দ্রুত সাধারণ পাসওয়ার্ড বা প্রি-কম্পিউটেড-টেবিল হিট সনাক্ত করতে দেয় না।

কিভাবে ব্যবহার করবেন

একটি পাসওয়ার্ড টাইপ করুন, খরচ চয়ন করুন, হ্যাশ পান।

  1. পাসওয়ার্ড দিন: হ্যাশ করার জন্য পাসওয়ার্ড টাইপ করুন। টুলটি সম্পূর্ণরূপে আপনার ব্রাউজারে চলে; পাসওয়ার্ড কোথাও প্রেরণ করা হয় না.
  2. খরচ ফ্যাক্টর চয়ন করুন: ডিফল্ট হল 10, আধুনিক হার্ডওয়্যারে প্রায় 100 ms হ্যাশিং টাইম তৈরি করে৷ 12 নতুন অ্যাপ্লিকেশনের জন্য সুপারিশ করা হয় (250 ms)। উচ্চতর মান ধীরগতির যাচাইকরণের খরচে নিরাপত্তা বাড়ায়।
  3. তৈরি করুন: হ্যাশার একটি র্যান্ডম 16-বাইট লবণ তৈরি করে, bcrypt কী ডেরিভেশন চালায় এবং স্ট্যান্ডার্ড $2b$ বিন্যাসে একটি হ্যাশ তৈরি করে।
  4. হ্যাশ ব্যবহার করুন: আপনার পাসওয়ার্ড ডাটাবেসে সম্পূর্ণ আউটপুট ($2b$cost$saltAndHash) সংরক্ষণ করুন। যাচাইকরণ একই লাইব্রেরি ব্যবহার করে সঞ্চিত হ্যাশের সাথে প্রার্থীর তুলনা করে।

সাধারণ ব্যবহারের ক্ষেত্রে

প্রযুক্তিগত বিবরণ

bcrypt একটি পরিবর্তিত ব্লোফিশ সাইফারের কী-সেটআপ ফেজ ব্যবহার করে, 2^কস্ট বার পুনরাবৃত্তি করে। খরচের ফ্যাক্টরটি লগারিদমিক — খরচ 12 খরচ 11-এর চেয়ে দ্বিগুণ, খরচ 10-এর থেকে চারগুণ ধীর। এই লগারিদমিক স্কেলিং প্রশাসকদের সিস্টেমকে পুনরায় ডিজাইন না করেই হার্ডওয়্যারের উন্নতির সাথে সাথে সময়ের সাথে সাথে খরচ বাড়াতে দেয়।

আউটপুট ফর্ম্যাট হল $version$cost$saltAndHash যেখানে saltAndHash একটি কাস্টম বর্ণমালার সাথে বেস64-এনকোড করা হয়েছে। সংস্করণটি সাধারণত $2b$ (আধুনিক বৈকল্পিক যা wraparound বাগ সংশোধন করা হয়েছে) অথবা $2y$ (PHP-নির্দিষ্ট, সমতুল্য)। লবণ 16 বাইট; হ্যাশ হল 24 বাইট; তারা একসাথে কাস্টম-বেস64-এর 53টি অক্ষরে এনকোড করে।

সর্বাধিক ইনপুট দৈর্ঘ্য 72 বাইট (ব্লোফিশ কী দৈর্ঘ্য সীমা)। দীর্ঘতর পাসওয়ার্ডগুলি নিঃশব্দে কেটে ফেলা হয়, যা একটি দীর্ঘস্থায়ী বিক্রিপ্ট ব্যঙ্গ। সর্বোত্তম অভ্যাস হল পাসওয়ার্ডের দৈর্ঘ্য 72 বাইটে সীমিত করা বা বিক্রিপ্টের আগে দৈর্ঘ্য স্বাভাবিক করার জন্য SHA-256 দিয়ে প্রি-হ্যাশ করা।

সর্বোত্তম অনুশীলন

সচরাচর জিজ্ঞাসিত প্রশ্নাবলী

আমি কি উত্পন্ন আউটপুট কাস্টমাইজ করতে পারি?
হ্যাঁ। টুলটি আপনার নির্দিষ্ট চাহিদা অনুযায়ী আউটপুট তৈরি করতে বিভিন্ন কাস্টমাইজেশন বিকল্প প্রদান করে। জেনারেট করার আগে সেটিংস সামঞ্জস্য করুন, বা বিভিন্ন বিকল্পের সাথে পুনরায় তৈরি করুন।
উত্পন্ন বিষয়বস্তু ব্যবহার করার জন্য বিনামূল্যে?
হ্যাঁ। এই টুলের সাহায্যে আপনি যা কিছু তৈরি করেন তা ব্যক্তিগত, শিক্ষাগত বা বাণিজ্যিক উদ্দেশ্যে কোনো সীমাবদ্ধতা বা অ্যাট্রিবিউশন প্রয়োজনীয়তা ছাড়াই ব্যবহার করার জন্য আপনার।
এটি একটি অ্যাকাউন্ট প্রয়োজন?
না। টুলটি কোনো সাইন-আপ, কোনো ইমেল এবং কোনো নিবন্ধন ছাড়াই অবিলম্বে ব্যবহারের জন্য প্রস্তুত। শুধু পৃষ্ঠাটি খুলুন এবং তৈরি করা শুরু করুন।
আমার ইনপুট ডেটা কি ব্যক্তিগত রাখা হয়?
হ্যাঁ। সমস্ত প্রক্রিয়াকরণ আপনার ব্রাউজারে ঘটে। আপনার ইনপুট ডেটা এবং জেনারেটেড আউটপুট কখনই কোনো বাহ্যিক সার্ভারে পাঠানো হয় না।
আমি কি আমার নিজের লবণ যোগ করা উচিত?
না. bcrypt স্বয়ংক্রিয়ভাবে একটি এলোমেলো লবণ তৈরি করে এবং সংরক্ষণ করে। আপনার নিজের লবণ যোগ করা অপ্রয়োজনীয় এবং সূক্ষ্ম বাগ হতে পারে। লাইব্রেরির ডিফল্ট সল্ট জেনারেশন ব্যবহার করুন।
পাসওয়ার্ড একটি সার্ভারে পাঠানো হয়?
না। আপনার ব্রাউজারে বিক্রিপ্ট হ্যাশিং ঘটে। পাসওয়ার্ড কখনই আপনার ডিভাইস ছেড়ে যায় না।
কেন $2a$, $2b$, $2y$ ভেরিয়েন্ট আছে?
$2a$ হল আসল। $2b$ 2014 সালে আবিষ্কৃত একটি wraparound বাগ সংশোধন করে। $2y$ হল PHP-নির্দিষ্ট, কার্যকরীভাবে $2b$ এর সমতুল্য। নতুন সিস্টেম $2b$ হ্যাশ উত্পাদন করা উচিত.
আমি কি একটি উচ্চ-মূল্যের হ্যাশকে কম খরচে ডাউনগ্রেড করতে পারি?
না। হ্যাশ আউটপুটের অংশ হিসাবে খরচ অন্তর্ভুক্ত করে এবং যাচাইকরণের জন্য একই খরচ প্রয়োজন। খরচ পরিবর্তন করতে, পরবর্তী সফল লগইনে পুনরায় হ্যাশ করুন।