HTTPS এবং TLS কীভাবে কাজ করে: ধাপে ধাপে গাইড

Security2026-10-23TryQuickToolBox

আপনি সম্ভবত আপনার ব্রাউজারে তালা আইকনটি দেখেছেন এবং ধরে নিয়েছেন যে আপনার সংযোগটি সুরক্ষিত। কিন্তু আপনি যখন একটি HTTPS সাইটে যান তখন আসলে কী ঘটে? আপনার ব্রাউজার কীভাবে জানে যে এটি প্রকৃত সার্ভারের সাথে কথা বলছে, কোনো প্রতারকের সাথে নয়? এবং কেন TLS কখনও কখনও আপনার সাইটকে ধীর করে দেয়?

এই গাইডে, আমরা ধাপে ধাপে হ্যান্ডশেকের মধ্য দিয়ে গিয়ে HTTPS এবং TLS-এর রহস্য উন্মোচন করব। আপনি সার্টিফিকেটের ভূমিকা, সিমেট্রিক এবং অ্যাসিমেট্রিক এনক্রিপশন, এবং আপনার নিজের প্রকল্পে TLS কীভাবে যাচাই ও অপ্টিমাইজ করবেন তা শিখবেন।

HTTPS এবং TLS আসলে কী করে

HTTPS হলো TLS (ট্রান্সপোর্ট লেয়ার সিকিউরিটি)-এর উপরে স্তরযুক্ত HTTP। TLS তিনটি গ্যারান্টি প্রদান করে:

TLS ছাড়া, HTTP ট্রাফিক প্লেইনটেক্সটে পাঠানো হয়। নেটওয়ার্ক পাথের যে কেউ (Wi-Fi হটস্পট, ISP, আপোস করা রাউটার) এটি পড়তে বা পরিবর্তন করতে পারে। TLS কোনো HTTP ডেটা বিনিময়ের আগে একটি সুরক্ষিত চ্যানেল স্থাপন করে এটি সমাধান করে।

TLS হ্যান্ডশেক: ধাপে ধাপে

হ্যান্ডশেক হলো যেখানে জাদু ঘটে। এটি একটি আলোচনা যা শেয়ার্ড কী স্থাপন করে এবং পরিচয় যাচাই করে। এখানে TLS 1.2 এবং 1.3 (আজ আপনি যে দুটি সংস্করণের সম্মুখীন হবেন) এর সরলীকৃত প্রবাহ দেওয়া হলো।

ধাপ ১: ক্লায়েন্ট হ্যালো

ক্লায়েন্ট (ব্রাউজার) একটি ClientHello বার্তা পাঠায় যাতে থাকে:

ধাপ ২: সার্ভার হ্যালো এবং সার্টিফিকেট

সার্ভার একটি ServerHello (নির্বাচিত সংস্করণ, সাইফার স্যুট, সার্ভার র‍্যান্ডম) এবং তার সার্টিফিকেট দিয়ে সাড়া দেয়। সার্টিফিকেটে সার্ভারের পাবলিক কী থাকে এবং এটি একটি সার্টিফিকেট অথরিটি (CA) দ্বারা স্বাক্ষরিত।

ক্লায়েন্ট সার্টিফিকেট যাচাই করে: এটি কি মেয়াদোত্তীর্ণ? এটি কি একটি বিশ্বস্ত CA দ্বারা জারি করা? ডোমেইনটি কি মেলে? যদি না হয়, ব্রাউজার একটি সতর্কতা দেখায়।

ধাপ ৩: কী এক্সচেঞ্জ

সার্ভারের পাবলিক কী (বা ডিফি-হেলম্যান প্যারামিটার) ব্যবহার করে, ক্লায়েন্ট এবং সার্ভার একটি শেয়ার্ড প্রি-মাস্টার সিক্রেট তৈরি করে। TLS 1.3-এ, এটি এফেমেরাল ডিফি-হেলম্যান (ECDHE) দিয়ে করা হয়, যা ফরওয়ার্ড সিক্রেসি প্রদান করে: এমনকি যদি সার্ভারের প্রাইভেট কী পরে আপোস করা হয়, তবুও অতীতের সেশনগুলি সুরক্ষিত থাকে।

ধাপ ৪: সমাপ্ত

উভয় পক্ষ নতুন প্রাপ্ত কী দিয়ে এনক্রিপ্ট করা একটি Finished বার্তা পাঠায়। যদি ডিক্রিপশন সফল হয়, হ্যান্ডশেক সম্পূর্ণ হয়। এরপর থেকে, সমস্ত অ্যাপ্লিকেশন ডেটা (HTTP) সিমেট্রিক এনক্রিপশন (যেমন, AES-GCM বা ChaCha20-Poly1305) দিয়ে এনক্রিপ্ট করা হয়।

TLS 1.3 উন্নতি

TLS 1.3 হ্যান্ডশেককে এক রাউন্ড ট্রিপ (1-RTT) এ কমিয়ে দেয় এবং পুনরাবৃত্ত দর্শনার্থীদের জন্য 0-RTT পুনরারম্ভ সমর্থন করে। এটি পুরানো অ্যালগরিদমগুলিও সরিয়ে দেয়, এটিকে দ্রুত এবং আরও সুরক্ষিত করে তোলে। বেশিরভাগ আধুনিক ব্রাউজার এবং সার্ভার TLS 1.3 সমর্থন করে।

TLS-এ সিমেট্রিক বনাম অ্যাসিমেট্রিক এনক্রিপশন

TLS ভালো কারণে উভয় ধরনের এনক্রিপশন ব্যবহার করে:

এই হাইব্রিড পদ্ধতি আপনাকে পাবলিক-কী ক্রিপ্টোগ্রাফির সুরক্ষা এবং সিমেট্রিক সাইফারগুলির কর্মক্ষমতা দেয়।

সার্টিফিকেট: বিশ্বাসের অ্যাঙ্কর

একটি সার্টিফিকেট একটি পাবলিক কীকে একটি ডোমেইন নামের সাথে আবদ্ধ করে এবং একটি CA দ্বারা স্বাক্ষরিত হয়। ব্রাউজার এবং অপারেটিং সিস্টেম বিশ্বস্ত রুট CA-এর একটি স্টোর নিয়ে আসে। যখন একটি সার্ভার তার সার্টিফিকেট উপস্থাপন করে, ক্লায়েন্ট একটি বিশ্বস্ত রুট পর্যন্ত বিশ্বাসের চেইন তৈরি করে।

সার্টিফিকেটের সীমিত জীবনকাল থাকে (এখন প্রায়শই Let's Encrypt-এর সাথে 90 দিন)। মেয়াদোত্তীর্ণ সার্টিফিকেট ব্রাউজার ত্রুটি সৃষ্টি করে, তাই নবায়ন স্বয়ংক্রিয় করুন।

ব্যবহারিক: OpenSSL দিয়ে TLS পরিদর্শন

আপনি openssl কমান্ড-লাইন টুল ব্যবহার করে একটি সার্ভারের TLS কনফিগারেশন পরিদর্শন করতে পারেন। এটি হ্যান্ডশেক ব্যর্থতা ডিবাগ করতে বা সাইফার স্যুট যাচাই করতে সহায়তা করে।

openssl s_client -connect example.com:443 -servername example.com -tls1_3

এটি সার্ভারের সাথে সংযোগ করে এবং সার্টিফিকেট চেইন, আলোচিত সাইফার, এবং সেশন বিবরণ প্রিন্ট করে। সার্টিফিকেট বৈধ কিনা নিশ্চিত করতে Verify return code: 0 (ok) খুঁজুন।

সার্টিফিকেটের মেয়াদোত্তীর্ণতা পরীক্ষা করতে:

echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | openssl x509 -noout -dates

সাধারণ TLS সমস্যা এবং কীভাবে এড়ানো যায়

TLS কর্মক্ষমতা অপ্টিমাইজ করা

TLS হ্যান্ডশেকের কারণে লেটেন্সি যোগ করে। এটি কমানোর উপায় এখানে:

সচরাচর জিজ্ঞাসিত প্রশ্ন

HTTPS এবং TLS-এর মধ্যে পার্থক্য কী?

HTTPS হলো HTTP-এর সুরক্ষিত সংস্করণ, এবং TLS হলো ক্রিপ্টোগ্রাফিক প্রোটোকল যা সুরক্ষা প্রদান করে। HTTPS সংযোগ এনক্রিপ্ট এবং প্রমাণীকরণ করতে TLS ব্যবহার করে।

TLS কীভাবে ফরওয়ার্ড সিক্রেসি প্রদান করে?

ফরওয়ার্ড সিক্রেসি নিশ্চিত করে যে এমনকি যদি সার্ভারের প্রাইভেট কী আপোস করা হয়, তবুও অতীতের সেশন কীগুলি উদ্ভাবন করা যায় না। এটি TLS 1.3 এবং আধুনিক TLS 1.2 কনফিগারেশনে এফেমেরাল ডিফি-হেলম্যান কী এক্সচেঞ্জ (ECDHE) ব্যবহার করে অর্জন করা হয়।

কেন আমি কিছু সাইটে সার্টিফিকেট ত্রুটি দেখি?

সার্টিফিকেট ত্রুটি সাধারণত বোঝায় যে সার্টিফিকেটটি মেয়াদোত্তীর্ণ, স্ব-স্বাক্ষরিত, ভিন্ন ডোমেইনের জন্য জারি করা, বা সার্টিফিকেট চেইন অসম্পূর্ণ। ব্রাউজার ম্যান-ইন-দ্য-মিডল আক্রমণ থেকে আপনাকে রক্ষা করতে এই ধরনের সার্টিফিকেট প্রত্যাখ্যান করে।

যখন আপনার TLS সংযোগ পরিদর্শন বা ডিবাগ করার প্রয়োজন হয়, Timestamp Converter-এর মতো টুলগুলি সার্টিফিকেট বৈধতার সময়কাল ডিকোড করতে এবং সময়-সম্পর্কিত সমস্যা ডিবাগ করতে আপনাকে সহায়তা করতে পারে।