ক্রিপ্টোগ্রাফিক সিস্টেমগুলো বর্তমানে গবেষণার দুটি প্রধান ক্ষেত্রে বিভক্ত: সিমেট্রিক এবং অ্যাসিমেট্রিক ক্রিপ্টোগ্রাফি। সিমেট্রিক এনক্রিপশনকে প্রায়শই সিমেট্রিক ক্রিপ্টোগ্রাফির সমার্থক হিসেবে ব্যবহার করা হলেও, অ্যাসিমেট্রিক ক্রিপ্টোগ্রাফি দুটি প্রাথমিক ব্যবহার ক্ষেত্র অন্তর্ভুক্ত: অ্যাসিমেট্রিক এনক্রিপশন এবং ডিজিটাল স্বাক্ষর।
অতএব, আমরা এই গ্রুপগুলোকে নিম্নরূপে উপস্থাপন করতে পারি:
সিমেট্রিক এনক্রিপশন
অ্যাসিমেট্রিক ক্রিপ্টোগ্রাফি (বা পাবলিক-কী ক্রিপ্টোগ্রাফি)
অ্যাসিমেট্রিক এনক্রিপশন (বা পাবলিক-কী এনক্রিপশন)
ডিজিটাল স্বাক্ষর (এনক্রিপশন থাকতে পারে বা নাও থাকতে পারে)
এই নিবন্ধটি সিমেট্রিক এবং অ্যাসিমেট্রিক এনক্রিপশন অ্যালগরিদমগুলোতে ফোকাস করবে।
সিমেট্রিক বনাম অ্যাসিমেট্রিক এনক্রিপশন
এনক্রিপশন অ্যালগরিদমগুলোকে প্রায়শই দুটি ক্যাটাগরিতে ভাগ করা হয়, যা সিমেট্রিক এবং অ্যাসিমেট্রিক এনক্রিপশন নামে পরিচিত। এনক্রিপশনের এই দুটি পদ্ধতির মধ্যে মৌলিক পার্থক্য নির্ভর করে এই বিষয়ের উপরে যে সিমেট্রিক এনক্রিপশন অ্যালগরিদমগুলো একটি একক কী ব্যবহার করে, আর অ্যাসিমেট্রিক এনক্রিপশন দুটি ভিন্ন কিন্তু সম্পর্কিত কী ব্যবহার করে। এই ধরনের পার্থক্য, যদিও আপাতদৃষ্টিতে সহজ, এনক্রিপশন কৌশলগুলোর দুটি ধরণ ও সেগুলো যেভাবে ব্যবহার করা হয় তার মধ্যে কার্যকরী পার্থক্যের তৈরি করে দেয়।
এনক্রিপশন কী বোঝা
ক্রিপ্টোগ্রাফিতে, এনক্রিপশন অ্যালগরিদম কী তৈরি করে বিটের একটি সিরিজ হিসেবে যা তথ্যের একটি অংশ এনক্রিপ্ট ও ডিক্রিপ্ট করার জন্য ব্যবহৃত হয়। যেভাবে এই কীগুলোকে নিযুক্ত করা হয় তা সিমেট্রিক এবং অ্যাসিমেট্রিক এনক্রিপশনের মধ্যে পার্থক্য তৈরি করে।
সিমেট্রিক এনক্রিপশন অ্যালগরিদম এনক্রিপশন এবং ডিক্রিপশন উভয় ফাংশনের কাজ করার জন্য একই কী ব্যবহার করে, আর অ্যাসিমেট্রিক এনক্রিপশন অ্যালগরিদম, এর বিপরীতে, ডেটা এনক্রিপ্ট করতে একটি কী এবং এটি ডিক্রিপ্ট করার জন্য আরেকটি কী ব্যবহার করে। অ্যাসিমেট্রিক সিস্টেমে, এনক্রিপশনের জন্য ব্যবহৃত কীটি পাবলিক কী নামে পরিচিত এবং অন্যদের সাথে অবাধে শেয়ার করা যায়। অন্যদিকে, ডিক্রিপশনের জন্য ব্যবহৃত কী-টি প্রাইভেট কী এবং গোপন রাখতে হয়।
উদাহরণস্বরূপ, অ্যালিস যদি ববকে কোনো বার্তা পাঠায় যা সিমেট্রিক এনক্রিপশন দ্বারা সুরক্ষিত, তাকে ববের সাথে এনক্রিপশনের জন্য ব্যবহৃত একই কী শেয়ার করতে হবে যাতে সে বার্তাটি ডিক্রিপ্ট করতে পারে। এর মানে হল যে যদি কোনো ক্ষতিকর ব্যক্তি কী-টি ইন্টারসেপ্ট করে তাহলে এনক্রিপ্ট করা তথ্যে সে অ্যাক্সেস করতে সক্ষম হবে।
তবে, অ্যালিস যদি এর পরিবর্তে কোনো অ্যাসিমেট্রিক স্কিম ব্যবহার করে, তাহলে সে ববের পাবলিক কী দিয়ে বার্তাটি এনক্রিপ্ট করবে, আর বব তার প্রাইভেট কী দিয়ে এটিকে ডিক্রিপ্ট করতে পারবে। ফলে, অ্যাসিমেট্রিক এনক্রিপশন একটি উচ্চ স্তরের নিরাপত্তা প্রদান করে কারণ কেউ যদি তাদের বার্তাগুলোকে ইন্টারসেপ্ট করে ও ববের পাবলিক কী খুঁজে পায়, তবুও তারা বার্তাটি ডিক্রিপ্ট করতে পারবে না।
কী-এর দৈর্ঘ্য
সিমেট্রিক এবং অ্যাসিমেট্রিক এনক্রিপশনের মধ্যে আরেকটি কার্যকরী পার্থক্য হল কীগুলোর দৈর্ঘ্য, যা বিটে পরিমাপ করা হয় এবং প্রতিটি ক্রিপ্টোগ্রাফিক অ্যালগরিদম দ্বারা প্রদত্ত নিরাপত্তার স্তরের সাথে সরাসরি সম্পর্কিত।
সিমেট্রিক স্কিমগুলোতে, কী এলোমেলোভাবে নির্বাচন করা হয় এবং নিরাপত্তার প্রয়োজনীয় স্তরের উপর নির্ভর করে তাদের দৈর্ঘ্য সাধারণত 128 বা 256 বিটে নির্ধারন করা হয়। তবে অ্যাসিমেট্রিক এনক্রিপশনে, পাবলিক ও প্রাইভেট কী-গুলোর মধ্যে একটি গাণিতিক সম্পর্ক থাকতে হবে, যার অর্থ দুটির মধ্যে একটি গাণিতিক প্যাটার্ন রয়েছে। এনক্রিপশন ক্র্যাক করার জন্য এই প্যাটার্নটিকে আক্রমণকারীরা সম্ভাব্যভাবে কাজে লাগাতে পারে বিধায়, একটি সমতুল্য স্তরের নিরাপত্তা নিশ্চিত করার জন্য অ্যাসিমেট্রিক কী-গুলোকে অনেক বেশি লম্বা হতে হয়। কী দৈর্ঘ্যের পার্থক্য এতটাই স্পষ্ট যে একটি 128-বিট সিমেট্রিক কী এবং একটি 2,048-বিট অ্যাসিমেট্রিক কী প্রায় একই স্তরের নিরাপত্তা প্রদান করে।
সুবিধা এবং অসুবিধাসমূহ
উভয় ধরনের এনক্রিপশনেরই একে অপরের তুলনায় সুবিধা ও অসুবিধা রয়েছে। সিমেট্রিক এনক্রিপশন অ্যালগরিদমগুলো অনেক দ্রুত এবং কম কম্পিউটেশনাল শক্তির প্রয়োজন হয়, কিন্তু তাদের দুর্বলতা হল কী বিতরণ। যেহেতু একই কী তথ্য এনক্রিপ্ট এবং ডিক্রিপ্ট করার জন্য ব্যবহার করা হয়, সেই কীটি অবশ্যই এমন সকল ব্যক্তির কাছে বিতরণ করতে হবে যার ডেটা অ্যাক্সেস করতে হবে, যা স্বাভাবিকভাবেই নিরাপত্তা ঝুঁকিগুলোকে সক্রিয় করে (আগে যেভাবে ব্যাখ্যা করা হয়েছে)।
বিপরীতভাবে, এনক্রিপশনের জন্য অ্যাসিমেট্রিক এনক্রিপশন পাবলিক কী এবং ডিক্রিপশনের জন্য প্রাইভেট কী ব্যবহার করে কী বিতরণের সমস্যার সমাধান করে। তবে আপোসের দিকটি হল এই যে, অ্যাসিমেট্রিক এনক্রিপশন সিস্টেম সিমেট্রিক সিস্টেমের তুলনায় খুব ধীর এবং তাদের বিশাল লম্বা কী দৈর্ঘ্যের ফলে অনেক বেশি কম্পিউটিং শক্তির প্রয়োজন হয়।
ব্যবহার ক্ষেত্র
সিমেট্রিক এনক্রিপশন
দ্রুততর গতির কারণে, অনেক আধুনিক কম্পিউটার সিস্টেমে ডেটা সুরক্ষার জন্য সিমেট্রিক এনক্রিপশন ব্যাপকভাবে ব্যবহৃত হয়। উদাহরণস্বরূপ, অ্যাডভান্সড এনক্রিপশন স্ট্যান্ডার্ড (AES), মার্কিন যুক্তরাষ্ট্র সরকার দ্বারা শ্রেণীবদ্ধ এবং সংবেদনশীল তথ্য এনক্রিপ্ট করতে ব্যবহৃত হয়। AES, পূর্ববর্তী ডেটা এনক্রিপশন স্ট্যান্ডার্ড (DES)-কে প্রতিস্থাপন করেছে, যা 1970-এর দশকে সিমেট্রিক এনক্রিপশনের একটি স্ট্যান্ডার্ড হিসেবে তৈরি হয়েছিল।
অ্যাসিমেট্রিক এনক্রিপশন
অ্যাসিমেট্রিক এনক্রিপশন এমন সিস্টেমে প্রয়োগ করা যেতে পারে যেখানে অনেক ব্যবহারকারীকে একটি বার্তা বা ডেটার সেট এনক্রিপ্ট এবং ডিক্রিপ্ট করতে হতে পারে, বিশেষ করে যখন গতি এবং কম্পিউটিং শক্তি চিন্তার কোনো বিষয় নয়। এই ধরনের সিস্টেমের একটি উদাহরণ হল এনক্রিপ্ট করা ইমেইল, যেখানে একটি পাবলিক কী কোনো বার্তা এনক্রিপ্ট করতে এবং একটি প্রাইভেট কী এটি ডিক্রিপ্ট করতে ব্যবহার করা যেতে পারে।
হাইব্রিড সিস্টেম
অনেক অ্যাপ্লিকেশনে, সিমেট্রিক এবং অ্যাসিমেট্রিক এনক্রিপশন একসাথে ব্যবহার করা হয়। এই ধরনের হাইব্রিড সিস্টেমের সাধারণ উদাহরণ হল সিকিউরিটি সকেট লেয়ার (SSL) এবং ট্রান্সপোর্ট লেয়ার সিকিউরিটি (TLS) ক্রিপ্টোগ্রাফিক প্রোটোকল, যা ইন্টারনেটের মধ্যে নিরাপদ যোগাযোগ প্রদানের জন্য ডিজাইন করা হয়েছিল। SSL প্রোটোকল এখন অনিরাপদ বলে বিবেচিত হয় এবং এর ব্যবহার বন্ধ করা উচিত। বিপরীতে, TLS প্রোটোকলগুলোকে নিরাপদ বলে মনে করা হয় এবং সকল প্রধান ওয়েব ব্রাউজার এটিকে ব্যাপকভাবে ব্যবহার করে।
ক্রিপ্টোকারেন্সি কি এনক্রিপশন ব্যবহার করে?
অনেক ক্রিপ্টোকারেন্সি ওয়ালেটে এনক্রিপশন কৌশল ব্যবহার করা হয় এন্ড-ইউজারদের নিরাপত্তার বর্ধিত স্তর প্রদান করার একটি উপায় হিসেবে। উদাহরণস্বরূপ, এনক্রিপশন অ্যালগরিদম প্রয়োগ করা হয় যখন ব্যবহারকারীরা তাদের ক্রিপ্টো ওয়ালেটগুলোর জন্য একটি পাসওয়ার্ড সেট আপ করে, যার অর্থ সফ্টওয়্যারটি অ্যাক্সেস করতে ব্যবহৃত ফাইলটি এনক্রিপ্ট করা ছিল।
তবে, বিটকয়েন এবং অন্যান্য ক্রিপ্টোকারেন্সি পাবলিক-প্রাইভেট কী জোড়া ব্যবহার করার কারণে, একটি সাধারণ ভুল ধারণা রয়েছে যে ব্লকচেইন সিস্টেমগুলো অ্যাসিমেট্রিক এনক্রিপশন অ্যালগরিদম ব্যবহার করে। যদিও পূর্বে যেমনটি উল্লেখ করা হয়েছে যে অ্যাসিমেট্রিক এনক্রিপশন এবং ডিজিটাল স্বাক্ষর হলো অ্যাসিমেট্রিক ক্রিপ্টোগ্রাফির (পাবলিক-কী ক্রিপ্টোগ্রাফি) দুটি প্রধান ব্যবহার ক্ষেত্র।
অতএব, সকল ডিজিটাল স্বাক্ষর সিস্টেম এনক্রিপশন কৌশল ব্যবহার করে না, এমনকি একটি পাবলিক এবং একটি প্রাইভেট কী দেখা গেলেও। আসলে, একটি বার্তা এনক্রিপ্ট করা ছাড়াই ডিজিটালভাবে স্বাক্ষর করা যায়। এনক্রিপ্ট করা বার্তা স্বাক্ষর করার জন্য ব্যবহার করা যেতে পারে তার একটি উদাহরণ হলো RSA অ্যালগরিদম, কিন্তু বিটকয়েন (ECDSA নামে পরিচিত) দ্বারা ব্যবহৃত ডিজিটাল স্বাক্ষর অ্যালগরিদমটি মোটেও এনক্রিপশন ব্যবহার করে না।
শেষ কথা
আজকের ডিজিটাল নির্ভর বিশ্বে সংবেদনশীল তথ্য ও যোগাযোগকে সুরক্ষিত রাখতে সিমেট্রিক এবং অ্যাসিমেট্রিক এনক্রিপশন উভয়ই গুরুত্বপূর্ণ ভূমিকা পালন করে। উভয়েরই দরকার থাকলেও, তাদের প্রতিটিরই নিজস্ব সুবিধা ও অসুবিধা রয়েছে এবং ভিন্ন ভিন্ন অ্যাপ্লিকেশনে ব্যবহার করা হয়। ক্রিপ্টোগ্রাফির বিজ্ঞান নতুন এবং আরো পরিশীলিত হুমকির বিরুদ্ধে সুরক্ষা দেয়ার জন্য বিকশিত হচ্ছে, সিমেট্রিক এবং অ্যাসিমেট্রিক উভয় ক্রিপ্টোগ্রাফিক সিস্টেম সম্ভবত কম্পিউটার নিরাপত্তায় প্রাসঙ্গিক থাকবে।