END TO END ENCRYPTION সম্পর্কিত কিছু তথ্য:
Whatsapp দাবি করেছে যে ভারত সরকারের তথ্য সম্পর্কিত নিয়ম মানলে তাতে হোয়াটসঅ্যাপ ব্যবহারকারীদের তথ্য গোপন থাকবে না।
আসুন দেখে নেওয়া যাক END TO END ENCRYPTION কি ?
আপনি আপনার পরিচিত কাউকে কোনো গোপন তথ্য বা ম্যাসেজ পাঠাতে চাচ্ছেন এবং সেটা যাতে অন্য কেউ দেখলেও বুঝতে না পারে। তখন আপনি আপনার ম্যাসেজটাকে এমনভাবে Encrypt করে পাঠাবেন যাতে করে শুধুমাত্র যাকে পাঠাচ্ছেন সে এটাকে Decrypt করে পড়তে পারে। এই পদ্ধতিটাই হচ্ছে Encryption এবং এক্ষেত্রে যেটা ব্যবহার করে Encrypt/Decrypt করা হয় সেটাকে বলে Key. এক্ষেত্রে যদি একই key দিয়ে Encrypt এবং Decrypt করা হয় তাহলে সেটাকে বলে Symmetric Encryption.
কিন্তু এটা একটু কম নির্ভরযোগ্য প্রসেস। কারণ ম্যাসেজ যিনি পাঠাচ্ছেন এবং যিনি গ্রহন করছেন দুজনের কাছেই একই Key থাকতে হবে, এবং এই Key টা গোপন রাখা তখন দুষ্কর। কারণ আপনাকে তো এই Key টাও গোপনীয়তার সাথে আরেকজনের কাছে পাঠাতে হবে। তাছাড়া একজনের কাছে যেই Key দিয়ে ম্যাসেজ পাঠিয়েছেন আরেকজনের কাছে তো সেই একই Key দিয়ে ম্যাসেজ পাঠালে সেটা আগেরজন চাইলেই পড়তে পারবে। এজন্য আরেকটু ভালো পদ্ধতি ব্যবহার করা হয়ে যেখানে ২টি ভিন্ন key ব্যবহার করা হয়, যেটা Asymmetric encryption বা Public-key encryption নামে পরিচিত।
এ পদ্ধতিতে যিনি ম্যাসেজ পাঠাচ্ছেন তাঁর কাছে একটা private key থাকে যেটা দিয়ে তিনি তাঁর কাছে পাঠানো ম্যাসেজ Decrypt করে পড়তে পারেন। আর তিনি একটা public key সবার জন্য উন্মুক্ত করে দেন যেটা ব্যবহার করে যে কেউ তাকে ম্যাসেজ Encrypt করে পাঠাতে পারে। যেহেতু শুধুমাত্র private key ব্যবহার করেই ম্যাসেজটি পড়া যাবে, তাই এই পদ্ধতিতে অন্য কেউ চাইলেই ম্যাসেজটি পড়তে পারবে না।
আমরা যখন কোনো ম্যাসেজিং এপ্লিকেশন ব্যবহার করে ম্যাসেজ আদান প্রদান করি তখন সাধারণত ম্যাসেজগুলো প্লেইন টেক্সট(Plain text) হিসেবেই নেটওয়ার্কে যাওয়া আসা করে। সে কারণে নেটওয়ার্ক থেকে এই প্লেইন টেক্সট পড়ে নেয়া খুব কঠিন কিছু না। এটা ছাড়াও আমরা যেই ম্যাসেজিং প্লাটফর্ম (যেমনঃ Messenger, Whatsapp, Telegram ইত্যাদি) ব্যবহার করছি তাঁদের সার্ভারেও এই ম্যাসেজগুলো এরকম প্লেইনটেক্সট হিসেবেই থাকে।
কোনো কারণে সরকারের বা কোনো গোয়েন্দাসংস্থার ধমকিতে বাধ্য হয়ে ব্যবহারকারীদের এই ম্যাসেজগুলো তাদের কাছে হস্তান্তর করা লাগতে পারে। কিংবা কোনো হ্যাকার যদি তাঁদের সার্ভারের এক্সেস পেয়ে যায় তাহলেও তো এই তথ্যগুলো বেহাত হয়ে যাবে। এ সকল কারণে এভাবে প্লেইন টেক্সট হিসেবে ম্যাসেজ আদান প্রদান বা সংরক্ষণ করাকে অনেক ব্যবহারকারীই নিরাপদ মনে করেন না।
ব্যবহারকারীদের আশ্বস্ত করার জন্য অনেক ম্যাসেজিং কোম্পানী হয়তো বলে থাকে আমরা ইউজারদের ম্যাসেজ এনক্রিপ্ট করে রাখি, সুতরাং ভয়ের কিছু নেই। কিন্তু এখানে একটা বড় প্রশ্ন থেকে যায় যে, এই যে ইউজারের ম্যাসেজ এনক্রিপ্ট করে রাখা হচ্ছে আবার প্রাপকের কাছে এই ম্যাসেজ ডিক্রিপ্ট করে দেখানো হচ্ছে, এই প্রসেসে key টা কার কাছে থাকে?
key যদি ম্যাসেজিং কোম্পানীর সার্ভারে থাকে বা কোনোভাবে তাঁদের কাছেই থাকে, তাহলেও তো জিনিসটা সিকিউর হলো না। কারণ সেই ক্ষেত্রে একই তো ব্যাপার, যে কোম্পানী কোনো কারণে চাইলে ঐ key ব্যবহার করে ইউজারের ম্যাসেজ পড়তে পারবে। হয়তো তাঁরা সেটা কখনোই করবে না, কিন্তু তাঁদের সেই সুযোগ তো আছে। একই রকমভাবে, key টা যদি সার্ভারে সেইভ থাকে তাহলেও তো সেটা হ্যাকার থেকে নিরাপদ না।
এই রকম পরিস্থিতিতেই, আরো জোরদার সিকিউরিটি হিসেবে আগমন End-to-End এনক্রিপশনের।
মানে যদি এমন হয় যে, আমি যেই key দিয়ে এনক্রিপ্ট করলাম সেটা আবার প্রাপকের কাছে পাঠানোর চেষ্টা করি, যাতে করে সেটা ব্যবহার করে সে ডিক্রিপ্ট করতে পারে, তাহলেও তো সেটা ইনসিকিউর নেটওয়ার্কের মধ্য দিয়েই যাবে। সিকিউরিটি তো তাহলে থাকছে না।
আসলে End-to-End এনক্রিপশনে Asymmetric Encryption ব্যবহার করা হয়। যখনই কোনো একজন ইউজার ম্যাসেজিং এপ্লিকেশনটা তাঁর ডিভাইসে ইন্সটল করে তখন ডিভাইসেই তাঁর জন্য একটা public key এবং private key পেয়ার তৈরি হয়। ইউজারের এই private key টা শুধুমাত্র তাঁর ডিভাইসেই সংরক্ষিত থাকে, কখনোই নেটওয়ার্কে আদান প্রদান হয় না। শুধুমাত্র তাঁর public key টাই অন্যদের কাছে এক্সেসিবল থাকে এবং সার্ভারে সেইভ থাকে। তো যখনই A , B কে কোনো ম্যাসেজ পাঠাতে চান, তিনি B এর public key ব্যবহার করে ম্যাসেজটা এনক্রিপ্ট করে পাঠান আর B সেই ম্যাসেজ তাঁর নিজের private key ব্যবহার করে ডিক্রিপ্ট করে পড়েন। যেহেতু B এর private key শুধুমাত্র তাঁর নিজের কাছেই থাকে, সুতরাং অন্য কেউ এমনকি ম্যাসেজিং এপ্লিকেশন কোম্পানীও এই ম্যাসেজ পড়তে পারবে না। কারণ তাঁদের কাছে বা তাঁদের সার্ভারে B এর private key সেইভ করা নেই।
আশা করি কিছুটা হলেও End-to-End এনক্রিপশন এবং ম্যাসেজিং এপগুলো এটা কেন, কীভাবে ব্যবহার করে সেটা সম্পর্কে ধারণা পেয়েছেন।
তবে আমি বলি কি, যতই ম্যাসেজিং এপগুলো আমাদের আশ্বস্ত করার চেষ্টা করুক না কেন যে আমাদের ম্যাসেজগুলো তাঁরা যথেষ্ট সিকিউরিটি নিশ্চিত করে আদান প্রদান করে এবং এমনকি তাঁরাও এই ম্যাসেজ পড়তে পারে না — এসব কথায় খুব একটা বিশ্বাস করার দরকার নেই। কেন বলছি? কারণ, ম্যাসেজিং এপগুলো তো বেশীরভাগই ক্লোজডসোর্স, অর্থাৎ তাঁদের কোডে তাঁরা কি করছে সেটা আমরা জানছি না। তাঁরা যদি public key এর সাথে ইউজারের private key ও সার্ভারে স্টোর করে রাখে, সেটা কি আমরা জানতে পারছি? তাঁদের মুখের কথাই তো আমাদের ভরসা। তাই, তাঁদের কথা চোখ বন্ধ করে বিশ্বাস করে আসলে খুব একটা ফায়দা নেই। মোদ্দাকথা, জগতের কোনো সিস্টেম, কোনো মাধ্যমই পুরোপুরি সিকিউর না, এটা সবসময় মাথায় রাখলেই হলো।
তথ্য সূত্র : প্রোগামিং পাতা
Comments
Post a Comment