কম্পিউটার টিউটোরিয়াল

তথ্য নিরাপত্তাতে প্রাইম্যালিটি টেস্টিং (Primality Testing) কী?


প্রাইম্যালিটি টেস্টিং (Primality Testing) — তথ্য নিরাপত্তা

প্রাইম্যালিটি টেস্ট হলো একটি অ্যালগরিদম যা ইনপুট নম্বর প্রাইম কিনা তা নির্ধারণ করে। কিছু টেস্ট ডিটারমিনিস্টিক (Deterministic)—সর্বদা সঠিকভাবে প্রাইম বা কম্পোজিট বলে।

ডিটারমিনিস্টিক টেস্টের গতি

  • সবচেয়ে দ্রুত ডিটারমিনিস্টিক প্রাইম্যালিটি টেস্ট ২০০৪ সালে আবিষ্কৃত (Agrawal, Kayal, Saxena — AKS প্রাইম্যালিটি টেস্ট)।
  • টাইম কমপ্লেক্সিটি: Õ(log⁶ n) = O(log⁶ n × log(log n)ᵏ)।
  • ব্রেকথ্রু হলেও ইনফো সিকিউরিটির দরকারের চেয়ে ধীর।

প্রাইম নম্বরের ক্রিপ্টোগ্রাফিক গুরুত্ব

  • প্রাইম নম্বর ক্রিপ্টোগ্রাফিতে ব্যবহৃত হয়। RSA অ্যালগরিদম-এ ১০২৪+ বিট প্রাইম কী দরকার হায় সিকিউরিটির জন্য।
  • এত বড় নম্বরের সাথে কাজ করা কঠিন, বিশেষ করে / এবং % অপারেশন প্রাইম্যালিটি টেস্টে।
  • তাই সেরা প্রাইম্যালিটি টেস্টিং অ্যালগরিদমগুলো শুধু "প্রবাবলিস্টিক প্রাইম" (Probable Prime) বা কম্পোজিট বলে—নিশ্চিত প্রাইম বলে না।

প্রাইম্যালিটি টেস্টিং-এর প্রকারভেদ

১. ডিটারমিনিস্টিক অ্যালগরিদম (Deterministic Algorithm)

  • ইনপুট ইন্টিজার নেয়, আউটপুট সবসময় "প্রাইম" বা "কম্পোজিট"। সর্বদা সঠিক উত্তর দেয়।

২. ডিভিজিবিলিটি অ্যালগরিদম (Divisibility Algorithm)

  • সিম্পলেস্ট টেস্ট: ইনপুট n দিয়ে ২ থেকে n-1 পর্যন্ত যেকোনো ইন্টিজার n-কে ভাগ করে কিনা চেক। ভাগ করলে কম্পোজিট, নাইলে প্রাইম।
  • অপ্টিমাইজেশন: √n পর্যন্ত চেক করলেই হবে। কম্পোজিট হলে দুটি ফ্যাক্টরের কমপক্ষে একটি ≤ √n।

৩. প্রবাবলিস্টিক অ্যালগরিদম (Probabilistic Algorithm)

  • উত্তর অধিকাংশ সময় সঠিক, সবসময় নয়।
  • চেক করে যে n প্রাইমদের স্যাটিসফাই করার শর্তগুলো পূরণ করে কিনা।
  • আউটপুট নিয়ম:
    • ইনপুট আসলে প্রাইম হলে → নিশ্চিত "প্রাইম"।
    • ইনপুট আসলে কম্পোজিট হলে → প্রোবাবিলিটি 1-ε দিয়ে "কম্পোজিট", প্রোবাবিলিটি ε দিয়ে "প্রাইম" (ভুল)।
    • m বার রান করলে এরর প্রোবাবিলিটি εm।

ফারমেট প্রাইম্যালিটি টেস্ট (Fermat Primality Test)

  • ফারমেটস লিটল থিওরেম থেকে: n প্রাইম হলে an-1 ≡ 1 (mod n)।
  • ইনপুট n এবং a < n দিয়ে চেক: an-1 ≡ 1 (mod n)? না হলে কম্পোজিট, হলে "প্রবাবলি প্রাইম"।
  • দুর্বলতা: হাই এরর রেট—অনেক কম্পোজিট "প্রবাবলি প্রাইম" হিসেবে ফেলস পজিটিভ দেয় (কারমাইকেল নম্বর)।

  1. তথ্য সুরক্ষায় ইনফরমেশন সিকিউরিটি মেট্রিক্স কী?

  2. তথ্য নিরাপত্তায় গোপনীয়তা কী?

  3. তথ্য নিরাপত্তায় ডিক্রিপশন (Decryption) কী?

  4. তথ্য নিরাপত্তাতে IDEA (International Data Encryption Algorithm) কী?