HTTP বনাম HTTPS
পোস্টকার্ড নাকি খামবন্দী চিঠি?
TCP আর UDP এর কিছুটা বোঝার পরে মন্টু প্রশ্ন করে উঠলো, “কিন্তু ভাই ব্রাউজার এ তো TCP বা UDP লিখি না আমরা কোথাও দেখি ও না, সব জায়গায় দেখি HTTP আর HTTPS। এই দুইটা কি জিনিস আর তফাৎ ই বা কই এদের মধ্যে?”
মন্টুর প্রশ্ন শুনে বল্টু ভাই বললেন, "শোন, টিসিপি-ইউডিপি হলো রাস্তা। আর সেই রাস্তা দিয়ে তুই যে গাড়ি বা বাহনে করে মালপত্র পাঠাবি, সেটা হলো HTTP।"
ইন্টারনেটের শুরুতে সবকিছু HTTP (Hypertext Transfer Protocol) দিয়েই চলত। কিন্তু এর একটা বড় সমস্যা ছিল।
বল্টু ভাই মন্টুর দিকে ঝুঁকে জিজ্ঞেস করলেন, "তুই যদি গ্রামের বাড়িতে একটা খোলা পোস্টকার্ডে তোর গোপন পিন কোড বা প্রেমের চিঠি লিখে পাঠাস, কী হবে?" মন্টু চোখ বড় বড় করে বলল, "সর্বনাশ! পিয়ন থেকে শুরু করে পোস্ট অফিসের সবাই সেটা পড়ে ফেলবে!"
— "একদম তাই! HTTP হলো সেই খোলা পোস্টকার্ডের মতো।"
HTTP কেন নিরাপদ না?
তুই যখন ব্রাউজারে http:// দিয়ে কোনো সাইটে ঢুকিস এবং সেখানে পাসওয়ার্ড বা ক্রেডিট কার্ডের তথ্য দিস, সেই তথ্যটা প্লেইন টেক্সট (Plain Text) বা সাধারণ লেখা হিসেবে সার্ভারের দিকে যায়।
মাঝখানের রাস্তায় হ্যাকাররা ওৎ পেতে বসে থাকে (একে বলে Man-in-the-Middle Attack)। তারা চাইলেই তোর ওই খোলা পোস্টকার্ড পড়ে তোর পাসওয়ার্ড চুরি করে নিতে পারে। কোনো এনক্রিপশন বা তালা-চাবি নেই, একদম হুবহু যা লিখবি, হ্যাকার তাই দেখবে।
HTTPS: গোপন খামবন্দী চিঠি
এই সমস্যা মেটাতেই এলো HTTPS (Secure)। শেষের এই 'S' মানে হলো সিকিউরিটি।
এটা হলো তোর চিঠিটাকে একটা শক্ত খামে ভরে, আঠা দিয়ে আটকে, তার ওপর একটা তালা (Lock) লাগিয়ে পাঠানোর মতো।
- এনক্রিপশন (Encryption): তুই যখন পাসওয়ার্ড দিবি, HTTPS সেটাকে
123456থেকে বদলেaksjdh#@!skdjfএর মতো বিদঘুটে লেখায় পরিণত করে ফেলবে। - তালা-চাবি: এই তথ্যের তালা খোলার চাবি (Decryption Key) শুধু মাত্র তোর ব্রাউজার আর ওই নির্দিষ্ট সার্ভারের কাছেই আছে। মাঝপথে কোনো হ্যাকার প্যাকেটটা চুরি করলেও, সে খাম খুলতে পারবে না। খুললেও ভেতরে হিজিবিজি লেখা দেখে কিছুই বুঝবে না।

TLS/SSL: সিকিউরিটির জাদুকর
মন্টু জিজ্ঞেস করল, "ভাই, এই তালাটা লাগায় কে?" বল্টু ভাই বললেন, "এই তালা লাগানোর মেকানিজমটার নামই হলো SSL (Secure Sockets Layer) বা এটার আপডেট ভার্সন TLS (Transport Layer Security)।" SSL এখন অনেক পুরোনো এবং কিছুটা অনিরাপদ হয়ে গেছে। এখন আসলে আমরা সবাই TLS ব্যবহার করি, কিন্তু অভ্যাসবশত এখনো মুখে মুখে SSL-ই বলি।
সহজ কথায়:
HTTP + TLS/SSL = HTTPS
আজকাল তুই যদি http:// দিয়ে কোনো সাইটে ঢুকিস, ব্রাউজার তোকে লাল কালিতে ওয়ার্নিং দেবে- "Not Secure! এখানে খবরদার পাসওয়ার্ড দিও না!" আর https:// থাকলে দেখবি এড্রেস বারে একটা সুন্দর তালা (Padlock) আইকন দেখাচ্ছে, মানে তুই নিরাপদ।
মন্টুর কুইক নোট: বিড়ালটিউবে যেহেতু ইউজাররা লগইন করবে, তাই ভুলেও HTTP রাখা যাবে না। অবশ্যই টাকা খরচ করে বা ফ্রি-তে একটা SSL Certificate ম্যানেজ করে সাইটকে HTTPS করতে হবে। নইলে হ্যাকাররা ইউজারদের পাসওয়ার্ড চুরি করে বিড়ালের ভিডিও ডিলিট করে দেবে!