গত পর্বে আমরা সিজার ও ভিজিনিয়ার সাইফার শিখেছি।
আজ স্কাইটেল শিখবো। আর এনিগমা সম্পর্কে জানবো।
Scytale Cipher:
স্কাইটেল (Skytale/Scytale) সাইফার বেশ সহজ ও মজার।
এই ধরণের এনক্রিপশন করার জন্য আপনাকে একটি ছক (টেবিল) আকতে হবে খাতায়। ছকে যতোখুশি সারি দিতে পারেন, ব্যাপার না। কিন্তু কলাম হবে Key এর সমান। অর্থাৎ Key যদি ২ হয়, তাহলে ২টি কলাম হবে। নিচের চিত্র খেয়াল করুন।
এনক্রিপ্ট বা ডিক্রিপ্ট করার জন্য এই ছক ব্যবহার করতে হবে। শর্ত হলো key কখনোই ০ ও ১ হতে পারে না। Key সর্বনিম্ন ২ হতে হবে এবং সর্বোচ্চ হবে Plain টেক্সট এর মোট বর্ণ হতে ১ কম।
ধরুন,
Plain text: trickbd
এখন এই trickbd লেখায় ৭ টি অক্ষর আছে। এখন এর Key যদি আপনি ৭ করেন, তাহলে এনক্রিপ্ট লেখাও trickbd ই হবে, অর্থাৎ কোনো পরিবর্তন হবে না। তাই Key সর্বোচ্চ ৬ হবে। অবশ্য Key যদি ৬ ধরেন, তাহলেও সবাই আপনার গোপন কথা বুঝে ফেলবে, কারণ এটা অনেক সহজ এনক্রিপশন হয়ে যায়। তাই, মোট যতোগুলো প্লেইনটেক্সট এর বর্ণ থাকবে তার ৪ ভাগের ১ ভাগ যে সংখ্যা হয়, সেটা Key হিসেবে দেয়াই সবচেয়ে উত্তম। আর যদি আপনার প্লাইন টেক্সট অনেক বড় বাক্য হয়, তাহলে সেই হিসেবেই দিতে পারেন। উদাহরণ দেই, তাই বুঝবেন।
Plain text: trickbd
Key: 2
নিচের ছবি খেয়াল করুন। ২ কলামের ছক একে আমি সেটাতে trickbd লেখাটি যেভাবে লিখছি সেভাবে লিখুন।
এবার ১ম কলামের লেখাটি খাতায় আলাদা অংশে লিখুন।
ব্যাস।
Cipher text: tikdrcb
আপনার স্কাইটেল এনক্রিপশন কমপ্লিট।
এবার,
Plain text: trickbd
Key: 3
তাহলে এবার কী অনুযায়ী কলাম হবে ৩ টি। নিচে ৩ কলামের টেবিল আকলাম ও সেটাতে আগের মতোই trickbd লিখলাম।
এবার ১ম কলামের লেখাটি খাতায় আলাদা অংশে লিখুন।
এরপর এই ২য় কলামের লেখাটিও আগের লেখার সাথেই লিখুন।
আবার শেষে এই ৩য় কলামের লেখাটিও আগের লেখার সাথে লিখুন।
ব্যাস,
Cipher text: tcdrkib
আপনার স্কাইটেল সাইফার কমপ্লিট।
আশা করি ডিক্রিপশন বুঝানো লাগবে না। এনক্রিপ্ট বুঝলেই ডিক্রপ্ট করতে পারবেন।
Enigma Cipher:
এইটা আমি আপনাদের শেখাতে পারবো না। কারণ এই এনিগমা সাইফার এনক্রিপশন বা ডিক্রিপশন করতে এনিগমা মেশিন বা সফটওয়্যার প্রয়োজন।
আর এখানে সেখার কিছু নেই বলা চলে, কারণ আপনি মেশিনের বোতাম টিপে টিপে এনক্রিপ্ট বা ডিক্রিপ্ট পারবেন, আর এভাবেই করা হয়। তবে আমি যেটা পারবো, সেটা হলো আপনাদের কে বুঝাতে পারবো যে এটা কীভাবে কাজ করে।
নিজে একটি এনিগমা মেশিনের মডেল দেয়া হলো।
এখানে, মোট ৪ টা কার্যকরী বিষয় আছে- Rotor, Lampboard, Keyboard ও Plugboard
সাধারণভাবে আপনি কীবোর্ডে A বাটনে চাপ দিলে ল্যাম্পবোর্ডে হয়তো X জ্বলে উঠলো, আবার B চাপ দিলে E জ্বলে উঠলো, তখন ঐ জ্বলে ওঠা শব্দ গুলো খাতায় বা কাগজে তুলে বাক্য বানালেন। কিন্তু প্যাটার্ন থাকে না কোনো, আপনি ভাবতে পারেন যে এতোক্ষণ যতগুলো সাইফার এনক্রিপ্ট করেছি সেটার নির্দিষ্ট একটা প্যাটার্ন থাকে Key অনুযায়ী, এটারও প্যাটার্ন আছে Key অনুযায়ী। কিন্তু প্লাগবোর্ড ও রটর এর সাহায্যে আমরা যখন কোনো Key সেট করবো তখন ৯টি (সাধারণ এনিগমা মেশিনে) ধাপে ইংরেজি বর্ণ পরিবর্তিত হয় এবং প্রতি ধাপে এর পরিবর্তন ২৬ ভাবে হতে পারে, তাহলে একটি সাধারণ এনিগমা মেশিন দিয়ে কমপক্ষে ৪ লক্ষ সম্ভাব্য প্যাটার্নে কোড এনক্রিপ্ট করা যায়। এই প্যাটার্ন শুধু যন্ত্রটাই ধরতে পারে, মানুষের পক্ষেও সম্ভব, তবে অনেক অনেক বেশি জটিল এবং যন্ত্র ছাড়া এনিগমা সমাধান করা প্রায় অসম্ভব, যদি আপনার কাছে Key থাকে তবুও।
যাইহোক,
এ পর্যন্তই।
ক্রিপ্টোগ্রাফি র এতোটুকুই সাধারণ আগ্রহ তে বা সখ এর বসে জানা প্রয়োজন। এটা নিয়ে আপনি ক্যারিয়ার গড়তে চাইলে, অবশ্যই পেইড কোর্স করতে হবে, যেটা বাংলাদেশে কোন প্রতিষ্ঠান দেয় আমার জানা নেই, তবে “Udacity” নামক এক খুব বিখ্যাত এক ওয়েবসাইট আছে যেখানে আপনি ক্রিপ্টোগ্রাফি নিয়ে ফুল কোর্স পাবেন সার্টিফিকেট সহ।