TLS (Transport Layer Security) — это криптографический протокол, который шифрует соединение между вашим браузером и посещаемыми веб-сайтами. Каждый раз, когда вы видите «HTTPS» в адресной строке, TLS работает. Проверить, какую версию TLS использует ваше соединение, можно на whatsmy.fyi.
TLS vs SSL: в чём разница
«SSL» и «TLS» часто используются взаимозаменяемо, но технически это разные протоколы:
- SSL (Secure Sockets Layer) — исходный протокол, разработанный Netscape в 1990-х годах. SSL 2.0 и SSL 3.0 устарели и имеют известные критические уязвимости.
- TLS (Transport Layer Security) — преемник SSL, впервые стандартизированный как TLS 1.0 в 1999 году. Именно его используют все современные HTTPS-соединения.
Ни один современный браузер или сервер не использует SSL. Когда говорят «SSL-сертификат», имеют в виду TLS-сертификат. Термин «SSL» сохранился только как разговорный.
Что делает TLS
TLS обеспечивает три основные гарантии безопасности:
- Конфиденциальность: Данные, которыми обмениваются браузер и сервер, зашифрованы. Никто между вами и сервером (провайдер, хакер в публичном Wi-Fi, СОРМ) не может прочитать содержимое.
- Целостность: Данные нельзя изменить в пути. Если кто-то вмешается в пакет, MAC TLS (код аутентификации сообщения) это обнаружит.
- Аутентификация: TLS использует цифровые сертификаты для проверки того, что вы общаетесь с настоящим сервером, а не самозванцем. Это предотвращает атаки «человек посередине».
TLS 1.2 vs TLS 1.3
TLS 1.3 был стандартизирован в RFC 8446 (август 2018) и представляет собой значительный шаг вперёд по сравнению с TLS 1.2:
| Характеристика | TLS 1.2 | TLS 1.3 |
|---|---|---|
| Круговые поездки при рукопожатии | 2-RTT | 1-RTT (0-RTT для возобновлённых сессий) |
| Наборы шифров | Много, включая слабые | Только 5 сильных наборов |
| Прямая секретность (PFS) | Опционально | Обязательно |
| Обмен ключами RSA | Поддерживается (уязвим) | Удалён |
| MD5/SHA-1 в рукопожатии | Разрешены | Удалены |
Наиболее значимое улучшение — Perfect Forward Secrecy (PFS), которое обязательно в TLS 1.3. PFS означает, что даже если в будущем закрытый ключ сервера будет скомпрометирован, ранее записанный зашифрованный трафик не сможет быть расшифрован.
Как работает рукопожатие TLS
До начала передачи зашифрованных данных браузер и сервер выполняют рукопожатие TLS:
- ClientHello: Браузер отправляет поддерживаемые версии TLS, список наборов шифров и случайное число.
- ServerHello: Сервер выбирает наивысшую версию TLS и самый сильный шифр, поддерживаемые обеими сторонами, и отправляет свой сертификат.
- Проверка сертификата: Браузер проверяет сертификат сервера по доверенным центрам сертификации (CA) в ОС или браузере.
- Обмен ключами: Обе стороны получают одни и те же сеансовые ключи с помощью обмена ключами Диффи–Хеллмана (в TLS 1.3 всегда эфемерного).
- Начинается зашифрованный трафик.
В TLS 1.3 весь этот процесс занимает одну круговую поездку вместо двух, что делает HTTPS-соединения заметно быстрее.
Что такое набор шифров TLS
Набор шифров — это комбинация алгоритмов для разных частей TLS-соединения: обмена ключами, аутентификации, шифрования и целостности сообщений. Набор шифров TLS 1.3 вида AEAD-AES256-GCM-SHA384 означает:
- AES-256-GCM — 256-битное шифрование AES в режиме Галуа/счётчика
- SHA-384 — HMAC-хеш-функция для аутентификации сообщений
TLS 1.3 удалил все слабые наборы шифров (RC4, DES, 3DES, CBC-режим), разрешённые в TLS 1.2. Это значительно сократило поверхность атаки.
Часто задаваемые вопросы
Безопасен ли TLS 1.2?
При правильной настройке (только сильные наборы шифров, PFS включён) TLS 1.2 по-прежнему считается безопасным. Однако TLS 1.3 проще, быстрее и даёт более сильные гарантии безопасности. Следует предпочитать серверы, поддерживающие TLS 1.3.
Как проверить версию TLS?
Посетите whatsmy.fyi — карточка «Безопасность TLS» показывает точную версию TLS и набор шифров, напрямую с пограничного узла Cloudflare.
Можно ли заставить сайт использовать TLS 1.3?
Согласование версии TLS происходит автоматически — браузер и сервер договариваются о наивысшей версии, поддерживаемой обоими. Если сервер поддерживает TLS 1.3 (большинство современных поддерживают), она будет использоваться автоматически. Со стороны клиента нельзя заставить сервер обновить поддержку TLS.
Что такое HTTPS?
HTTPS (Hypertext Transfer Protocol Secure) — это просто HTTP, передаваемый через TLS-соединение. Буква «S» означает Secure (безопасный). Когда вы видите HTTPS в адресной строке, это означает, что TLS-шифрование активно и ваше соединение защищено.



