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

সিউডো র‍্যান্ডম নাম্বার জেনারেটর (PRNG) ভিত্তিক নিরাপদ পাসওয়ার্ড জেনারেটর

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

সূচিপত্র

1. ভূমিকা

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

প্রতিক্রিয়া হিসেবে, এই গবেষণাপত্র একটি নিরাপদ সিউডো র‍্যান্ডম নাম্বার জেনারেটর (PRNG) এর উপর নির্মিত একটি নিরাপদ পাসওয়ার্ড জেনারেটর প্রস্তাব করে। মূল PRNG টি HMAC, CMAC, বা KMAC এর মতো ক্রিপ্টোগ্রাফিক আদিম উপাদান ব্যবহার করে নির্মিত হয় যাতে উচ্চ-মানের র‍্যান্ডম সংখ্যা তৈরি করা যায়, যা পরে পাসওয়ার্ড তৈরিতে ব্যবহৃত হয়। সিস্টেমটি প্রক্রিয়াটিকে সিড (বীজ) দিতে ঐচ্ছিক ব্যবহারকারী ইনপুট (To-Be-Hashed Message, TBHM) গ্রহণ করে। প্রধান অবদানগুলি হল:

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

2.1. লিনিয়ার কনগ্রুয়েনশিয়াল জেনারেটর ভিত্তিক সিউডো র‍্যান্ডম নাম্বার জেনারেটর

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

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

নিরাপদ PRNG গুলি NIST SP 800-108 Rev. 1 এ বর্ণিত ক্রিপ্টোগ্রাফিক আদিম উপাদানের উপর ভিত্তি করে তৈরি।

2.2.1. HMAC ভিত্তিক

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

2.2.2. CMAC ভিত্তিক

নিরাপত্তা CBC মোডে AES ব্লক সাইফারের উপর নির্ভর করে। বার্তা $M$ কে ব্লক $M'_1, M'_2, ...$ এ বিভক্ত করা হয়। প্রক্রিয়াটি পুনরাবৃত্তি হয়: $c_{i+1} = AES(k, c_i \oplus M'_{i+1})$ যেখানে $c_0 = Pad0(0)$। চূড়ান্ত আউটপুট $r_{cmac}$ নির্দিষ্ট প্যাডিং (Pad1) এর পর শেষ সাইফার ব্লক থেকে প্রাপ্ত হয়।

2.2.3. KMAC ভিত্তিক

KECCAK স্পঞ্জ ফাংশন (SHA-3 এর ভিত্তি) ব্যবহার করে, যা নির্ধারক র‍্যান্ডম বিট তৈরি করার জন্য উপযোগী একটি নমনীয় এবং শক্তিশালী MAC ফাংশন সরবরাহ করে।

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

গবেষণাপত্রটি NIST SP 800-90B কাঠামো গ্রহণ করে, যা এনট্রপি উৎস যাচাইয়ের জন্য কার্যত মানদণ্ড। এতে দুটি গুরুত্বপূর্ণ যাচাইকরণ স্যুট অন্তর্ভুক্ত রয়েছে:

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

প্রস্তাবিত সিস্টেম আর্কিটেকচারটি সরল কিন্তু শক্তিশালী:

  1. ইনপুট/সিড: একটি ঐচ্ছিক ব্যবহারকারী-প্রদত্ত TBHM গ্রহণ করে। প্রদান করা হলে, এটি প্রক্রিয়াজাত করা হয়; অন্যথায়, একটি সিস্টেম-তৈরি নিরাপদ সিড ব্যবহার করা হয়।
  2. নিরাপদ PRNG কোর: TBHM/সিড তিনটি ক্রিপ্টোগ্রাফিক PRNG নির্মাণের (HMAC-ভিত্তিক, CMAC-ভিত্তিক, KMAC-ভিত্তিক) যেকোনো একটিতে খাওয়ানো হয় যাতে ক্রিপ্টোগ্রাফিকভাবে শক্তিশালী সিউডো-র‍্যান্ডম বিট ক্রম তৈরি হয়।
  3. পাসওয়ার্ড নির্মাণ: র‍্যান্ডম বিটগুলি একটি ব্যবহারকারী-সংজ্ঞায়িত বা সিস্টেম-সংজ্ঞায়িত অক্ষর সেটে (যেমন, আলফানিউমেরিক + প্রতীক) ম্যাপ করা হয় যাতে কাঙ্ক্ষিত দৈর্ঘ্যের একটি পাসওয়ার্ড তৈরি হয়।

নিরাপত্তা বিশ্লেষণ: গবেষণাপত্রটি যুক্তি দেয় যে তৈরি পাসওয়ার্ডের নিরাপত্তা সরাসরি PRNG আউটপুটের এনট্রপি এবং অক্ষর সেটের আকারের উপর নির্ভর করে। এটি একটি তুলনামূলক বিশ্লেষণ করে, দেখায় যে এই পদ্ধতি দ্বারা 94-অক্ষরের একটি সেট থেকে তৈরি একটি 16-অক্ষরের পাসওয়ার্ড AES-128 বা AES-256 কীগুলির সাথে তুলনীয় বা তার চেয়ে বেশি ব্রুট-ফোর্স প্রতিরোধ ক্ষমতা প্রদান করতে পারে, ধরে নেওয়া হয় যে PRNG আউটপুট সত্যিই র‍্যান্ডম।

4. পরীক্ষামূলক ফলাফল ও বিশ্লেষণ

পরীক্ষামূলক যাচাইকরণ এই গবেষণাপত্রের একটি মূল শক্তি।

চার্ট বর্ণনা (অন্তর্নিহিত): একটি বার চার্ট তিনটি PRNG পদ্ধতির জন্য মিন-এনট্রপি অনুমান (প্রতি বিটে বিটে) 1.0 এর আদর্শ মানের বিপরীতে কার্যকরভাবে তুলনা করবে। সমস্ত বার 1.0 এর খুব কাছাকাছি হবে। একটি দ্বিতীয় চার্ট মূল IID পরীক্ষা (যেমন, চি-স্কয়ার, কলমোগোরভ-স্মিরনভ) থেকে p-মান দেখাতে পারে, যেখানে সমস্ত মান সাধারণ তাৎপর্য থ্রেশহোল্ড (যেমন, 0.01) এর চেয়ে অনেক বেশি, যা পাস নির্দেশ করে।

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

গবেষণাটি ক্রিপ্টোগ্রাফিক PRNG ভিত্তিক একটি নিরাপদ পাসওয়ার্ড তৈরির কাঠামো সফলভাবে প্রদর্শন করে। প্রস্তাবিত পদ্ধতিগুলি পর্যাপ্ত র‍্যান্ডমনেস সহ পাসওয়ার্ড তৈরি করে, যা NIST মানদণ্ড দ্বারা কঠোরভাবে যাচাইকৃত। ভবিষ্যৎ কাজের দিকনির্দেশনা অন্তর্ভুক্ত করে:

6. মূল বিশ্লেষণ ও বিশেষজ্ঞের দৃষ্টিভঙ্গি

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

যুক্তিগত প্রবাহ: যুক্তিটি সঠিক: 1) স্ট্যান্ডার্ড LCG গুলি ক্রিপ্টোগ্রাফিকভাবে ভঙ্গুর। 2) ক্রিপ্টোগ্রাফিক MAC থেকে নির্মিত নিরাপদ PRNG গুলি প্রমাণযোগ্যভাবে শক্তিশালী। 3) অতএব, এই ধরনের PRNG থেকে প্রাপ্ত পাসওয়ার্ডগুলি সেই শক্তিশালীতাকে উত্তরাধিকার সূত্রে পায়। 4) এই দাবিটি শুধু তত্ত্ব দ্বারা নয়, কঠোর অভিজ্ঞতামূলক পরীক্ষা (NIST SP 800-90B) পাস করার দ্বারাও যাচাই করা হয়। এই এন্ড-টু-এন্ড যাচাইকরণই অনেক "নিরাপদ পাসওয়ার্ড জেনারেটর" টুলের অভাব।

শক্তি ও ত্রুটি:
শক্তি: পদ্ধতিগত কঠোরতা প্রশংসনীয়। যাচাইকরণের জন্য NIST SP 800-90B ব্যবহার করা অবিলম্বে এর বিশ্বাসযোগ্যতা বাড়ায়, ঠিক যেমন ক্রিপ্টোগ্রাফিক অ্যালগরিদম CAVP (ক্রিপ্টোগ্রাফিক অ্যালগরিদম ভ্যালিডেশন প্রোগ্রাম) এর মাধ্যমে যাচাই করা হয়। AES কী শক্তির সাথে তুলনা করা নিরাপত্তা দলের জন্য একটি ব্যবহারিক, সম্পর্কিত মেট্রিক।
ত্রুটি: গবেষণাপত্রটি একটি নিয়ন্ত্রিত, আদর্শিক পরিবেশে কাজ করে। এটি ধরে নেয় যে প্রাথমিক সিড/TBHM এর পর্যাপ্ত এনট্রপি রয়েছে—বাস্তব সিস্টেমে একটি গুরুত্বপূর্ণ এবং প্রায়শই দুর্বল লিঙ্ক। "ঐচ্ছিক" ব্যবহারকারী ইনপুট একটি দ্বিধাবিভক্ত তরোয়াল; একটি দুর্বল, অনুমানযোগ্য ব্যবহারকারী বাক্যাংশ (যেমন, "mypassword") সম্পূর্ণ ক্রিপ্টোগ্রাফিক নির্মাণকে দুর্বল করতে পারে, এমন একটি ঝুঁকি যা সম্পূর্ণরূপে পরিমাপ করা হয়নি। তদুপরি, NIST দ্বারা 2023 সালের পর্যালোচনা "পোস্ট-কোয়ান্টাম ক্রিপ্টোগ্রাফি: একটি দশ বছরের যাত্রা" এ উল্লিখিত হিসাবে, এই ক্ষেত্রটি কোয়ান্টাম-প্রতিরোধী অ্যালগরিদমের দিকে এগিয়ে চলেছে। গবেষণাপত্রের নির্মাণগুলি, যদিও শাস্ত্রীয় কম্পিউটারের বিরুদ্ধে নিরাপদ, SHA2/AES এর উপর নির্ভর করে, যার দীর্ঘমেয়াদী কোয়ান্টাম প্রতিরোধ ক্ষমতা অনিশ্চিত।

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

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

মূল গাণিতিক অপারেশনগুলি সাহিত্য পর্যালোচনা (অধ্যায় 2) এ সংজ্ঞায়িত করা হয়েছে। মূল সূত্রগুলির মধ্যে রয়েছে:

পাসওয়ার্ড জেনারেশন একটি র‍্যান্ডম পূর্ণসংখ্যা $R$ (PRNG আউটপুট থেকে) একটি অক্ষর সূচকে ম্যাপ করে: $\text{index} = R \ \text{mod} \ |S|$, যেখানে $|S|$ হল অক্ষর সেটের আকার।

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

উদাহরণ কেস: একটি লিগ্যাসি সিস্টেমের পাসওয়ার্ড জেনারেটর মূল্যায়ন
পরিস্থিতি: একটি লিগ্যাসি ওয়েব অ্যাপ্লিকেশন অস্থায়ী ব্যবহারকারী পাসওয়ার্ড তৈরি করার জন্য একটি পরিবর্তিত LCG ব্যবহার করে। একটি নিরাপত্তা নিরীক্ষা প্রয়োজন।
কাঠামো প্রয়োগ:

  1. PRNG প্রকার সনাক্ত করুন: সোর্স কোড পরিদর্শন করুন। খুঁজুন: seed = (a * seed + c) % m; নিশ্চিত করুন এটি একটি LGC বৈকল্পিক।
  2. ক্রিপ্টোগ্রাফিক নিরাপত্তা মূল্যায়ন করুন: LCG নির্ধারক এবং বিপরীতমুখী। একজন আক্রমণকারী কয়েকটি ধারাবাহিক পাসওয়ার্ড পেলে সিডের জন্য সমাধান করতে পারে এবং সমস্ত ভবিষ্যতের পাসওয়ার্ড ভবিষ্যদ্বাণী করতে পারে, যা প্রমাণীকরণকারীর র‍্যান্ডমনেস সম্পর্কে NIST SP 800-63B নির্দেশিকা লঙ্ঘন করে।
  3. গবেষণাপত্রের পদ্ধতি ব্যবহার করে প্রতিকার প্রস্তাব করুন:
    • সিড উৎস: সিস্টেম সময় সিডকে একটি CSPRNG (যেমন, লিনাক্সে /dev/urandom, উইন্ডোজে CryptGenRandom) দিয়ে প্রতিস্থাপন করুন।
    • কোর জেনারেটর: গবেষণাপত্রের নকশা অনুযায়ী একটি HMAC-SHA256-ভিত্তিক PRNG বাস্তবায়ন করুন।
    • যাচাইকরণ: নতুন জেনারেটর থেকে একটি বড় নমুনা (1,000,000 বিট) তৈরি করুন এবং মোতায়েনের আগে র‍্যান্ডমনেস যাচাই করতে NIST STS (স্ট্যাটিস্টিক্যাল টেস্ট স্যুট) বা SP 800-90B থেকে এনট্রপি অনুমানকারী চালান।
এই কাঠামোটি মূল্যায়নকে "এটি কি র‍্যান্ডম দেখায়?" থেকে "এটি কি মানক ক্রিপ্টোগ্রাফিক যাচাইকরণ পাস করে?" তে স্থানান্তরিত করে।

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

নীতিগুলি ব্যবহারকারী পাসওয়ার্ডের বাইরেও প্রসারিত:

10. তথ্যসূত্র

  1. M. Bishop, “Computer Security: Art and Science”, Addison-Wesley, 2019.
  2. NIST, “Special Publication 800-63B: Digital Identity Guidelines”, 2020.
  3. NIST, “Special Publication 800-90B: Recommendation for the Entropy Sources Used for Random Bit Generation”, 2018.
  4. NIST, “Special Publication 800-108 Rev. 1: Recommendation for Key Derivation Using Pseudorandom Functions”, 2022.
  5. NIST, “FIPS 202: SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions”, 2015.
  6. J. Kelsey, B. Schneier, D. Wagner, “Secure Applications of Low-Entropy Keys”, Information Security Workshop, 1997.
  7. M. Dworkin, “Recommendation for Block Cipher Modes of Operation: The CMAC Mode for Authentication”, NIST SP 800-38B, 2005.
  8. NIST, “Status Report on the Third Round of the NIST Post-Quantum Cryptography Standardization Process”, 2022. [Online]. Available: https://csrc.nist.gov/projects/post-quantum-cryptography
  9. Linux Foundation, “Common Criteria Certification and Open Source”, 2023. [Online]. Available: https://www.linuxfoundation.org/