Сертификаты TLS все еще известны как сертификаты SSL, но реальность такова, что всякий раз, когда кто-то покупает сертификат SSL, он фактически покупает последние сертификаты TLS с такими опциями, как шифрование RSA или DSA. Причина в том, что SSL является наиболее часто используемым термином, который стал более знакомым среди интернет-пользователей.
TLS 1994 - SSL был разработан Netscape Communications, когда они разрабатывали первую версию своего флагманского браузера.
Самая первая версия SSL так и не была выпущена из-за определенных проблем безопасности, возникающих во время конфиденциальных транзакций, таких как транзакции по кредитным картам, через Интернет. Позже в 1994 году Netscape внесла некоторые улучшения и выпустила вторую версию SSL, SSLv2 (устарела в 2011 году), которая преодолела предыдущие проблемы и обеспечила безопасность конфиденциальной информации. Таким образом, SSL стал стандартным протоколом для защиты веб-трафика на основе HTTP.
1995 - Netscape пошла еще дальше, чтобы сделать больше улучшений для усиления криптографических алгоритмов для решения проблем SSLv2. Поскольку SSLv2 использовал слабую структуру MAC, была выпущена обновленная версия под названием SSLv3. Это устранило проблему, связанную с SSLv2, а также предложило расширенные функции, такие как поддержка нескольких алгоритмов безопасности, которые ранее не поддерживались.
1999 - В форме обновления SSL 3.0 TLS 1.0 (безопасность транспортного уровня), написанная Кристофером Алленом и Тимом Дирксом, была определена в RFC 2246. Согласно RFC, «различия между этим протоколом и SSL 3.0 не являются существенными, но они достаточно важны, чтобы исключить возможность взаимодействия между TLS 1.0 и SSL 3.0 ».
2018 - Небезопасные технологии в предыдущих версиях были удалены и TLS 1.3, текущая версия была выпущена. TLS 1.3 предлагает лучшую конфиденциальность, чем его предшественники.
Шаги протокола рукопожатия SSL Handshake Protocol
ClientHello
Это самый первый шаг. Клиент инициирует рукопожатие, отправляя сообщение «ClientHello», в котором рекомендуются параметры SSL, которые будут использоваться в течение всего сеанса SSL.
ServerHelloSSL Handshake Protocol
Сервер отвечает клиенту сообщением «ServerHello», содержащим выбранные параметры SSL из предоставленного списка, которые будут использоваться во время сеанса SSL. Если клиент и сервер не смогут использовать общие параметры, соединение на этом этапе будет разорвано.
Certificate
Сервер отправит Клиенту цепочку сертификатов SSL (свой и промежуточный сертификат). Затем Клиент начнет проверять, является ли сертификат легитимным, проверяя цифровую подпись сертификата и цепочку сертификатов и проверяя, есть ли потенциальные проблемы с данными сертификата, истек ли срок действия сертификата, неправильное имя домена, отозван ли сертификат и т. д.). Клиент также должен убедиться, что сервер обладает закрытым ключом сертификата, и весь этот процесс выполняется во время обмена / генерации ключей.
ServerKeyExchange
Это необязательное сообщение, которое необходимо, когда определенные методы обмена ключами запрашивают у сервера дополнительные данные.
ServerHelloDone
Это сообщение «ServerHelloDone» сообщает клиенту, что все сообщения были отправлены.
ClientKeyExchange
Клиент отправляет информацию о ключе сеанса, который был зашифрован с использованием открытого ключа сервера.
ChangeCipherSpec
Клиент предоставляет серверу инструкции, что он активирует все согласованные параметры SSL для всех будущих сообщений, которые он отправляет.
Finished
Клиент поручает серверу проверить, были ли согласования SSL успешными или нет.
ChangeCipherSpec
Сервер дает клиенту инструкции активировать все согласованные параметры SSL для будущих сообщений, которые он отправляет.
Finished
Сервер инструктирует клиента проверить, успешно ли согласованы SSL.
Рукопожатие SSL завершено. Теперь обе стороны имеют сеансовый ключ и начнут взаимодействовать с зашифрованным и аутентифицированным соединением.
SSL Record Protocol
Протокол записи SSL отвечает за обработку шифрования всех сообщений. Этот протокол предлагает общий формат, используемый для кадрирования всех сообщений Handshake, Alerts, ChangeCiperSpec и Application Protocols. Другими словами, он обеспечивает базовую безопасность для других протоколов более высокого уровня, а именно протокола рукопожатия, протокола изменения шифра и протокола оповещения.
Этот протокол состоит из обобщенных данных, типа сообщения, версии, длины и цифровой подписи, что делает его длиной 8 байтов.
SSL Alert Protocol
Протокол оповещения SSL предоставляет предупреждения, связанные с SSL, так как он отвечает за обработку сомнительных типов пакетов.
Как правило, он обрабатывает три различных типа предупреждающих сообщений:
Предупреждение
Критическое положение
Фатальный прекращение процесса
Протокол спецификации шифра The ChangeCipher Spec Protocol
Протокол спецификации шифра изменений используется для сигнализации о переходах в стратегиях шифрования. Он содержит одно сообщение, которое содержит один байт значения 1. Цель этого протокола состоит в том, чтобы сжать и зашифровать это сообщение в состоянии соединения. Кроме того, сообщение этого протокола отправляется обеими сторонами серверу и клиенту для уведомления получателя о том, что последующие записи останутся защищенными в соответствии с недавно обмененными CipherSpec и ключами.
Аутентификация Authentication
Аутентификация является одним из самых простых условий подтверждения личности. Это один из процессов, используемых для сетевых взаимодействий, и он также включает в себя признание одной стороны другой. Кроме того, существует более одного способа использования аутентификации в сетях, и сертификаты являются одним из них.
TLS 1.3 является самой последней и самой безопасной версией семейства протоколов SSL / TLS . TLS 1.3 приветствуется почти всеми экспертами по безопасности, поскольку это самый продвинутый протокол TLS на сегодняшний день. Это приносит некоторые существенные улучшения с точки зрения производительности и безопасности. Долгое время единственным * глупым * аргументом, который был сделан против SSL / TLS, является время, необходимое для установления соединения между клиентом и сервером. Теперь с TLS 1.3 этот бездумный аргумент перестанет существовать. Это из-за введения рукопожатий TLS 0-RTT (нулевого приема) и 1-RTT. TLS 1.3 сокращает поездку за одно рукопожатие, тем самым сокращая время рукопожатия вдвое. Это приводит к уменьшению TTFB - время до первого байта и увеличению задержки. Для доменов, где скорость соединения имеет первостепенное значение, это рукопожатие будет очень удобным. С TLS 1.3 потенциально уязвимые алгоритмы, шифры и протоколы больше не поддерживаются. Это дает огромный импульс безопасности, и это огромное разочарование для хакеров и мошенников.
Имейте в виду, что TLS 1.3 будет включен, только если веб-сайт (сервер) поддерживает TLS 1.3. Если нет, соединение будет установлено через TLS 1.2.