SSL против TLS - сравнение - 2026
SSL (Secure Sockets Layer) и TLS (Transport Layer Security) — семейство криптографических протоколов, обеспечивающих защищённую передачу данных по сети. TLS является прямым преемником SSL и на сегодняшний день полностью его заместил. Несмотря на это, термин «SSL-сертификат» продолжает использоваться даже тогда, когда речь идёт о TLS.
Сравнительная таблица SSL vs TLS
| Характеристика | SSL | TLS |
|---|---|---|
| Полное название | Secure Sockets Layer | Transport Layer Security |
| Разработчик | Netscape | IETF |
| Статус | Устарел | Актуальный стандарт |
| Первая версия | SSL 2.0 (1995) | TLS 1.0 (1999) |
| Последняя версия | SSL 3.0 (1996) | TLS 1.3 (2018) |
| Алгоритмы шифрования | RC4, DES, 3DES, IDEA | AES-GCM, ChaCha20-Poly1305, AES-CCM |
| Обмен ключами | RSA, Diffie-Hellman (статический) | (EC)DHE (совершенная прямая секретность) |
| Хэширование | MD5, SHA-1 | SHA-256, SHA-384 |
| Режим шифрования | CBC (уязвим к атакам) | GCM, CCM (AEAD) |
| Защита от POODLE | Нет | Да |
| Perfect Forward Secrecy | Нет (опционально) | Да (обязательно в 1.3) |
| RTT при handshake | 2 Round-Trips | 1 Round-Trip (0-RTT для повторных) |
| Поддержка сегодня | Отключён во всех браузерах | TLS 1.2 и 1.3 — стандарт |
| Безопасность | Содержит известные уязвимости | Значительно безопаснее |
История версий
| Протокол | Год | Статус | Примечания |
|---|---|---|---|
| SSL 2.0 | 1995 | Запрещён (RFC 6176) | Множественные уязвимости безопасности |
| SSL 3.0 | 1996 | Запрещён (RFC 7568) | Атака POODLE (2014) |
| TLS 1.0 | 1999 | Устарел (RFC 8996) | Фактически SSL 3.1, уязвимости BEAST, Lucky13 |
| TLS 1.1 | 2006 | Устарел (RFC 8996) | Защита от CBC-атак, но legacy-протокол |
| TLS 1.2 | 2008 | Актуален | Основной стандарт десятилетия |
| TLS 1.3 | 2018 | Рекомендуется | Текущий стандарт, максимальная безопасность и скорость |
Что изменилось в TLS по сравнению с SSL
TLS — это эволюция SSL, а не новая разработка с нуля. TLS 1.0 (RFC 2246) базировался на SSL 3.0.
Основные улучшения
- Алгоритмы шифрования: TLS отказался от устаревших RC4, DES, 3DES и IDEA в пользу AES-GCM и ChaCha20-Poly1305
- Обмен ключами: TLS 1.3 требует (EC)DHE с Perfect Forward Secrecy; SSL 3.0 использовал RSA Key Exchange, не обеспечивающий PFS
- Целостность: HMAC вместо MAC, что значительно устойчивее к атакам
- Handshake: в TLS 1.3 сокращён до 1 RTT (и 0-RTT для повторных подключений), в SSL — 2 RTT
- Удаление уязвимых режимов: TLS 1.3 полностью исключил CBC, RC4, RSA Key Exchange, 3DES
Атаки, от которых защищает TLS
| Атака | Цель | Защита в TLS |
|---|---|---|
| POODLE | SSL 3.0 / CBC | TLS не поддерживает уязвимый режим паддинга |
| BEAST | TLS 1.0 / CBC | TLS 1.1+ использует IV явно |
| CRIME / BREACH | Сжатие + шифрование | TLS 1.3 запрещает сжатие на уровне протокола |
| Lucky13 | CBC + timing | TLS 1.3 не использует CBC |
| Logjam | DH-1024 | TLS 1.3 требует ≥ 2048 бит |
| ROBOT | RSA | TLS 1.3 не использует RSA Key Exchange |
Почему до сих пор говорят «SSL-сертификат»
Это исторически сложившийся термин. Сертификат X.509 не привязан к конкретному протоколу — один и тот же сертификат работает и с SSL, и с TLS. Когда сегодня говорят:
- «SSL-сертификат» → фактически TLS-сертификат
- «SSL HTTPS» → HTTPS поверх TLS
- «SSL-шифрование» → шифрование с использованием TLS
Это устоявшийся мем, с которым не борются даже специалисты.
Практические рекомендации на 2026 год
Какие протоколы включить на сервере
# nginx — минимальная безопасная конфигурация ssl_protocols TLSv1.2 TLSv1.3; # Apache SSLProtocol +TLSv1.2 +TLSv1.3
Какие протоколы отключить
# nginx — отключение устаревших протоколов ssl_protocols TLSv1.2 TLSv1.3; # SSLv3, TLSv1, TLSv1.1 не указаны — отключены
Проверка настроек
# проверка поддерживаемых протоколов openssl s_client -connect example.com:443 -tls1_3 openssl s_client -connect example.com:443 -tls1_2 # онлайн-тест # https://www.ssllabs.com/ssltest/
Таблица: рекомендуемая конфигурация на 2026 год
| Протокол | Включить? | Комментарий |
|---|---|---|
| SSL 2.0 | Нет | Запрещён RFC 6176 |
| SSL 3.0 | Нет | Запрещён RFC 7568 (POODLE) |
| TLS 1.0 | Нет | Устарел RFC 8996, BEAST, Lucky13 |
| TLS 1.1 | Нет | Устарел RFC 8996 |
| TLS 1.2 | Да | Минимальный безопасный стандарт |
| TLS 1.3 | Да | Рекомендуемый стандарт |
Влияние на SEO и веб
По состоянию на 2026 год:
- Google рекомендует TLS 1.3 как современный протокол
- Core Web Vitals (LCP) улучшаются за счёт 1-RTT handshake в TLS 1.3
- HTTP/3 (QUIC) требует TLS 1.3 — без него невозможно использовать новый протокол
- Chrome постепенно повышает требования — сайты на SSL 3.0 или TLS 1.0 помечаются как небезопасные
- Яндекс также учитывает безопасность соединения при ранжировании
Важное примечание для Рунета: В TLS 1.3 присутствует ECH (Encrypted Client Hello), который может блокироваться в РФ. Рекомендуется отключать ECH, а не весь TLS 1.3.
Итог
| Параметр | |
|---|---|
| SSL | Устаревший протокол. Не должен использоваться ни при каких обстоятельствах. |
| TLS | Современная, безопасная замена SSL. TLS 1.2 — минимум, TLS 1.3 — рекомендуется. |
| Термин «SSL-сертификат» | Исторический мем. Фактически это TLS-сертификат. |
| Что делать | Отключить всё до TLS 1.2, включить TLS 1.3. |
Если в настройках сервера вы видите опцию «Enable SSL», это почти всегда означает поддержку TLS, а не настоящего SSL. Разработчики программного обеспечения просто сохранили старую терминологию для обратной совместимости.
Ссылки
- RFC 2246 — TLS 1.0
- RFC 4346 — TLS 1.1
- RFC 5246 — TLS 1.2
- RFC 8446 — TLS 1.3
- RFC 6176 — Запрет SSL 2.0
- RFC 7568 — Запрет SSL 3.0
- RFC 8996 — Запрет TLS 1.0 и TLS 1.1
- SSL Labs — тестирование конфигурации
- OpenSSL Wiki — TLS 1.3
- Обсуждение TLS 1.3 на Searchengines.guru
