ভাষা নির্বাচন করুন

ক্রিপ্টোগ্রাফিক সিউডো-র‍্যান্ডম নাম্বার জেনারেটর ভিত্তিক একটি নিরাপদ পাসওয়ার্ড জেনারেটর

এই গবেষণাপত্রে HMAC, CMAC এবং KMAC-ভিত্তিক PRNG ব্যবহার করে একটি নিরাপদ পাসওয়ার্ড জেনারেটর প্রস্তাব করা হয়েছে, যা NIST SP 800-90B এনট্রপি এবং IID পরীক্ষার মাধ্যমে যাচাই করা হয়েছে।
computationalcoin.com | PDF Size: 0.5 MB
রেটিং: 4.5/5
আপনার রেটিং
আপনি ইতিমধ্যে এই ডকুমেন্ট রেট করেছেন
PDF ডকুমেন্ট কভার - ক্রিপ্টোগ্রাফিক সিউডো-র‍্যান্ডম নাম্বার জেনারেটর ভিত্তিক একটি নিরাপদ পাসওয়ার্ড জেনারেটর

সূচিপত্র

1. ভূমিকা

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

এই গবেষণা ক্রিপ্টোগ্রাফিকভাবে নিরাপদ সিউডো-র‍্যান্ডম নাম্বার জেনারেটর (PRNG) ভিত্তিক একটি নিরাপদ পাসওয়ার্ড জেনারেটর প্রস্তাব করে। এটি কীড-হ্যাশ মেসেজ অথেন্টিকেশন কোড (HMAC), সাইফার-ভিত্তিক MAC (CMAC), অথবা KECCAK MAC (KMAC) ব্যবহার করে PRNG তৈরি করে নিরাপদ র‍্যান্ডম সংখ্যা তৈরি করে, যা পরে পাসওয়ার্ড তৈরিতে ব্যবহৃত হয়। উৎপন্ন র‍্যান্ডমনেস NIST SP 800-90B মানদণ্ড অনুযায়ী এনট্রপি এবং স্বাধীন ও অভিন্নভাবে বিতরণিত (IID) পরীক্ষার মাধ্যমে যাচাই করা হয়।

2. সাহিত্য পর্যালোচনা

2.1. লিনিয়ার কনগ্রুয়েন্সিয়াল জেনারেটর-ভিত্তিক PRNG

C এবং Java-এর মতো ভাষায় সাধারণভাবে ব্যবহৃত LCG-গুলি পুনরাবৃত্তি সম্পর্কের মাধ্যমে একটি ক্রম তৈরি করে: $f_i(k) \equiv a \times f_{i-1}(k) + c \ (\text{mod} \ m)$, যা $k$ দ্বারা সিডেড হয়। এগুলি অনিরাপদ কারণ অবস্থা বিপরীত করা যায়: $f_{i-1}(k) \equiv (f_i(k) - c) \times a^{-1} \ (\text{mod} \ m)$, যা সিড এবং সম্পূর্ণ ক্রম প্রকাশ করে দেয়।

2.2. নিরাপদ সিউডো-র‍্যান্ডম নাম্বার জেনারেটর

ক্রিপ্টোগ্রাফিক PRNG-গুলি এমনভাবে ডিজাইন করা হয়েছে যাতে আংশিক আউটপুট জানা থাকলেও এগুলি অনুমান করা অসম্ভব হয়।

2.2.1. HMAC-ভিত্তিক PRNG

নিরাপত্তা হ্যাশ ফাংশনের (যেমন, SHA2, SHA3) ওয়ান-ওয়ে বৈশিষ্ট্যের উপর নির্ভর করে। একটি কী $k$ এবং মেসেজ $M$-এর জন্য, HMAC হিসাব করা হয়: $r_{hmac}(k, M) = h((k \oplus opad) \ || \ h((k \oplus ipad) \ || \ M))$। দীর্ঘতর আউটপুটের জন্য একাধিক ব্লক তৈরি করতে কাউন্টার মোড ব্যবহার করা হয়।

2.2.2. CMAC-ভিত্তিক PRNG

নিরাপত্তা অ্যাডভান্সড এনক্রিপশন স্ট্যান্ডার্ড (AES) এর উপর ভিত্তি করে। এটি সাইফার ব্লক চেইনিং (CBC) মোডে কাজ করে। প্যাড করা মেসেজ প্রক্রিয়াকরণের পর চূড়ান্ত সাইফারটেক্সট ব্লক MAC/আউটপুট হিসেবে কাজ করে: $r_{cmac}(k, Split(M))$।

2.2.3. KMAC-ভিত্তিক PRNG

SHA-3 (KECCAK) হ্যাশ ফাংশনের উপর ভিত্তি করে, KMAC একটি পরিবর্তনশীল দৈর্ঘ্যের আউটপুট প্রদান করে এবং পোস্ট-কোয়ান্টাম ক্রিপ্টোগ্রাফির জন্য একটি শক্তিশালী প্রার্থী হিসেবে বিবেচিত হয়।

2.3. র‍্যান্ডমনেস যাচাই পদ্ধতি

NIST SP 800-90B এনট্রপি উৎস মূল্যায়নের পদ্ধতি প্রদান করে। এনট্রপি অনুমান অনুমানযোগ্যতা (মিন-এনট্রপি) পরিমাপ করে। IID পরীক্ষা পরীক্ষা করে যে ডেটা স্বাধীন এবং অভিন্নভাবে বিতরণিত কিনা, যা অনেক পরিসংখ্যানিক পরীক্ষার জন্য একটি মূল অনুমান। এগুলি পাস করা র‍্যান্ডমনেস উৎসের গুণমান যাচাই করে।

3. প্রস্তাবিত নিরাপদ পাসওয়ার্ড জেনারেটর

সিস্টেম আর্কিটেকচারে জড়িত: ১) ব্যবহারকারী ঐচ্ছিকভাবে একটি টু-বি-হ্যাশড মেসেজ (TBHM) প্রদান করে। ২) একটি ক্রিপ্টোগ্রাফিক PRNG (HMAC/CMAC/KMAC-ভিত্তিক) উচ্চ-এনট্রপি বিটস্ট্রিম তৈরি করতে TBHM (এবং একটি কী) ব্যবহার করে। ৩) এই বিটস্ট্রিমটি চূড়ান্ত পাসওয়ার্ড তৈরি করতে একটি ব্যবহারকারী-সংজ্ঞায়িত ক্যারেক্টার সেটে (যেমন, আলফানিউমেরিক + প্রতীক) একটি নির্দিষ্ট দৈর্ঘ্যে ম্যাপ করা হয়। নিরাপত্তা বিশ্লেষণ করা হয় AES-128 এবং AES-256 কী শক্তির বিপরীতে পাসওয়ার্ডের অনুসন্ধান স্থানের তুলনা করে।

4. পরীক্ষা এবং ফলাফল

4.1. পরীক্ষামূলক সেটআপ

তিন ধরনের PRNG (HMAC-SHA256, CMAC-AES-128, KMAC256) বাস্তবায়ন করা হয়েছে। পরীক্ষার জন্য র‍্যান্ডম বিটের বড় ক্রম তৈরি করা হয়েছে।

4.2. র‍্যান্ডমনেস যাচাই ফলাফল

মূল ফলাফল: প্রস্তাবিত তিনটি PRNG নির্মাণ (HMAC, CMAC, KMAC) NIST SP 800-90B অনুযায়ী এনট্রপি যাচাই এবং IID উভয় পরীক্ষাই সফলভাবে পাস করেছে। এটি অভিজ্ঞতামূলকভাবে প্রমাণ করে যে উৎপন্ন সংখ্যাগুলির ক্রিপ্টোগ্রাফিক পাসওয়ার্ড তৈরির জন্য পর্যাপ্ত র‍্যান্ডমনেস এবং পরিসংখ্যানিক গুণমান রয়েছে।

4.3. কর্মদক্ষতা বিশ্লেষণ

গণনামূলক দক্ষতা মূল্যায়ন করা হয়েছে। যদিও সব পদ্ধতিই কার্যকর, প্ল্যাটফর্মের উপর নির্ভর করে KMAC এবং HMAC ভিন্ন কর্মদক্ষতা প্রোফাইল দেখাতে পারে, যেখানে AES-ভিত্তিক CMAC প্রায়ই AES অ্যাক্সিলারেশন সহ হার্ডওয়্যারে দ্রুততর হয়।

5. উপসংহার এবং ভবিষ্যৎ কাজ

এই গবেষণাপত্রে ক্রিপ্টোগ্রাফিক PRNG (HMAC, CMAC, KMAC) এর উপর নির্মিত একটি নিরাপদ পাসওয়ার্ড জেনারেটর কাঠামো উপস্থাপন করা হয়েছে। উৎপন্ন র‍্যান্ডমনেস NIST মানদণ্ড ব্যবহার করে যাচাই করা হয়েছে, এর উপযুক্ততা নিশ্চিত করা হয়েছে। ভবিষ্যৎ কাজের মধ্যে রয়েছে জেনারেটরকে ব্রাউজার এক্সটেনশন বা পাসওয়ার্ড ম্যানেজারে একীভূত করা, পাসওয়ার্ডের বাইরে ক্রিপ্টোগ্রাফিক কী তৈরিতে এর ব্যবহার অন্বেষণ করা এবং উদীয়মান AI-ভিত্তিক অনুমান আক্রমণের বিরুদ্ধে সহনশীলতা পরীক্ষা করা।

6. মূল বিশ্লেষণ ও বিশেষজ্ঞ মন্তব্য

মূল অন্তর্দৃষ্টি: এই গবেষণাপত্রটি একটি নতুন সাইফার উদ্ভাবন সম্পর্কে নয়; এটি একটি সর্বব্যাপী মানবিক সমস্যা: দুর্বল পাসওয়ার্ড তৈরির জন্য একটি ব্যবহারিক, মানদণ্ড-সম্মত প্রকৌশল সমাধান। এর মূল্য নিহিত রয়েছে প্রতিষ্ঠিত ক্রিপ্টোগ্রাফিক আদিম (HMAC, CMAC, KMAC) কে NIST-প্রস্তাবিত PRNG হিসাবে সঠিকভাবে প্রয়োগ করা এবং আউটপুট কঠোরভাবে যাচাই করা—একটি ধাপ যা প্রায়শই "DIY" পাসওয়ার্ড জেনারেটরে উপেক্ষা করা হয়। এমন একটি যুগে যেখানে AI ব্যক্তিগত ডেটা প্যাটার্ন মডেল করতে পারে (যেমন PassGAN-এর মতো AI-চালিত পাসওয়ার্ড অনুমানের গবেষণায় দেখা গেছে), পাসওয়ার্ড র‍্যান্ডমনেসের উৎস মানুষের মস্তিষ্ক থেকে যাচাইকৃত ক্রিপ্টোগ্রাফিক অ্যালগরিদমে স্থানান্তর করা একটি অপরিহার্য নিরাপত্তা আপগ্রেড।

যুক্তিগত প্রবাহ: যুক্তি শব্দ এবং একটি ক্লাসিক প্রয়োগকৃত ক্রিপ্টোগ্রাফি টেমপ্লেট অনুসরণ করে: ১) দুর্বলতা চিহ্নিত করুন (দুর্বল মানব-উৎপন্ন পাসওয়ার্ড)। ২) উপযুক্ত, যাচাইকৃত ক্রিপ্টোগ্রাফিক টুল নির্বাচন করুন (NIST SP 800-108 PRNG)। ৩) একটি সিস্টেম তৈরি করুন (PRNG আউটপুটকে ক্যারেক্টার সেটে ম্যাপ করুন)। ৪) মূল উপাদান যাচাই করুন (NIST SP 800-90B এর মাধ্যমে PRNG আউটপুট)। এই পদ্ধতিটি নিরাপদ সিস্টেম ডিজাইনের সেরা অনুশীলনের প্রতিফলন ঘটায়, যেমন `libsodium`-এর মতো আধুনিক লাইব্রেরিগুলি কীভাবে শক্তিশালী, ডিফল্ট-নিরাপদ আদিমগুলিকে অগ্রাধিকার দেয় তার অনুরূপ।

শক্তি ও ত্রুটি:
শক্তি: কঠোর NIST যাচাইয়ের পদ্ধতি গবেষণাপত্রের সবচেয়ে শক্তিশালী দিক, যা অভিজ্ঞতামূলক বিশ্বাসযোগ্যতা প্রদান করে। KMAC-এর ব্যবহার পোস্ট-কোয়ান্টাম প্রস্তুতির সাথে সামঞ্জস্যপূর্ণ। ঐচ্ছিক ব্যবহারকারী-ইনপুট (TBHM) একটি চতুর বৈশিষ্ট্য, প্রয়োজনে নির্ধারক পাসওয়ার্ড পুনর্জন্মের অনুমতি দেয়, যদি PRNG শক্তিশালী হয় তবে নিরাপত্তা বিঘ্নিত না করে।
ত্রুটি: গবেষণাপত্রের প্রাথমিক সীমাবদ্ধতা হল প্রমাণ-অব-ধারণা হিসাবে এর সুযোগ। এতে পার্শ্ব-চ্যানেল (ম্যাপিংয়ের সময় টাইমিং আক্রমণ), PRNG-এর জন্য নিরাপদ কী ব্যবস্থাপনা এবং বিদ্যমান পাসওয়ার্ড নীতির সাথে একীকরণের চ্যালেঞ্জ মোকাবেলা করে একটি বাস্তব-বিশ্ব বাস্তবায়ন বিশ্লেষণের অভাব রয়েছে। তদুপরি, যদিও এটি AES-এর সাথে পাসওয়ার্ড শক্তির তুলনা করে, এটি সংক্ষিপ্ত পাসওয়ার্ডের জন্য একটি গুরুত্বপূর্ণ বিবরণ, ক্যারেক্টার সেট ম্যাপিং প্রক্রিয়ার সময় এনট্রপি হ্রাসের গভীর বিশ্লেষণ করে না।

কার্যকরী অন্তর্দৃষ্টি: নিরাপত্তা অনুশীলনকারীদের জন্য, উপসংহারটি স্পষ্ট: ব্যবহারকারী বা সরল র‍্যান্ডম ফাংশনকে পাসওয়ার্ড বেছে নিতে দেওয়া বন্ধ করুন। "পাসওয়ার্ড ভুলে গেছেন" রিসেট বা প্রাথমিক ব্যবহারকারী সেটআপের জন্য এইরকম একটি ব্যাকএন্ড পাসওয়ার্ড জেনারেটর বাস্তবায়ন করুন। PRNG-এর নির্দিষ্ট পছন্দটি উপযোগী করা যেতে পারে: সাধারণ সার্ভারে গতির জন্য CMAC-AES ব্যবহার করুন, দীর্ঘমেয়াদী কোয়ান্টাম উদ্বেগের জন্য KMAC ব্যবহার করুন। গুরুত্বপূর্ণভাবে, যে কোনও গ্রহণে অবশ্যই যেকোনো ক্রিপ্টোগ্রাফিক কী-এর মতোই কঠোরতার সাথে PRNG-এর সিড/কী ব্যবস্থাপনা অন্তর্ভুক্ত থাকতে হবে। নিরাপদ পাসওয়ার্ড তৈরির জন্য একটি প্রস্তাবিত প্যাটার্ন হিসাবে এই কাজটি OWASP-এর অথেন্টিকেশন চিট শিটের মতো কাঠামোতে একীভূত করা উচিত।

7. প্রযুক্তিগত বিবরণ ও গাণিতিক সূত্রায়ন

নিরাপত্তা PRNG সূত্রায়নের উপর নির্ভর করে। HMAC-এর জন্য:
$r_{hmac}(k, M) = h((k \oplus opad) \ || \ h((k \oplus ipad) \ || \ M))$
যেখানে $h$ হল SHA-256-এর মতো একটি হ্যাশ, $ipad/opad$ হল ধ্রুবক, এবং $k$ হল কী। পাসওয়ার্ড তৈরির জন্য, একটি কাউন্টার $i$ কে $M_i$ তে অন্তর্ভুক্ত করা হয় একাধিক ব্লক তৈরি করতে: $M_i = i || \text{Label} || 0x00 || \text{Context} || L$। আউটপুট বিটগুলি তারপর একটি পূর্ণসংখ্যা সূচকে রূপান্তরিত হয় $N$ আকারের সেট $C$ থেকে ক্যারেক্টার নির্বাচন করতে: $\text{index} = \text{random_bits} \mod N$।

8. বিশ্লেষণ কাঠামো ও উদাহরণ কেস

পরিস্থিতি: একটি ওয়েব পরিষেবার জন্য একটি নতুন ব্যবহারকারী অ্যাকাউন্টের জন্য একটি শক্তিশালী ১২-অক্ষরের পাসওয়ার্ড তৈরি করতে হবে।
কাঠামো প্রয়োগ:
১. প্যারামিটার সংজ্ঞায়িত করুন: ক্যারেক্টার সেট $C$ = 94 প্রিন্টেবল ASCII অক্ষর। দৈর্ঘ্য $L=12$। PRNG পছন্দ: HMAC-SHA256।
২. র‍্যান্ডমনেস তৈরি করুন: সিড $k$ এর জন্য এনট্রপি সংগ্রহ করুন। TBHM = "serviceX_user123" ব্যবহার করুন। কাউন্টার মোডে HMAC-ভিত্তিক PRNG চালিয়ে $\lceil log_2(94^{12}) \rceil \approx 79$ বিট এনট্রপি উৎপন্ন করুন।
৩. পাসওয়ার্ডে ম্যাপ করুন: ৭৯-বিট স্ট্রিম ব্যবহার করে ১২টি সূচক তৈরি করুন, প্রতিটি $C$ থেকে একটি ক্যারেক্টার নির্বাচন করে।
৪. যাচাই পরীক্ষা: উৎপন্ন পাসওয়ার্ডের এনট্রপি ~৭৮.৫ বিট, যা একটি ~৮০-বিট সিমেট্রিক কী-এর সমতুল্য, যেকোনো মানব-নির্বাচিত পাসওয়ার্ডের চেয়ে উল্লেখযোগ্যভাবে শক্তিশালী।
নো-কোড ওয়ার্কফ্লো: এই প্রক্রিয়াটি একটি সার্ভার-সাইড API কল এনক্যাপসুলেট করা যেতে পারে, শেষ ব্যবহারকারী থেকে সম্পূর্ণভাবে ক্রিপ্টোগ্রাফিকে বিমূর্ত করে।

9. ভবিষ্যৎ প্রয়োগ ও দিকনির্দেশনা

১. পাসওয়ার্ড ম্যানেজার কোর ইঞ্জিন: ওপেন-সোর্স এবং বাণিজ্যিক পাসওয়ার্ড ম্যানেজারে (যেমন, Bitwarden, 1Password) ডিফল্ট পাসওয়ার্ড তৈরির ইঞ্জিন হিসাবে এই জেনারেটরকে একীভূত করুন।
২. পোস্ট-কোয়ান্টাম রূপান্তর: KMAC-ভিত্তিক জেনারেশন কোয়ান্টাম-প্রতিরোধী পাসওয়ার্ড এবং টোকেন তৈরির জন্য একটি প্রস্তুত সমাধান, যেমন NIST পোস্ট-কোয়ান্টাম ক্রিপ্টোগ্রাফি প্রকল্প দ্বারা প্রস্তাবিত।
৩. IoT এবং এম্বেডেড নিরাপত্তা: হালকা ওজনের CMAC-AES সংস্করণ সীমিত পরিবেশে অনন্য ডিভাইস পাসওয়ার্ড এবং API কী তৈরি করতে পারে।
৪. ব্লকচেইন এবং ওয়েব৩: ক্রিপ্টোকারেন্সি ওয়ালেটের জন্য নিরাপদ, র‍্যান্ডম নেমোনিক ফ্রেজ সিড তৈরি করতে একটি যাচাইযোগ্য র‍্যান্ডম উৎস ব্যবহার করুন।
৫. মানকীকরণ: এই পদ্ধতিটি IETF বা FIDO-এর মতো মানদণ্ড সংস্থার কাছে পরবর্তী প্রজন্মের প্রমাণীকরণ প্রোটোকলে অন্তর্ভুক্তির জন্য প্রস্তাব করুন।

10. তথ্যসূত্র

  1. M. Bishop, "Computer Security: Art and Science", Addison-Wesley, 2018.
  2. NIST, "Special Publication 800-63B: Digital Identity Guidelines", 2017.
  3. M. L. Mazurek et al., "Measuring Password Guessability for an Entire University", IEEE S&P, 2013.
  4. B. Ur et al., "How Does Your Password Measure Up? The Effect of Strength Meters on Password Creation", USENIX Security, 2012.
  5. NIST, "Special Publication 800-108: Recommendation for Key Derivation Using Pseudorandom Functions", Rev. 1, 2022.
  6. NIST, "Special Publication 800-90B: Recommendation for the Entropy Sources Used for Random Bit Generation", 2018.
  7. J. Kelsey, B. Schneier, D. Wagner, "Secure Applications of Low-Entropy Keys", ISW, 1997.
  8. FIPS PUB 202, "SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions", 2015.
  9. B. Hitaj et al., "PassGAN: A Deep Learning Approach for Password Guessing", NeurIPS Workshop, 2017.
  10. D. J. Bernstein et al., "The Security Impact of a New Cryptographic Random Number Generator", 2020.