Foydalanuvchi brauzerda HTTPS sayt manzilini kiritganda, server bilan birinchi muloqot bir necha millisekund ichida sodir bo'ladi. Bu muloqot SSL yoki TLS handshake deb ataladi va bu jarayonda taraflar bir-birini taniydi, ishonchni o'rnatadi va keyingi shifrlangan aloqa uchun kalit yaratadi. Ko'rinishidan oddiy bo'lgan bu jarayon aslida bir nechta xavfsizlik mexanizmlarini birlashtiradi va Internetdagi mahfiylikning asosini tashkil qiladi.
Client hello bosqichi
Handshake foydalanuvchining brauzeri tomonidan boshlanadi. Brauzer serverga "client hello" xabarini jo'natadi va u o'z imkoniyatlarini bildiradi: qaysi TLS versiyalarini qo'llab-quvvatlaydi, qanday shifrlash to'plamlarini ishlatishi mumkin, qanday kompressiya usullarini biladi. Shuningdek mijoz tasodifiy raqam (client random) ham jo'natadi, bu raqam keyinroq kalit yaratish uchun foydalaniladi. SNI maydonida esa qaysi domenga murojaat qilinayotgani ko'rsatiladi, bu bitta IP da bir nechta sayt ishlayotgan paytda muhim.
Server hello va sertifikat
Server javob qaytaradi va o'zining tanlovini bildiradi: qaysi TLS versiyasi va shifrlash to'plami ishlatiladi. Server ham o'z tasodifiy raqamini (server random) yuboradi va sertifikatini taqdim etadi. Sertifikat orqali server o'zining haqiqiyligini isbotlaydi โ u Certificate Authority tomonidan imzolangan bo'ladi va brauzerda allaqachon ishonilgan ildiz sertifikatlar bilan bog'lanadi. Brauzer sertifikatni tekshiradi: muddati, domen mosligi, ishonchli imzolovchi va bekor qilinmaganligi nazorat qilinadi.
Kalit almashish
Keyingi bosqichda taraflar simmetrik shifrlash uchun umumiy maxfiy kalitni yaratishlari kerak. Zamonaviy TLS versiyalarida bu jarayon Diffie-Hellman algoritmi orqali amalga oshiriladi. Mijoz va server bir-biriga ochiq kalit ma'lumotlarini jo'natadi va ulardan har biri mustaqil ravishda bir xil maxfiy kalitni hisoblab oladi. Bu yondashuvning ajoyib jihati shundaki, agar kimdir aloqani tinglab tursa ham, bu kalitni qayta tiklay olmaydi. Bu xususiyat forward secrecy deb ataladi va ayniqsa muhim, chunki kelajakda server kaliti o'g'irlansa ham eski yozuvlarni ochish imkonsiz bo'lib qoladi.
Finished xabari va simmetrik aloqaga o'tish
Kalit yaratilgandan keyin taraflar bir-biriga "finished" xabarini jo'natadi, bu xabar handshake davomida ko'rilgan barcha xabarlarning xeshini o'z ichiga oladi. Bu qadam handshake jarayonining buzilmaganligini va o'rtada uchinchi tomon mavjud emasligini tasdiqlaydi. Shundan so'ng barcha keyingi ma'lumotlar simmetrik shifr โ AES yoki ChaCha20 โ bilan shifrlanib uzatiladi. TLS 1.3 da bu jarayon optimallashtirilgan va atigi bitta tomonlama uzatish (1-RTT) ichida tugaydi, eski TLS 1.2 da esa ikkita uzatish kerak edi.
Sayt.uz amaliyot
Sayt.uz infrastrukturasi 2036-yilning bahorida TLS 1.3 ni majburiy talab sifatida joriy etdi. Statistikaga ko'ra, yangilanishdan keyin o'rtacha handshake vaqti 187 millisekunddan 94 millisekundgacha โ ya'ni qariyb 50 foizga qisqardi. Bu sayt yuklanish tezligini 12 foizga oshirdi va foydalanuvchi tajribasiga to'g'ridan-to'g'ri ta'sir qildi. Sayt.uz mijozlari uchun TLS 1.3 va forward secrecy barcha tariflarda standart sifatida yoqilgan. Wildcard SSL sertifikat 645 000 so'm, DV sertifikat 312 000 so'm, EV sertifikat esa 1 870 000 so'mdan boshlanadi. Texnik yordam jamoasi handshake bilan bog'liq muammolarni o'rtacha 38 daqiqada hal qiladi.