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

DES-এর ডিজাইন সমস্যাগুলি কী?


ডেটা এনক্রিপশন স্ট্যান্ডার্ড (DES) হল একটি ব্লক সিপার এলগরিদম যা ৬৪ বিটের ব্লকে প্লেইন টেক্সট গ্রহণ করে এবং ৪৮ বিটের কী ব্যবহার করে সিপারটেক্সটে রূপান্তর করে। এটি একটি সিমেট্রিক কী এলগরিদম, অর্থাৎ একই কী ডেটা এনক্রিপ্ট এবং ডিক্রিপ্ট করার জন্য ব্যবহার করা হয়।

DES-এর ডিজাইন ১৯৭৪ সালে IBM দ্বারা আবিষ্কৃত হয়েছিল (নোট: মূল টেক্সটে ১৯৯৪ উল্লেখ আছে, কিন্তু DES ১৯৭০ के দশকে विकসিত হয়েছিল)। DES-এর কিছু পরীক্ষা দেখিয়েছে যে এটি দাবি অনুযায়ী কিছু প্রয়োজনীয় উপাদান পূরণ করে। তবে কিছু ডিজাইন সমস্যা রয়েছে, যা নিচে দেওয়া হলো:

S-বক্স (S-Boxes)

S-বক্স একটি প্রক্রিয়া যা XOR অপারেশন থেকে ৪৮-বিট ইনপুট গ্রহণ করে (যা সংকুচিত কী এবং প্রসারিত RPT ধারণ করে) এবং প্রতিস্থাপন কৌশল ব্যবহার করে ৩২-বিট আউটপুট তৈরি করে। এই প্রতিস্থাপন আটটি প্রতিস্থাপন বক্স (S-বক্স) দ্বারা বাস্তবায়িত হয়।

S-বক্সের অনেক বৈশিষ্ট্য রয়েছে:

  • প্রতিটি সারির এন্ট্রিগুলি ০ থেকে ১৫ পর্যন্ত মানগুলির পারমুটেশন।
  • S-বক্সগুলি নন-লিনিয়ার। অন্য কথায়, আউটপুট ইনপুটের একটি অ্যাফাইন ট্রান্সফরমেশন নয়।
  • ইনপুটে একটি বিট পরিবর্তন করলে আউটপুটে দুটি বা ততোধিক বিট পরিবর্তিত হয়।
  • যদি একটি S-বক্সের দুটি ইনপুট শুধু মাঝপথের দুটি বিটে (বিট ৩ এবং ৪) ভিন্ন হয়, তবে আউটপুট আংশিকভাবে দুটি বিটে ভিন্ন হওয়া উচিত। অর্থাৎ, S(x) এবং S(x ⊕ 001100) অবশ্যই আংশিকভাবে দুটি বিটে ভিন্ন হবে, যেখানে x হল ইনপুট এবং S(x) হল আউটপুট।
  • যদি একটি S-বক্সের দুটি ইনপুট প্রথম দুটি বিটে (বিট ১ এবং ২) ভিন্ন হয় এবং শেষ দুটি বিটে (৫ এবং ৬) একই থাকে, তবে দুটি আউটপুট আলাদা হওয়া উচিত। অর্থাৎ, নিম্নলিখিত সম্পর্ক বজায় রাখা প্রয়োজন: S(x) ≠ S(x ⊕ 11bc00), যেখানে b এবং c αυ恣意 বিট।

D-বক্স (D-Boxes)

D-বক্স একটি পারমুটেশন বক্স যেটির বৈশিষ্ট্যগুলি প্রচলিত ট্রান্সপজিশন সিপারের সাথে মিলে যায়। D-বক্সের বৈশিষ্ট্যগুলি নিচে দেওয়া হলো:

  • প্রতিটি S-বক্সের ইনপুট আগের রাউন্ডের ভিন্ন S-বক্সের আউটপুট থেকে আসে।
  • কোনো নির্দিষ্ট S-বক্সের ইনপুট আগের রাউন্ডের একই বক্সের আউটপুট থেকে আসে না।
  • প্রতিটি S-বক্সের চারটি আউটপুট পরবর্তী রাউন্ডের ৬টি ভিন্ন S-বক্সে যায়।
  • একটি S-বক্সের কোনো দুটি আউটপুট বিট পরবর্তী রাউন্ডে একই S-বক্সে যায় না।
  • প্রতিটি S-বক্সের জন্য, দুটি আউটপুট বিট পরবর্তী রাউন্ডের একটি S-বক্সের প্রথম বা শেষ দুটি বিটে যায়। বাকি দুটি আউটপুট বিট পরবর্তী রাউন্ডের একটি S-বক্সের মাঝপথের বিটগুলিতে দেখা যায়।

রাউন্ডের সংখ্যা (Number of Rounds)

DES ফিস্টেল সিপারের ১৬ রাউন্ড ব্যবহার করে। প্রমাণিত হয়েছে যে আট রাউন্ডের পর, প্রতিটি সিপারটেক্সট প্রতিটি প্লেইনটেক্সট বিট এবং প্রতিটি কী বিটের একটি ফাংশন; সিপারটেক্সট প্লেইনটেক্সট এবং সিপারটেক্সটের একটি شدید র‍্যান্ডম ফাংশন। অতএব, মনে হয় আট রাউন্ড পর্যাপ্ত হওয়া উচিত।

  1. তথ্য নিরাপত্তায় DES কী জেনারেশনের ধাপগুলো কী কী?

  2. DES-এর 변형গুলো কী?

  3. ট্রিপল DES অ্যালগরিদমের মডিউলগুলো কী কী?

  4. তথ্য নিরাপত্তাতে DES-এর শক্তি (Strengths) কী কী?