Протокол, защищающий интернет
TLS (Transport Layer Security) — криптографический протокол, обеспечивающий защищённую передачу данных в сети. Его предшественник — SSL (Secure Sockets Layer), разработанный компанией Netscape в 1994–1995 годах. Сегодня SSL устарел и уязвим; актуален TLS 1.2 и TLS 1.3.
TLS защищает не только веб: электронную почту (SMTP/IMAP/IMAPS), мессенджеры, VoIP, VPN и любой другой протокол, которому нужна безопасность.
Что гарантирует TLS
Конфиденциальность — данные зашифрованы; перехваченный трафик нечитаем без ключа.
Целостность — данные не могут быть изменены в пути незаметно; MAC (Message Authentication Code) обнаруживает любое вмешательство.
Аутентификация — сертификат подтверждает, что сервер — это тот, за кого себя выдаёт.
Алгоритмы
TLS использует комбинацию алгоритмов. Асимметричная криптография (RSA, ECDSA) — для аутентификации и обмена ключами. Симметричная криптография (AES-GCM, ChaCha20) — для шифрования данных сессии (быстрая). Хэш-функции (SHA-256, SHA-384) — для обеспечения целостности.
Perfect Forward Secrecy (PFS)
Классическая схема: если атакующий получит долгосрочный приватный ключ сервера — он сможет расшифровать все ранее записанные сессии.
PFS (Perfect Forward Secrecy) решает эту проблему: для каждой сессии генерируется временный ключ по протоколу Диффи-Хеллмана. Даже если долгосрочный ключ скомпрометирован — прошлые сессии остаются защищены. TLS 1.3 требует PFS обязательно.
TLS 1.3
TLS 1.3 (2018) — значительное улучшение: убраны устаревшие и уязвимые алгоритмы (RC4, MD5, DES, RSA key exchange), рукопожатие сокращено с 2 до 1 оборота (ускорение), добавлен 0-RTT (нулевое рукопожатие для повторных соединений). Является стандартом для всех новых систем.
