আসসালামু আলাইকুম। কেমন আছেন সবাই?
আজকে একটা বিষয় সম্পর্কে বিস্তারিত জানতে পারলাম যেটা সপর্কে অনেকদিন থেকেই আমার জানার অগ্রহ ছিলো।আমাদের মতো নুবদের জন্য আর টেক সাইট হিসেবে ট্রিকবিডিতেও এটা নিয়ে একটা পোস্ট থাকা উচিৎ।অনেকেই বিষয়টি জানেন কিন্তু আমার মতো যারা আছেন অনেকেই হয়তো জানে না,তদের জন্য পোস্টটা ইন্টারেস্টিং হবে আশা করছি!
আমরা বিভিন্ন ওয়েবসাইটে ঢুকলে এড্রেস বার এ এরকম প্যাড-লক এর মতো সিকিউর একটি আইকন দেখতে পাই।
এটি কি, এর উপকারিতা কি এবং একজন ওয়েবমাস্টার কেনো এটি ব্যবহার করবেন?
উপরিউক্ত আইকনটি শো করার পেছনে যেটি কাজ করে, তা হলো এস-এস-এল অথবা টি-এল-এস যা https প্রোটোকল! SSL থাকলে সিকিউর আইকন শো হবে, এর মানে কিন্তু এই নয় যে উপরিউক্ত সাইট টা নিরাপদ বা অন্যকিছু। আসলে SSL এর ওই আইকন দিয়ে আপনাকে বুঝায় যে, কোন প্রোটোকলে ডেটা সেন্ড বা রিসিভ হবে।
যেকোনো ওয়েব পেজ খুলতে যে প্রোটোকল অর্থ্যাৎ যে মাধ্যমে খোলা হয়, তা হচ্ছে http. আমরা সাধারণত আমাদের বিজ্ঞান বা আইসিটি র বইয়ে পড়ে এসেছি এটা। http যেহেতু হাইপারটেক্সট ট্রান্সফার প্রোটোকল, তার মানে এটি পুরোপুরি একদম Text আকারে ডেটা আদান প্রদান করে ব্রাউজার এবং সারভার বা ওয়েবসাইট এর মধ্যে।
এটি যেহেতু পিউর Text আকারে ডেটা আদান প্রদান করে। মানে, আপনি যদি একটি http শো করা (এড্রেস বার এ শুধু http শো করলে) সাইটে ঢুকেন আর সেখানে গিয়ে আপনি যদি কোথাও একাউন্ট খুলেন, পাসওয়ার্ড দেন, আপনার ক্রেডিট কার্ডের নাম্বার, ফোন নাম্বার, ইত্যাদি তথ্য দিয়ে একাউন্ট খোলার জন্য রেজিস্টার বাটনে ক্লিক করেন, আপনার ব্রাউজার ডিরেক্ট এই তথ্যগুলো পিউর Text আকারেই ওই ওয়েবসাইটের ওয়েব সারভারে সেন্ড করবে।
এতে বিপদ কিসের? বিপদ এই যে, আপনার তথ্যটা তো একদম Text আকারে গেলো। মাঝখানে যেকেউ চাইলে এবার আপনার এই তথ্য হাতিয়ে নিয়ে আপনার সব তথ্য পেয়ে গেলো। কারণ ডিরেক্ট Text আকারে ডেটা যাচ্ছে যা মানুষের পক্ষে বুঝা সম্ভব। যেমন, আপনি যদি পাসওয়ার্ড 123 লিখেন, আপনার এই 123 Text আকারে ইন্টারনেট দিয়ে ওই সাইটে পৌছাবে। এবার মাঝখান থেকে কেউ চাইলে এই ডেটা পেলে সে দেখবে পাসওয়ার্ড 123 লিখা। পেয়ে গেলো আপনার তথ্য।
তাহলে এ তো মহা বিপদ। ঠিক এটার জন্য http এর সাথে SSL অথবা TLS (TLS হচ্ছে SSL এর সাকসেসর বা নতুন ভার্শন বলতে পারেন, তবে জিনিস একই) যুক্ত হয়ে https করা হলো। মানে, সিকিউর হাইপারটেক্সট ট্রান্সফার প্রোটোকল।
SSL হচ্ছে সিকিউর সকেটস লেয়ার আর TLS হচ্ছে, SSL এর ছেলে পুত্রসন্তান, যা হচ্ছে ট্রান্সপোর্ট লেয়ার সিকিউরিটি। SSL এর কাজ হচ্ছে আপনার ব্রাউজার এবং ওয়েব সারভারের মধ্যে একটি সিকিউর রাস্তা বা প্রোটোকল বানিয়ে দেওয়া, যা কিনা আপনার ডেটাকে সুরক্ষিত রাখবে।
যখন কোন সাইটে SSL সার্টিফিকেট ইন্সটল করা হয়, তখন এই সার্টিফিকেটে দুইটা Key থাকে। একটি পাবলিক কী, একটি প্রাইভেট কী। আপনি যখন কোন https প্রোটোকল ওয়ালা সাইটে ঢুকবেন, ওই সাইট আপনার ব্রাউজারকে আপনার SSL সার্টিফিকেট এর ডিটেইলস দেয়। যেমন, আপনি https ওয়ালা সাইটে ঢুকলে এই প্যাড-লক বা তালা র মতো দেখতে আইকনে ক্লিক দিলেই দেখবেন সব ডিটেইলস দেখাবে যে, এই সাইটের এই SSL টা কোন কোম্পানি দিয়েছে। সেই কোম্পানিটাকে আপনার ব্রাউজার যদি ট্রাস্টেড মনে করে তাহলে SSL Handshake সম্পন্ন হয়। মানে হচ্ছে, SSL চাইলে আপনিও বানাতে পারবেন আপনার মতো বিভিন্ন ডিটেইলস দিয়ে এবং সেটা সাইটের সারভারেও ইন্সটল দিতে পারবেন। সেটাকে বলে Self Signed SSL. কিন্তু, আপনার বানানো SSL তো ব্রাউজার চিনেনা। তাই আপনার SSL ট্রাস্টেড না হবার ফলে ব্রাউজার আপনাকে সাইটে প্রবেশ করতেই দিবেনা।
যাজ্ঞে, তো ব্রাউজার যদি দেখে আপনার SSL টা ভালো কোন কোম্পানি ইস্যু করেছে যেমন গুগল, ক্লাউডফ্লেয়ার, মাইক্রোসট, নেমচিপ আরও কতো কতো অফিসিয়াল কোম্পানি আছে, যারা SSL বিক্রি করে আবার অনেকে ফ্রিতেও দেয় ট্রায়াল হিসেবে।
SSL যদি ভেলিড হয়, তখন SSL আপনার ব্রাউজারকে একটি পাবলিক Key দেয়। এবার, আপনি ওই ওয়েবসাইটে যা করবেন, যা লিখবেন, রেজিস্ট্রেশন করুন বা লগিন করুন বা আপনার কোন তথ্য দিবেন, আপনার ব্রাউজার আপনার ওই ডেটাকে ওইযে SSL একটা Public Key দিলো, ওটা দিয়ে এমন এক এনক্রিপ্টেড ডেটাতে রূপান্তর করবে, যেটা কেউ বুঝবেনা। যেমন, আপনি পাসওয়ার্ড লিখলেন 123, আপনার ব্রাউজার এটাকে ওই পাবলিক কী দিয়ে Encrypt করে yT4SGrS এমন বানিয়ে দিলো। এখন এই yT4SGrS এই ডেটা ইন্টারনেট দিয়ে যখন ওই সাইটের সারভারে পৌছাবে, তখন ওই সারভারে থাকা SSL এর প্রাইভেট Key আবার এই yT4SGrS কে ডিক্রিপ্ট করে 123 বানিয়ে নিবে।
সুতরাং, আপনি যদি 123 পাসওয়ার্ড লিখে সেন্ড করেন, সেটা ব্রাউজার পাঠাবে yT4SGrS লিখে। এখন এই yT4SGrS ডেটা কেউ পেয়ে গেলেই কি? সারাজীবন চেষ্টা করলেও সে জানতেই পারবেনা এই yT4SGrS এর অর্থ আদৌ কোনটা ছিল। কারণ, এই yT4SGrS শুধুমাত্র ডিক্রিপ্ট হবে ওই সারভারের SSL এর প্রাইভেট কী দিয়ে।
ঠিক এই নিয়মে https ওয়ালা সাইট এবং ব্রাউজারের মধ্যে ডেটা আদান প্রদান হয়। এতে ডেটা সুরক্ষিত থাকে।
এটি কারা এবং কেনো ব্যবহার করবে?
– যদি আপনার এমন কোন সাইট থাকে, যেখানে ইউজারের তথ্য রয়েছে বা আপনার কোন শপিং সাইট রয়েছে, যেখানে আপনার ইউজার রা মূল্যবান তথ্য আদান প্রদান করে, তখন অবশ্যই আপনার প্রয়োজন হবে একটি ট্রাস্টেড SSL এর। অন্যথায় কোন হ্যাকার যেকোনোভাবে আপনার ইউজারের তথ্য হাতিয়ে নিয়ে অনেক বড়সড় দুর্ঘটনা ঘটিয়ে দিতে পারে।
তো এই ছিলো SSL সম্পর্কে কিছু ইনফর্মেশন। যাদের ফ্রী SSL চাই, তারা ক্লাউডফ্লেয়ার অথবা আকামাই নামক দুইটা CDN কোম্পানি ইউজ করতে পারেন। তারা ফ্রীতে SSL দেয়। এছাড়া গুগল ও এখন Google Trusted নামে SSL দেয় ফ্রীতে। তবে এটা একটু ভিন্ন। আপনারা ক্লাউডফ্লেয়ার ইউজ করতে পারেন। ক্লাউডফ্লেয়ার নিজেও SSL ইস্যু করে ফ্রীতে আবার গুগলের SSL ও দেয় তারাই।
SSL জিনিসটা শুধুমাত্র এই নয় যে আপনি জানলেন যে, এটা থাকা মানে সিকিউর। আরও অনেক কিছুই যুক্ত রয়েছে এর সাথে।
Thank You Mehedi Hasan bro.
2 thoughts on "ব্রাউজারে ওয়েব এড্রেসের পাশে তালার মতো আইকনটি কি এবং কেন থাকে"