Безопасность транспортного уровня (TLS) — это последняя версия протокола Secure Socket Layer (SSL). Оба протокола обеспечивают конфиденциальность и подлинность данных в Интернете. Эти широко используемые протоколы обеспечивают сквозную безопасность, применяя шифрование для связи через Интернет. Однако, несмотря на сходство TLS и SSL, у них есть и существенные различия.
В этой статье объясняется, как работают протоколы шифрования TLS и SSL, их важность, чем они отличаются и почему сейчас самое подходящее время для перехода на протокол TLS.
Исторический фон TLS и SSL
Инженерная рабочая группа Интернета (IETF), организация, ответственная за разработку интернет-стандартов, опубликовала Запрос комментариев (RFC-1984), признавая важность защиты персональных данных в растущем Интернете. Корпорация Netscape Communication Corporation представила SSL для защиты веб-коммуникаций, который претерпел несколько обновлений.
Версия SSL 1.0 так и не была выпущена из-за недостатков безопасности, а SSL 2.0 был первым общедоступным выпуском Netscape в 1995 году. Однако из-за уязвимостей и недостатков в системе безопасности в ноябре 1996 года он был заменен другой версией SSL 3.0. Последняя версия SSL также не используется из-за ее ненадежности.
Атака POODLE в октябре 2014 г. и был официально объявлен устаревшим в июне 2015 года.TLS был выпущен в 1999 году как независимый от приложений протокол: обновление до версии SSL 3.0, выполненное Инженерной группой Интернета (IETF). Идея заключалась в том, чтобы внедрить TLS через TCP для шифрования приложений с использованием протоколов FTP, IMAP, SMTP и HTTP. Например, HTTPS — это безопасная версия HTTP поскольку он реализует TLS для обеспечения безопасной доставки данных, избегая изменения контента и прослушивания.
Базовая работа протоколов TLS/SSL
Связь между сторонами (например, браузером вашего компьютера и веб-сайтом) начинается с определения того, будет включать протокол TLS/SSL или нет, так что клиент может указать использование шифрования TLS либо к:
- Указание порта, поддерживающего шифрование связи SSL, или
- Делая запросы, специфичные для протокола TLS
В это время, веб-сайт требует сертификат TLS/SSL установлен на своем хост-сервере для использования протокола. Доверенная третья сторона выдает сертификат, который связывает открытый ключ с доменом, который владеет закрытым ключом и позволяет ему шифровать/дешифровать связь.
После согласия на использование TLS/SSL для связи клиент-сервер он переходит к выполнению рукопожатия. Рукопожатие устанавливает спецификации, необходимые для обмена сообщениями. В следующем разделе обобщается серия обменов информацией для включения соединения TLS/SSL:
- Стороны договариваются о версии протокола, который они будут использовать, затем
- Принимает решение о криптографических алгоритмах или наборе шифров для использования, затем
- Аутентифицирует взаимодействующие стороны с помощью их открытого ключа и цифровых подписей выдавшего центра сертификации, а затем
- Обмен ключами сеанса для использования во время связи. Протоколы TLS и SSL используют асимметричную криптографию для создания общих (открытых) и закрытых ключей.
Если браузер не может проверить сертификат TLS/SSL, он возвращает ошибку «Соединение не является частным».
После установления метода расшифровки во время рукопожатия протокол записи использует симметричное шифрование для общения на протяжении всего сеанса. Кроме того, протокол записи также добавляет к сообщению HMAC для TLS и MAC для SSL для обеспечения целостности данных.
Таким образом, протоколы выполняют три основные задачи безопасности:
- Конфиденциальность: Шифрует данные, чтобы скрыть их от третьих лиц, чтобы только предполагаемый получатель мог просматривать содержимое.
- Честность: Применяет код проверки подлинности сообщения для проверки зашифрованного содержимого сообщения.
- Аутентификация: Аутентифицирует личность веб-сайта/клиента/сервера с помощью сертификата, чтобы стороны, обменивающиеся информацией, не могли отказаться от своей личности.
В чем разница между TLS и SSL?
Как упоминалось ранее, основное различие, которое вы заметите между обоими протоколами, заключается в том, как они устанавливают соединения. Рукопожатие TLS использует неявный способ установления соединения через протокол, в то время как SSL устанавливает явные соединения с портом.
Независимо от всех других различий, фундаментальной особенностью, отличающей оба соединения TLS/SSL, является использование набора шифров, который определяет общую безопасность соединения.
Существенной частью соединения TLS/SSL является согласование набора шифров, который определяет набор алгоритмов для обмена ключами, аутентификация, массовое шифрование и алгоритмы кода аутентификации сообщений на основе хэшей (HMAC) или кодов аутентификации сообщений, и т.п. для конкретного сеанса. Каждая версия TLS/SSL поддерживает свой набор наборов шифров для сеанса связи. Следовательно, каждый набор шифров поддерживает собственный набор алгоритмов, повышающих безопасность и общую производительность соединения.
SSL | TLS |
---|---|
SSL — сложный для реализации протокол. | TLS — более простой протокол. |
SSL имеет три версии, последней из которых является SSL 3.0. | TLS имеет четыре версии, последней из которых является версия TLS 1.3. |
Все версии протокола SSL уязвимы для атак. | Протокол TLS обеспечивает высокий уровень безопасности. |
SSL использует код аутентификации сообщения (MAC) после шифрования сообщения для обеспечения целостности данных. | TLS использует в своем протоколе записи код аутентификации сообщения на основе хэша. |
SSL использует дайджест сообщения для создания главного секрета. | TLS использует псевдослучайную функцию для создания главного секрета. |
Почему TLS заменил SSL?
Шифрование TLS теперь является стандартной практикой для защиты веб-приложений или передаваемых данных от прослушивания и несанкционированного доступа. Нереалистично считать TLS самым безопасным протоколом, поскольку он подвержен взломам, таким как Crime. и Heartbleed в 2012 и 2014 годах, но он показал много улучшений с точки зрения производительности и безопасность.
TLS заменяет SSL, и почти все версии SSL теперь устарели из-за его известных уязвимостей. Одним из таких примеров является Google Chrome, который прекратил использовать версию SSL 3.0 еще в 2014 году, а большинство современных веб-браузеров вообще не поддерживают SSL.
Используйте TLS для зашифрованной связи
TLS помогает защитить конфиденциальную информацию в пути, такую как данные кредитной карты, электронные письма, IP-телефония (VOIP), передача файлов и пароли. Несмотря на то, что оба сертификата выполняют задачу шифрования данных при передаче, они различаются по функциональности и несовместимы.
Важно отметить, что TLS упоминается как SSL только потому, что SSL является наиболее часто используемой терминологией, а наличие сертификата не гарантирует использование протокола TLS. Кроме того, вам не нужно беспокоиться о замене сертификатов SSL на TLS, поскольку все, что вам нужно сделать, это установить сертификат на сервер, поскольку он поддерживает оба протокола и решает, какой из них использовать.
Неважно, разрабатываете ли вы скромный блог или полноценный сайт электронной коммерции: вам нужен сертификат SSL. Вот несколько практических причин почему.
Читать дальше
- Объяснение технологии
- Безопасность
- SSL
- OpenSSL
- Интернет-безопасность
- Безопасность браузера
- Безопасность данных
Румаиса — независимый писатель в MUO. Она носила много шляп, от математика до энтузиаста информационной безопасности, и теперь работает аналитиком SOC. Ее интересы включают чтение и письмо о новых технологиях, дистрибутивах Linux и обо всем, что связано с информационной безопасностью.
Подписывайтесь на нашу новостную рассылку
Подпишитесь на нашу рассылку технических советов, обзоров, бесплатных электронных книг и эксклюзивных предложений!
Нажмите здесь, чтобы подписаться