Дополнительно
В чем разница между SSL, TLS и HTTPS?
Я путаюсь в терминах в этой области. Что такое SSL, TLS и HTTPS? Каковы различия между ними?
551
3
TLS - это новое название протокола SSL. А именно, протокол SSL дошел до версии 3.0; TLS 1.0 - это "SSL 3.1". В настоящее время определены следующие версии TLS: TLS 1.1 и 1.2. Каждая новая версия добавляет несколько функций и изменяет некоторые внутренние детали. Иногда мы говорим "SSL/TLS".
HTTPS - это HTTP-within-SSL/TLS. SSL (TLS) устанавливает защищенный двунаправленный туннель для произвольных двоичных данных между двумя хостами. HTTP - это протокол для отправки запросов и получения ответов, каждый запрос и ответ состоят из подробных заголовков и (возможно) некоторого содержимого. HTTP предназначен для работы через двунаправленный туннель для произвольных двоичных данных; когда этот туннель представляет собой соединение SSL/TLS, то все это называется "HTTPS".
Чтобы объяснить аббревиатуры:
SSL и TLS - это протоколы, направленные на обеспечение конфиденциальности и целостности данных между двумя сторонами (см. RFC 2246), разработанные для работы поверх надежного протокола связи (обычно TCP). Хотя спецификация TLS не говорит о сокетах, дизайн SSL/TLS был разработан таким образом, чтобы приложения могли использовать их почти как традиционные TCP-сокеты, например,
SSLSocket
в Java расширяетSocket
(есть небольшие различия в плане удобства использования). HTTPS - это HTTP через SSL/TLS, где сначала устанавливается SSL/TLS соединение, а затем происходит обмен обычными HTTP данными через это SSL/TLS соединение. Используете ли вы для этого SSL или TLS, зависит от конфигурации вашего браузера и сервера (обычно есть возможность разрешить SSLv2, SSLv3 или TLS 1.x). Подробности о том, как HTTP и SSL/TLS образуют HTTPS, приведены в RFC 2818. Что касается разницы между SSL и TLS, вас могут заинтересовать эти два ответа, которые я написал на похожие вопросы на StackOverflow и ServerFault:STARTTLS
в LDAP/SMTP). Это описано в RFC 2817. Насколько я знаю, это почти никогда не используется (и это не то, что используетсяhttps://
в браузерах). Основная часть RFC - это раздел оCONNECT
для HTTP прокси-серверов (он используется HTTP прокси-серверами для ретрансляции HTTPS-соединений).SSL VS TLS
Термины SSL и TLS часто используются как взаимозаменяемые или в сочетании друг с другом (TLS/SSL), но на самом деле один из них является предшественником другого - SSL 3.0 послужил основой для TLS 1.0, который в результате иногда называют SSL 3.1.
Что более безопасно - SSL или TLS
С точки зрения безопасности они оба считаются одинаково защищенными
Основное различие заключается в том, что если SSL-соединения начинаются с обеспечения безопасности и переходят непосредственно к защищенному обмену данными, то TLS-соединения начинаются с небезопасного "приветствия" серверу и переходят к защищенному обмену данными только после успешного рукопожатия между клиентом и сервером. Если по какой-либо причине рукопожатие TLS не удается, соединение никогда не создается.
(SSL и TLS против HTTP)
Протокол HTTP используется для запроса и получения данных, а https, в котором 's' - это не что иное, как безопасный SSL, который делает запрос и получение данных по протоколу http зашифрованными, так что ни один злоумышленник не сможет легко получить данные.
Если ни SSL, ни TLS не используются в протоколе HTTP
то ваше соединение с веб-сервером будет незашифрованным, все данные будут отправляться в открытом виде, и любой злоумышленник может получить и просмотреть эти данные.
Поэтому следует использовать SSL или TLS
Ну, оба варианта одинаковы, но TLS более расширяем и надеется получить больше поддержки в будущем. и TLS имеет обратную совместимость.