HTTPS (HTTP Secure) защищенный протокол прикладного уровня

BDFINFO1.9
Оффлайн

BDFINFO1.9

Новичок
.
Регистрация
12.05.16
Сообщения
1.927
Реакции
523
Репутация
0
HTTP - это протокол прикладного уровня передачи данных, как вы уже, наверное, знаете. Именно поэтому мы набираем HTTP:// и затем переходим на , и по этому адресу мы попадем на HTTP-версию этого веб-сайта.

You must be registered for see images attach




Теперь смотрите, в адрес серверов и обратно, в буквальном смысле, происходит отправка текста, который выглядит следующим образом. Здесь указан HTTP протокол. В тексте указано, что используется HTTP протокол, есть дата, серверы, ниже видим HTML-код, это код, который вы можете обнаружить, если будете просматривать исходный код веб-страниц. Вот так он выглядит. Так что HTTP - это простой текст. Давайте я это закрою, перейду на Google и поменяю здесь на HTTPS, теперь у меня запущен HTTP поверх TLS или SSL. HTTPS предоставляет средства защиты TLS, потому что он использует TLS, это шифрование данных, аутентификация, обычно на серверной стороне, целостность сообщений и по выбору - аутентификация клиента или браузера.

You must be registered for see images attach


Когда вы заходите на веб-сайт при помощи HTTPS, веб-сервер запускает задачу по вызову SSL и защите обмена данными. Сервер отправляет сообщение обратно клиенту с указанием, что должен быть установлен защищенный сеанс, и клиент, в ответ, отправляет ему свои параметры безопасности. Это значит, что клиент скажет: "Я готов использовать такую-то цифровую подпись, я готов использовать такой-то метод обмена ключами, алгоритм, я готов использовать такой-то симметричный ключ", а сервер сравнивает эти параметры безопасности со своими собственными до тех пор, пока не находит соответствие, и это называется фазой “рукопожатия” или handshake.

Сервер аутентифицирует клиент посредством отправки ему цифрового сертификата, мы рассмотрим сертификаты позже, и если клиент решает доверять серверу, то процесс продолжается. Сервер может запросить клиент также отправить ему цифровой сертификат для взаимной аутентификации, но такое происходит не часто.

Если вам нужна полностью защищенная end-to-end сессия с аутентификацией вас и другой стороны, то вам стоит использовать сертификаты с цифровыми подписями обеих сторон. Вы получше поймете, как это работает, когда мы доберемся до цифровых сертификатов.

Клиент генерирует симметричный сеансовый ключ, например при помощи алгоритма AES, и шифрует его при помощи открытого ключа сервера. Этот зашифрованный ключ отправляется в адрес веб-сервера и оба они, и клиент, и сервер, используют этот симметричный ключ для шифрования данных, которые они отправляют друг другу.

Так и устанавливается защищенный канал обмена данными.

Для работы TLS нужен сервер и браузер с поддержкой TLS, а все современные браузеры поддерживают TLS, как мы убедились в статье на Википедии. И во всех браузерах вы увидите HTTPS, что будет указывать на то, что используется TLS, и кроме того, вы часто встречаете замок, все браузеры имеют нечто подобное с целью держать вас в курсе, используете ли вы HTTPS или HTTP с TLS.

You must be registered for see images attach


Если мы посмотрим на замок здесь, то увидим технические детали, какие алгоритмы шифрования используются. В данном случае, используется TLS. Эллиптические кривые с Диффи-Хеллманом, RSA. AES со 128-битным ключом, режим шифрования GCM, и SHA256 для целостности данных. Все это будет согласовываться между клиентом и сервером.

А если мы посмотрим в Wireshark, Wireshark - это анализатор протоколов, то увидим, как трафик принимается и отправляется. Мы видим здесь, что произошел диалог, в котором мой клиент, то есть браузер, сказал: "Вот вещи, которые я поддерживаю". А сервер ответил ему и сказал: "Что ж, вот то, что я, собственно, хотел бы использовать". Затем сервер предоставил сертификат с цифровой подписью и открытый ключ к нему.

Еще один сайт, который вам стоит изучить, это SSL Labs. Если вы введете сюда какой-либо сайт, или URL-адрес сайта, который работает по HTTPS, то вы сможете увидеть, какие опции шифрования предлагаются этим сайтом.

You must be registered for see images attach


You must be registered for see images attach


И вы сможете попасть сюда. Здесь вам будет рассказано, что означают различные цвета и пиктограммы в адресной строке Firefox. И все это отражает уровень средств защиты, используемых на определенных сайтах, речь идет о конфиденциальности, аутентификации и целостности.

Здесь мы видим серый земной шар, это означает, что веб-сайт не поддерживает идентификацию информации. Соединение между Firefox и веб-сайтом не зашифровано или только частично зашифровано, и оно не должно считаться безопасным от прослушивания.
You must be registered for see images attach
Серый замок:
Веб-сайт не предоставляет идентификационную информацию
Соединение с этим веб-сайтом не защищено полностью, потому что содержит незашифрованные элементы (такие, как изображения).
You must be registered for see images attach
Оранжевый предупреждающий треугольник:

Веб-сайт не предоставляет идентификационную информацию
Соединение между Firefox и веб-сайтом только частично зашифровано и не исключает прослушивание.
You must be registered for see images attach
Серый предупреждающий треугольник:

Адрес веб-сайта был верифицирован.

Соединение между Firefox и веб-сайтом зашифровано для предотвращения прослушивания.
You must be registered for see images attach
Зеленый замок:
Адрес веб-сайта был верифицирован при помощи сертификата расширенной проверки (EV). Это означает, что владельцу веб-сайта требуется предоставить гораздо больше информации, гораздо больше достоверной информации, чтобы доказать, что он именно тот, за кого себя выдает. Так что если вы видите EV и зеленый замок, то это означает, что была проведена расширенная проверка владельцев сайта.
Соединение между Firefox и веб-сайтом зашифровано для предотвращения прослушивания. Такие дела.
 
Сверху Снизу