বিশ্বজুড়ে প্রতি সেকেন্ডে যে পেটাবাইট ডেটা ইন্টারনেটে আদান-প্রদান হয়, তার নিরাপত্তার সিংহভাগ নির্ভর করে সিমেট্রিক-কি ক্রিপ্টোগ্রাফির (Symmetric-Key Cryptography) ওপর। প্রাচীনকালের সাধারণ অক্ষর প্রতিস্থাপন পদ্ধতির যুগ পার হয়ে আজকের আধুনিক ব্লক সাইফারগুলো গড়ে উঠেছে সাবস্টিটিউশন-পারমিউটেশন নেটওয়ার্ক (SPN) অথবা ফিস্টেল কাঠামোর ওপর। এই অধ্যায়ে আমরা দেখব অ্যাডভান্সড এনক্রিপশন স্ট্যান্ডার্ড (AES)-এর গাণিতিক ভিত্তি, সসীম ফিল্ড ( ext{GF}(2^8))-এর ইনভার্সন বীজগণিত এবং লিনিয়ার ও ডিফারেনশিয়াল আক্রমণ মোকাবিলার কঠোর গাণিতিক শর্তাবলী।
১. ফিস্টেল নেটওয়ার্ক ও লুবি-র্যাকফ উপপাদ্য
একটি ক্লাসিক্যাল ফিস্টেল নেটওয়ার্কে (Feistel Network) (2n)-বিট ব্লককে দুটি সমান ভাগে ((L_i, R_i)) বিভক্ত করা হয়। প্রতিটি রাউন্ড (i in {1, dots, r})-এ সাব-কি (K_i) দ্বারা নিয়ন্ত্রিত একটি রাউন্ড ফাংশন (F_i: {0,1}^n o {0,1}^n) কাজ করে:
[
L_{i+1} = R_i, quad R_{i+1} = L_i oplus F_i(R_i)
]
ফিস্টেল নেটওয়ার্কের সবচেয়ে চমৎকার গাণিতিক বৈশিষ্ট্য হলো: রাউন্ড ফাংশন (F) নিজে ইনভার্টিবল (বিপরীতমুখী) না হলেও পুরো নেটওয়ার্কটি নিখুঁতভাবে রিভার্সিবল। কেবল সাব-কিগুলোকে উল্টো ক্রমানুসারে (K_r, dots, K_1) চালালেই ডিক্রিপশন সম্পন্ন হয়।
১৯৮৮ সালে মাইকেল লুবি এবং চার্লস র্যাকফ তাদের ঐতিহাসিক লুবি-র্যাকফ উপপাদ্যে (Luby-Rackoff Theorem) প্রমাণ করেন যে: যদি রাউন্ড ফাংশনগুলো নিরাপদ সিউডোর্যান্ডম ফাংশন (PRF) হয়, তবে মাত্র ৪-রাউন্ডের ফিস্টেল নেটওয়ার্ক একটি স্ট্রং সিউডোর্যান্ডম পারমিউটেশন (SPRP) গঠন করে, যা যেকোনো অ্যাডাপ্টিভ আক্রমণকারীর পক্ষে সম্পূর্ণ র্যান্ডম পারমিউটেশন থেকে আলাদা করা অসম্ভব।
২. AES (Rijndael) স্থাপত্য ও GF(2⁸) ইনভার্সন
DES-এর মতো ফিস্টেল না হয়ে আধুনিক AES হলো একটি নিখুঁত সাবস্টিটিউশন-পারমিউটেশন নেটওয়ার্ক (SPN), যা ৪×৪ বাইটের একটি স্টেট ম্যাট্রিক্সে কাজ করে। চাবির দৈর্ঘ্যভেদে (১২৮, ১৯২ বা ২৫৬ বিট) যথাক্রমে ১০, ১২ বা ১৪টি রাউন্ড পরিচালিত হয়, যার প্রতিটিতে চারটি স্বতন্ত্র স্তর থাকে:
- SubBytes: নন-লিনিয়ার এস-বক্স (S-box) প্রতিস্থাপন।
- ShiftRows: প্রতি সারির বাইটগুলোকে বামে যথাক্রমে ০, ১, ২ ও ৩ ঘর চক্রাকারে স্থানান্তর।
- MixColumns: অপ্রতিরোধ্য বহুপদী (m(x) = x^8 + x^4 + x^3 + x + 1)-এর অধীনে ( ext{GF}(2^8)) ফিল্ডে ম্যাট্রিক্স গুণন।
- AddRoundKey: রাউন্ড সাব-কি-এর সাথে বিটওয়াইজ XOR অপারেশন।
যেকোনো গাণিতিক আক্রমণের বিরুদ্ধে AES-এর মূল বর্ম হলো তার S-Box। একটি ইনপুট বাইট (a in ext{GF}(2^8)) দুটি ক্রমানুযায়ী ধাপে পরিবর্তিত হয়:
- মাল্টিপ্লিকেটিভ ইনভার্সন: গ্যালোয়া ফিল্ড ( ext{GF}(2^8) cong mathbb{F}_2[x] / (x^8 + x^4 + x^3 + x + 1))-এ (a^{-1}) নির্ণয় (যেখানে (0^{-1} = 0))।
- অ্যাফাইন রূপান্তর: ফিল্ডের উপাদানটিকে একটি ৮×৮ বাইনারি ম্যাট্রিক্স (M) দিয়ে গুণ করে ধ্রুবক (c = 0 ext{x}63) যোগ করা:
[
s_i = a’_i oplus a’_{(i+4) bmod 8} oplus a’_{(i+5) bmod 8} oplus a’_{(i+6) bmod 8} oplus a’_{(i+7) bmod 8} oplus c_i
]
(x mapsto x^{254}) ফিল্ড ইনভার্সন আক্রমণকারীকে সর্বনিম্ন ডিফারেনশিয়াল সম্ভাব্যতা ও সর্বোচ্চ নন-লিনিয়ারিটি দেয়, আর অ্যাফাইন রূপান্তর ফিল্ডের সরল বীজগণিতীয় প্রতিসাম্য নষ্ট করে দেয় যাতে ইন্টারপোলেশন আক্রমণ ব্যর্থ হয়।
৩. ডিফারেনশিয়াল ও লিনিয়ার ক্রিপ্টঅ্যানালিসিস
আধুনিক ব্লক সাইফারগুলো প্রধানত দুটি মারাত্মক আক্রমণের বিরুদ্ধে সুরক্ষার জন্য ডিজাইন করা হয়:
- ডিফারেনশিয়াল ক্রিপ্টঅ্যানালিসিস (Differential Cryptanalysis): দুটি প্লেইনটেক্সটের পার্থক্যের ((Delta x)) সাথে সাইফারটেক্সটের পার্থক্যের ((Delta y)) সম্পর্ক পর্যবেক্ষণ করা। AES S-box-এর সর্বোচ্চ ডিফারেনশিয়াল মান হলো ৪/২৫৬, যার ফলে মাত্র ৪টি রাউন্ড পার হতেই পার্থক্যের সম্ভাব্যতা (2^{-128})-এর নিচে নেমে গিয়ে আক্রমণকে সম্পূর্ণ অকার্যকর করে দেয়।
- লিনিয়ার ক্রিপ্টঅ্যানালিসিস (Linear Cryptanalysis): প্লেইনটেক্সট, সাইফারটেক্সট এবং গোপন কি বিটের মধ্যে লিনিয়ার সমীকরণ খোঁজা। AES-এর ওয়াইড ট্রেইল স্ট্র্যাটেজি (Wide Trail Strategy) নিশ্চিত করে যে ৪ রাউন্ডের মধ্যে কমপক্ষে ২৫টি সক্রিয় S-box অংশ নেয়, ফলে লিনিয়ার বায়াস (2^{-75})-এর নিচে নেমে আসে যা বাস্তব কোনো কম্পিউটারে বিশ্লেষণ করা অসম্ভব।