У чому різниця між HTTP і HTTPS, і як працює SSL/TLS рукостискання?
Протокол HTTP використовується для передачі гіпертексту в мережі веб, але вся передана інформація між клієнтом і сервером відправляється у відкритому вигляді. Протокол HTTPS є захищеною версією HTTP, в якій поверх стандартного транспортного протоколу додається криптографічний рівень шифрування за допомогою технологій SSL або TLS, забезпечуючи конфіденційність і цілісність даних.
Для встановлення захищеного з'єднання перед передачею основних даних відбувається процес криптографічного рукостискання. Спершу клієнт і сервер вітають один одного, узгоджують алгоритми шифрування, що підтримуються, та обмінюються сертифікатами для підтвердження автентичності сервера. Потім відбувається генерація загального секретного ключа сеансу з використанням асиметричної криптографії.
Після завершення рукостискання всі подальші HTTP-запити та відповіді шифруються з використанням симетричного шифрування, яке працює значно швидше і не створює великого навантаження на процесор. Основні етапи забезпечення безпеки включають такі дії: