একটি শক্তিশালী ও অনন্য পাসওয়ার্ড হলো যেকোনো অনলাইন অ্যাকাউন্টের সবচেয়ে সহজ সুরক্ষা ব্যবস্থা — আর ঠিক যখন এটি প্রয়োজন হয়, তখন সময়টা প্রায়শই সুবিধাজনক থাকে না: যেমন, নতুন কোনো কাজের অ্যাকাউন্ট খোলা, অনলাইন ব্যাংকিংয়ে পাসওয়ার্ড রিসেট করা, নতুন রাউটার সেটআপ করা, অথবা দীর্ঘদিন ধরে ঝুলে থাকা পাসওয়ার্ড ম্যানেজারে (password manager) স্থানান্তর হওয়া। এই বিনামূল্যের পাসওয়ার্ড জেনারেটর এক ক্লিকেই একটি সম্পূর্ণ এলোমেলো পাসওয়ার্ড তৈরি করতে পারে। “দৈর্ঘ্য” বক্সে আপনার প্রয়োজনীয় আকার নির্ধারণ করুন, আপনি কোন কোন ধরণের অক্ষর অন্তর্ভুক্ত করতে চান তা বেছে নিন — বড় ও ছোট হাতের অক্ষর, সংখ্যা, সাধারণ চিহ্ন (%$#@!?&) এবং জটিল চিহ্ন (.,;[]()^-_=+{}:<>|) — এবং “তৈরি করুন” বাটনে ক্লিক করুন।
নিরাপত্তাই যেহেতু মূল উদ্দেশ্য, তাই এই জেনারেটরটি Web Crypto API (crypto.getRandomValues)-এর ওপর ভিত্তি করে তৈরি, যা TLS এবং অন্যান্য নিরাপত্তা-সংবেদনশীল কাজের মতোই ক্রিপ্টোগ্রাফিকভাবে সুরক্ষিত সিস্টেম র্যান্ডমনেস (randomness) থেকে মান সংগ্রহ করে। Math.random() বা অন্যান্য অনুমানযোগ্য সিউডো-র্যান্ডম ফাংশনের ওপর ভিত্তি করে তৈরি জেনারেটরগুলোর থেকে ভিন্ন, এটি এমনভাবে তৈরি যে একটি ফলাফল দেখে আক্রমণকারীরা পরেরটি সম্পর্কে কোনো ধারণাই পাবে না। পাসওয়ার্ড তৈরির পুরো প্রক্রিয়াটি আপনার ডিভাইসেই সম্পন্ন হয়: এটি কখনোই কোনো সার্ভারে পাঠানো হয় না, কোথাও লগ করা হয় না এবং আমাদের চোখেও পড়ে না — অর্থাৎ, মাঝপথে আড়ি পাতার বা আমাদের সংরক্ষণ করার মতো কিছুই নেই।
এই অপশনগুলো যেকোনো ওয়েবসাইটের পাসওয়ার্ড নীতিমালার সাথে মিল রাখা সহজ করে দেয়। এটি নিশ্চিত করা হয় যে আপনার নির্বাচিত প্রতিটি বিভাগ থেকে অন্তত একটি অক্ষর প্রতিটি পাসওয়ার্ডে থাকবে — যার ফলে “অবশ্যই একটি বড় হাতের অক্ষর এবং একটি সংখ্যা থাকতে হবে”-এর মতো শর্ত স্বয়ংক্রিয়ভাবেই পূরণ হয়ে যায় — এবং “প্রতিটি ধরনের অক্ষরের সংখ্যা প্রায় সমান রাখুন” ডিফল্টভাবে চালু থাকে, যাতে কোনো একটি নির্দিষ্ট বিভাগ অন্যান্য বিভাগগুলোর ওপর আধিপত্য বিস্তার করতে না পারে। সর্বোচ্চ সুরক্ষার জন্য চিহ্নগুলো চালু রাখুন, অথবা পুরনো সিস্টেমের জন্য সেগুলো বন্ধ রাখুন। “একই রকম দেখতে অক্ষর ছাড়া” সুইচটি সেই অক্ষরগুলোকে সরিয়ে দেয় যেগুলো মানুষ প্রায়শই ভুল পড়ে (Il1O0o)।
একের বেশি পাসওয়ার্ড বা কোনো অস্বাভাবিক নীতিমালার প্রয়োজন? একবারে একটি সম্পূর্ণ তালিকা তৈরি করতে “সংখ্যা” নির্ধারণ করুন — যেমন, একটি দলের জন্য অ্যাকাউন্ট তৈরি করার সময় ১০০টি পর্যন্ত পাসওয়ার্ড — আর যখন সংখ্যা ১-এর বেশি হয়, তখন “আউটপুট ফরম্যাট” ঠিক করে যে সেগুলো কীভাবে আলাদা করা হবে: “নতুন লাইন”, “স্পেস দিয়ে পৃথক” অথবা “কমা দ্বারা পৃথক”। বাকি সবকিছু “উন্নত অপশন”-এর অধীনে রয়েছে। একই অক্ষর একাধিকবার ব্যবহার করতে চাইলে “একই পাসওয়ার্ডে পুনরাবৃত্ত অক্ষর বাদ দিন” বন্ধ করে দিন। যদিও এই জেনারেটরে বাংলা বর্ণমালা সমর্থিত নয়, তবে এটি পোলিশ বা তুর্কির মতো ৩৫টি ভাষার নিজস্ব অক্ষর সমর্থন করে। সম্পূর্ণ নিয়ন্ত্রণের জন্য এবং এই টুল দ্বারা সমর্থিত নয় এমন অক্ষরগুলো যোগ করতে চাইলে, “অক্ষর সেট (প্রতি লাইনে একটি)” ব্যবহার করে আপনার নিজস্ব সেট নির্ধারণ করুন: প্রতিটি লাইন একটি আলাদা অক্ষর শ্রেণীতে পরিণত হয়, যেখান থেকে জেনারেটরটি অক্ষর বাছাই করে।
কেন এই পাসওয়ার্ড জেনারেটরটি বেছে নেবেন?
- শুধুমাত্র ব্রাউজারে তৈরি: পাসওয়ার্ড আপনার ডিভাইসেই তৈরি হয় এবং কোথাও পাঠানো হয় না
- Web Crypto API র্যান্ডমনেস: ক্রিপ্টোগ্রাফিকভাবে সুরক্ষিত, Math.random() নয়
- সীমাহীন ও বিনামূল্যের: কোনো সাইন-আপ ছাড়াই যত খুশি পাসওয়ার্ড তৈরি করুন
- প্রতি শ্রেণীর নিশ্চয়তা: আপনার নির্বাচিত প্রতিটি অক্ষরের ধরণ সবসময় উপস্থিত থাকে
- কাস্টম অক্ষর সেট: অস্বাভাবিক পাসওয়ার্ড নীতির জন্য নিজস্ব অক্ষর সেট
- এন্ট্রপি অনুমান: প্রতিটি পাসওয়ার্ডের শক্তি বিট হিসেবে দেখুন
- বিভ্রান্তিকর অক্ষর প্রতিরোধ: একই রকম দেখতে অক্ষরগুলো এড়িয়ে চলার সুরক্ষা
- নিজস্ব বর্ণমালা: ৩৫টি ভাষার স্থানীয় বর্ণমালা থেকে অক্ষর মেশানোর সুবিধা
- ব্যাচ মোড: এক ক্লিকেই পাসওয়ার্ডের পুরো তালিকা তৈরি করুন
র্যান্ডমনেস (randomness) ঠিক কীভাবে তৈরি হয়? আপনার অপারেটিং সিস্টেম ক্রমাগত এন্ট্রপি সংগ্রহ করে — যা হলো হার্ডওয়্যার ইভেন্টগুলো থেকে আসা অপ্রত্যাশিত নয়েজ — এবং তা একটি ক্রিপ্টোগ্রাফিকভাবে সুরক্ষিত র্যান্ডম নম্বর জেনারেটরে পাঠায়। আপনি যখন তৈরি করুন বাটনে ক্লিক করেন, তখন এই পেজের JavaScript, crypto.getRandomValues-এর মাধ্যমে ব্রাউজার থেকে র্যান্ডম মানগুলো অনুরোধ করে, আপনার বেছে নেওয়া অক্ষরের শ্রেণীগুলোর সাথে সেগুলোকে মেলায়, প্রতিটি শ্রেণীর প্রতিনিধিত্ব নিশ্চিত করে এবং পাসওয়ার্ডটি তৈরি করে। এখানে অনুমান করার মতো কোনো “সিড” (seed) নেই, পাসওয়ার্ড ভাঙার কোনো বিশেষ হার্ডওয়্যার যে শর্টকাট অ্যালগরিদম ব্যবহার করবে তারও কোনো উপায় নেই এবং কোনো ধাপেই নেটওয়ার্ক রিকোয়েস্ট হয় না — পুরো প্রক্রিয়াটি আপনার ডিভাইসেই চলে।
ফলাফলের নিচে আপনি বিট হিসেবে একটি এন্ট্রপি (entropy) অনুমান দেখতে পাবেন — যা পাসওয়ার্ডের শক্তির একটি পরিমাপ: সাধারণ অ্যাকাউন্টের জন্য ৬০+ বিট যুক্তিসঙ্গত, ৮০+ বিট শক্তিশালী এবং ১০০+ বিট আজকের হার্ডওয়্যার দিয়ে ব্রুট ফোর্স (brute force) আক্রমণের মাধ্যমে বের করা কার্যত অসম্ভব। তবে যেকোনো কিছুর চেয়ে দুটি অভ্যাস বেশি গুরুত্বপূর্ণ। প্রথমত, জটিলতার চেয়ে দৈর্ঘ্য বেশি কার্যকরী: গুরুত্বপূর্ণ যেকোনো অ্যাকাউন্টের জন্য ১৬+ অক্ষর ব্যবহার করুন — আরেকটি নতুন ধরণের চিহ্ন যোগ করার চেয়ে প্রতিটি অতিরিক্ত অক্ষর একজন আক্রমণকারীর কাজ বহুগুণ বাড়িয়ে দেয়। দ্বিতীয়ত, অনন্যতা: যখন কোনো ওয়েবসাইটে ডেটা ব্রিচ (data breach) হয়, তখন ফাঁস হওয়া লগইন তথ্যগুলো সাথে সাথেই অন্যান্য সেবায় ব্যবহার করে দেখা হয় — এই আক্রমণকে বলা হয় ক্রেডেনশিয়াল স্টাফিং (credential stuffing) — তাই একটি পাসওয়ার্ড পুনরায় ব্যবহার করলে একটি মাত্র ডেটা ব্রিচ পুরো অ্যাকাউন্ট হাতছাড়া হওয়ার কারণ হতে পারে। প্রতিটি অ্যাকাউন্টের জন্য আলাদা পাসওয়ার্ড তৈরি করুন, সেগুলো একটি পাসওয়ার্ড ম্যানেজারে সংরক্ষণ করুন এবং যেখানে সম্ভব সেখানেই টু-ফ্যাক্টর অথেনটিকেশন (2FA) চালু করুন। আর যদি কোনো সম্পূর্ণ এলোমেলো পাসওয়ার্ডে একই অক্ষর বারবার আসে বা পড়ার মতো ছোট কোনো অংশ তৈরি হয়, তবে অবাক হবেন না — সত্যিকারের র্যান্ডমনেস প্রায়শই এরকম বিন্যাস তৈরি করে এবং এগুলো পাসওয়ার্ডকে কোনোভাবেই দুর্বল করে না।