SSL рукопожатие: что происходит между браузером и сервером по шагам
SSL рукопожатие (TLS handshake) это обмен первыми сообщениями, в котором браузер и сервер выбирают версию протокола и шифр, проверяют сертификат сервера и вырабатывают общий ключ. Только после этого начинается шифрованная передача страниц. В TLS 1.3 рукопожатие занимает один обмен сообщениями.
Ответ за 30 секунд
Рукопожатие это первые сообщения TLS-соединения: стороны выбирают версию и шифр, проверяют сертификат и вырабатывают общий ключ. В TLS 1.3 на это уходит один обмен сообщениями, в TLS 1.2 два. Если стороны не договорились, браузер показывает ошибку рукопожатия.
Бесплатный Let's Encrypt и платные сертификаты от 1 000 ₽ за 6 месяцев (Таймвеб, на 19 октября 2026).
Что должно совпасть, чтобы рукопожатие удалось1обмен сообщениями в TLS 1.3
2обмена сообщениями в TLS 1.2
6шагов в схеме рукопожатия
01 · 1 мин
Шесть шагов TLS-рукопожатия по порядку#
- ClientHello. Браузер называет поддерживаемые версии TLS и шифры, имя сайта и свою часть данных для общего ключа.
- ServerHello. Сервер выбирает версию и шифр из предложенных и присылает свою часть данных. С этого момента обе стороны могут вычислить общий ключ.
- Сертификат. Сервер передаёт сертификат сайта и промежуточные, уже в зашифрованном виде.
- Подпись. Сообщение CertificateVerify подписано закрытым ключом сервера и доказывает, что сертификат принадлежит именно ему.
- Finished сервера. Сводка всего обмена, по которой клиент убеждается, что никто не вмешался.
- Finished клиента. Браузер отвечает такой же сводкой, и начинается передача данных под общим ключом.
Зачем нужны ключи разных видов, объясняет статья как работает SSL, а какие алгоритмы стоят за шифрами: шифрование SSL.
02 · 1 мин
Чем рукопожатие TLS 1.2 отличается от TLS 1.3#
| Параметр | TLS 1.2 | TLS 1.3 |
|---|---|---|
| Обменов сообщениями до данных | Два | Один |
| Обмен ключами | Возможен через RSA или ECDHE | Только через временные ключи (EC)DHE |
| Сертификат сервера | Передаётся открыто | Зашифрован |
| Устаревшие шифры | Допускаются настройкой | Удалены из протокола |
Временные ключи обеспечивают прямую секретность: даже если закрытый ключ сервера украдут через годы, записанный трафик расшифровать не получится. История версий и их статус: SSL и TLS.
03 · 1 мин
Что проверяет браузер, пока идёт рукопожатие#
Главная проверка идёт на шагах с сертификатом и подписью. Браузер сверяет имя в сертификате с адресом, срок действия и цепочку подписей до корня из своего списка: цепочка сертификатов и корневой сертификат. Затем проверяет подпись CertificateVerify: без закрытого ключа сервера её не подделать.
Сообщения Finished закрывают рукопожатие. Каждая сторона считает отпечаток всей переписки, и если по дороге что-то изменили, отпечатки не совпадут и соединение оборвётся.
Инструмент · 1 мин
Что должно совпасть, чтобы рукопожатие удалось#
Рукопожатие обрывается, когда стороны не находят общего. Пройдите условия по списку, чтобы понять, где искать причину.
Что должно совпасть для рукопожатия
Отметьте условия, которые у вас выполняются, чтобы найти слабое место
Если все условия кажутся выполненными, разберите типичные причины в статьях handshake failed и ошибка версии TLS.
05 · 1 мин
Как посмотреть рукопожатие своего сайта#
Команда подключается к серверу и печатает результат согласования:
openssl s_client -connect example.com:443 -servername example.com -brief
Краткий вывод покажет строки Protocol version и Ciphersuite с выбранной версией и шифром, а также результат проверки сертификата (Verification). Параметр -servername передаёт имя сайта, без него сервер с несколькими сайтами может отдать чужой сертификат. Другие способы проверки: проверка SSL.
06 · 1 мин
Вопросы о рукопожатии#
Что такое SSL рукопожатие простыми словами?
Это знакомство сторон перед разговором: браузер и сервер договариваются, как будут шифровать, убеждаются, кто есть кто, и только потом обмениваются данными.
Сколько длится TLS рукопожатие?
Определяется задержкой сети. В TLS 1.3 нужен один обмен сообщениями туда и обратно, в TLS 1.2 два, поэтому новая версия подключается быстрее.
Что значит ошибка «не удалось выполнить SSL TLS рукопожатие»?
Стороны не смогли договориться: нет общей версии или шифра, сертификат не прошёл проверку либо на устройстве неверное время. Начните с условий в списке выше.
Шифруется ли само рукопожатие?
Первые сообщения Hello идут открыто. В TLS 1.3 остальное, включая сертификат, уже зашифровано, а в TLS 1.2 сертификат виден при передаче.
Почему этому можно верить
Как мы проверяли
Источники цифр на этой странице: SSL-сертификаты Таймвеб, timeweb.com/ru/services/domains/ssl, проверено 19 октября 2026; Let's Encrypt: документация, letsencrypt.org/docs, проверено 19 октября 2026; Wikipedia: Transport Layer Security (годы SSL 2.0/3.0 и TLS 1.0-1.3, RFC 6176, 7568, 8996, 8446, TLS 1.3 за один обмен), en.wikipedia.org/wiki/Transport_Layer_Security, проверено 19 октября 2026; Таймвеб: SSL-сертификаты, линейка, цены, SHA-2 и 2048 бит (справка редакции на 19.10.2026), timeweb.com/ru/services/domains/ssl, проверено 19 октября 2026.
Подключите SSL к сайту
От бесплатного Let's Encrypt до платных сертификатов GlobalSign с гарантийной выплатой и установкой под ключ. Любой можно вернуть за 7 дней.
- Бесплатный Let's Encrypt на домен
- Платные от 1 000 ₽ за 6 месяцев
- Wildcard на все поддомены
- 7 дней на возврат