Что такое в адресе электронной почты tsl tunnel

Что такое в адресе электронной почты tsl tunnel

Краткое описание:
Туннелирование интернета, прокси, vpn.

С помощью приложения можно настроить начало соединения (мы называем это инъекцией) с набранным текстом соединения (по стандарту HTTP или любому другому стандарту) или настроить SNI для выполнения рукопожатия с сервером.
Это очень полезно для преодоления ограничений, налагаемых интернет-провайдерами или любой сетью, которую вы используете во время соединения.

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

Возможен трафик любого соединения по протоколам TCP, UDP, ICMP, IGMP.

Уважаемые пользователи!
В данной теме обсуждается лишь приложение TLS Tunnel.
Тут не обсуждаются способы обхода платы за Интернет и не сравниваются операторы мобильной связи и их тарифы.

Требуется Android: 5.0+
Русский интерфейс: Да

Версия: 1.7.0-4 GP (kiratt)
Версия: 1.7.0-3 AdFree (kiratt)
Версия: 1.7.0-3 GP (kiratt)
Версия: 1.6.13 AdFree (kiratt)
Версия: 1.6.13 GP (kiratt)
Версия: 1.6.11 версия Google Play (kiratt)
Версия: 1.6.10 AdFree (kiratt)
Версия: 1.6.10 версия Google Play (kiratt)
Версия: 1.6.7 AdFree (kiratt)
версия: 1.6.2 Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnelTLS Tunnel Free VPN for Injection_v1.6.2.apk ( 12.9 МБ )

Источник

Про порты и шифрование в почтовых серверах

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

При настройке сервера исходящей почты на почтовом клиенте вы видите 3 опции для шифрования — без шифрования, SMTPS и STARTTLS, а также 3 возможных порта — 25, 465, 587. Что тут выбрать и для чего — давайте разбираться.

Previous DNS записи для почтовых серверов
Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Когда вы отправляете кому-то сообщение, ваш почтовый клиент использует протокол ESMTP для передачи этого сообщения, а затем ваш почтовый сервер использует тот же протокол, если ему нужно передать это сообщение на другой сервер. И хотя все говорят и пишут SMTP, речь обычно идёт про ESMTP – тот же самый SMTP, но с набором расширений, таких как авторизация и шифрование. Да, когда-то SMTP не поддерживал даже авторизацию.

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Теперь немного про SMTPS. Когда-то интернет был настолько простым, что всё в нем передавалось в открытом виде. Потом появились криптографические протоколы шифрования, тот же самый SSL. И сервисы, которые раньше передавали информацию в открытом виде, начали заворачивать трафик в SSL.

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Но сделать это на тех же стандартных портах оказалось непросто – клиент и сервер должны договориться о методе шифрования, а чтобы сервис на одном порту одновременно работал для одних с шифрованием, а для других без – требовало бы изменений в протоколах. И чтобы не усложнять всё, начали лепить отдельные порты для шифрованных соединений – так появился 443 для HTTPS и 465 для SMTPS. Но тут спохватились – выделенных портов мало, количество сервисов растёт, а если еще каждый для своих целей будет использовать по несколько портов с шифрованием и без – беда.

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

И в итоге решили немного доработать протоколы. В некоторых случаях это не очень получилось, например для HTTP, а в случае с SMTP получился вполне себе годный вариант. Для этого в SMTP добавили расширение STARTTLS. Вообще, расширение STARTTLS используется не только для SMTP, в целом это команда для начала переговоров о шифровании. В отличие от SMTPS, который использует выделенный порт 465 и сразу шифрует соединение, STARTTLS лишь расширение для SMTP, а значит сессия инициируется как обычная SMTP сессия. Почтовые сервера приветствуют друг друга, а потом предлагают начать шифроваться и выбирают доступные криптографические протоколы.

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

В итоге с появлением STARTTLS из стандартов решили убрать SMTPS на 465 порту как отдельный сервис. Из стандартов убрали, но сервис остался, и до сих пор используется. Насчёт шифрования я еще сделаю отдельную тему, а пока поговорим про STARTTLS.

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Ранее я сказал, что при STARTTLS почтовые сервера или клиент/сервер открывают соединение без шифрования, а потом договариваются о шифровании. Для шифрования они используют тот же самый SSL/TLS. Но что, если они не смогут договориться? Получится, они будут общаться в незашифрованном виде? По интернету? А между тем, договариваются они без какого-либо шифрования, тем самым легко обмануть сервер или клиент отсутствием доступных методов шифрования. И в своё время уличили одного из провайдеров в такой атаке. И нафиг тогда такое шифрование нужно, спросите вы. Не всё так безнадёжно. На самом деле, администратор может отключить возможность передачи почты, если не удалось договориться о шифровании, а почтовые клиенты обязаны предупреждать о том, что сервер не поддерживает шифрования.

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

И так, мы разобрались с тем, что есть SMTP, который работает по 25 порту, есть SMTPS, который работает по 465, но есть еще один порт – 587, который также используется почтовым сервером.

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Как вы заметили, почтовые клиенты подключаются к серверам по SMTP. И почтовые сервера подключаются друг к другу тоже по SMTP. Также я говорил в прошлой части, что есть такие сервера – релей хосты, которые пересылают почту. По определённым причинам, в основном человеческим, в интернете есть релей хосты, которые позволяют неавторизованным пользователям перенаправлять сообщения с любого адреса. И эти хосты появляются каждый раз, когда нерадивый админ поднимает почтовый сервер, а это бывает нередко. Как итог, злоумышленники поднимают временные сервера или заражают компьютеры пользователей, которые рассылают спам через эти релей хосты без авторизации.

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Как итог, некоторые интернет провайдеры блокируют любые подключения пользователей к 25 порту.

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Между серверами в интернете этот порт открыт, а вот для пользователей сделали отдельный сервис – MSA (message submission agent – агент отправки почты), тем самым отделив подключения пользователей от подключения серверов, которые общаются по прежнему по MTA. Вообще, даже на 25 порту работает MSA, но официальный порт для него – 587. Так что мешает спамерам использовать этот порт? То что на MSA, как правило, обязательна авторизация пользователей. Это не единственная причина существования MSA – так как он работает с почтовыми клиентами, он лучше оптимизирован под работу клиентов – сразу предупреждает о каких-либо ошибках в сообщениях, например, отсутствии доменного адреса получателя.

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

И напоследок, давайте проследим за процессом отправки почтового сообщения. Для этого используем wireshark, почтовый клиент и gmail аккаунт. Всё начинается со стандартного TCP хэндшейка, после чего запускается SMTP сессия. В рамках сессии почтовый клиент и сервер приветствуют друг друга, после чего почтовый клиент предлагает зашифровать сессию, сервер даёт согласие, после чего происходит обмен ключами и начинается зашифрованная сессия TLSv1.3, после чего в зашифрованном виде клиент авторизуется и передаёт сообщение, которое не видно для перехватчика трафика.

Источник

Что такое в адресе электронной почты tsl tunnel

Краткое описание:
Туннелирование интернета, прокси, vpn.

С помощью приложения можно настроить начало соединения (мы называем это инъекцией) с набранным текстом соединения (по стандарту HTTP или любому другому стандарту) или настроить SNI для выполнения рукопожатия с сервером.
Это очень полезно для преодоления ограничений, налагаемых интернет-провайдерами или любой сетью, которую вы используете во время соединения.

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

Возможен трафик любого соединения по протоколам TCP, UDP, ICMP, IGMP.

Уважаемые пользователи!
В данной теме обсуждается лишь приложение TLS Tunnel.
Тут не обсуждаются способы обхода платы за Интернет и не сравниваются операторы мобильной связи и их тарифы.

Требуется Android: 5.0+
Русский интерфейс: Да

Версия: 1.7.0-4 GP (kiratt)
Версия: 1.7.0-3 AdFree (kiratt)
Версия: 1.7.0-3 GP (kiratt)
Версия: 1.6.13 AdFree (kiratt)
Версия: 1.6.13 GP (kiratt)
Версия: 1.6.11 версия Google Play (kiratt)
Версия: 1.6.10 AdFree (kiratt)
Версия: 1.6.10 версия Google Play (kiratt)
Версия: 1.6.7 AdFree (kiratt)
версия: 1.6.2 Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnelTLS Tunnel Free VPN for Injection_v1.6.2.apk ( 12.9 МБ )

Источник

Шифрование TLS-трафика по алгоритмам ГОСТ-2012 c Stunnel

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

В этой статье я хочу показать, как настроить Stunnel на использование российских криптографических алгоритмов в протоколе TLS. В качестве бонуса покажу, как шифровать TLS-канал, используя алгоритмы ГОСТ, реализованные в криптоядре Рутокен ЭЦП 2.0.

Но для начала давайте вообще разберёмся для чего нужен Stunnel. В двух словах — это программа, на которую можно переложить всю логику шифрования трафика между сервером и клиентом. Делается это следующем образом: допустим у вас есть клиент и сервер, которые общаются между собой без использования шифрования, аутентификации и проверки целостности. Вы могли бы переписать клиент и сервер так, чтобы все исходящие и входящие сообщения передавались между собой с учётом всех этих моментов, но для чего такие сложности, если можно это просто переложить на плечи другому приложения? Для решения такой задачи как раз подойдёт Stunnel.

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

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Стоит заметить, что на сервере не обязательно должен стоять именно Stunnel, для работы с криптографическими алгоритмами. Здорово, что есть готовые демонстрационные стенды, которые поддерживают российскую криптографию, список которых есть в презентации с РусКрипто’2019.

Нам нужны стабильно работающие серверы, осуществляющие двухстороннюю аутентификацию.
Мы выбрали серверы КриптоПро как наиболее надёжные с полной реализацией стандарта ГОСТ TLS. Спасибо им за это 🙂

Звучит достаточно просто, давайте попробуем организовать этот процесс.

Подготовительный шаг

OpenSSL для Windows можно взять отсюда, а для пользователей линукса — из репозиториев или собрать самому, скачав свежую версию отсюда. Также его можно взять из Rutoken SDK, из директории openssl\openssl-tool-1.1, этот архив нам будет полезен и дальше, т.к. в нём находится интересующий нас rtengine. Stunnel можно найти здесь. Для работы необходима версия >= 5.56.

Скачать rtengine можно из Rutoken SDK, он лежит в директории openssl\rtengine\bin. Закинуть его нужно туда, где хранятся все движки openssl. Узнать путь до них можно с помощью

Но просто переместить движок в нужную папку — мало, нужно ещё сконфигурировать сам openssl для работы с ним. Узнаём где лежит файл с конфигурацией openssl.cnf с помощью той же команды, что указана выше (под виндой stunnel идёт с собственной версией openssl, поэтому файл с конфигурацией лежит в path\to\stunnel\config\openssl.cnf

Давайте проверим, что rtengine подключился, для этого подключим токен и выведем список всех алгоритмов шифрования:

Напомню, что в Windows нужно проверять на openssl, который лежит рядом с stunnel
Если среди них будут присутствовать наши ГОСТы, значит всё настроено верно.

Настало время самого интересного: проверка установки соединения по ГОСТу с тестовыми серверами КриптоПро. Список данных серверов описан здесь (https://www.cryptopro.ru/products/csp/tc26tls). Каждый из этих серверов работает со своими алгоритмами для аутентификации и шифрования. Более того на портах 443, 1443, 2443,… запущены сервисы, которые воспринимают только определённые парамсеты. Так, например, по адресу http://tlsgost-256auth.cryptopro.ru происходит шифрование с аутентификацией с использованием алгоритмов GOST2012-GOST8912-GOST8912 и 256-битным ключом. Так же на порту 443 используется XchA-ParamSet, на порту 1443 — XchB-ParamSet, на порту 2443 — A-ParamSet и т.д.

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

Простой способ (работает под Windows и Linux)

Через командную строку

Для того, чтобы получить корневой сертификат, зайдём на сайт тестового УЦ ООО «КРИПТО-ПРО». И нажмём на кнопку для получения сертификата. Отобразится новая вкладка, в которой нужно будет выбрать метод шифрования Base64 и нажать на кнопку «Загрузка сертификата ЦС». Полученный файл certnew.cer сохраняем.

Теперь генерируем ключи.

Стоит заметить, что сгенерированные на токене ключи не могут быть скопированы с токена. В этом состоит одно из основных преимуществ их использования.

Создадим запрос на сертификат:

Опять открываем сайт тестового УЦ, но на этот раз нажимаем на кнопку «Отправить готовый запрос PKCS#10 или PKCS#7 в кодировке Base64». Вставляем в поле содержимое нашего запроса, нажимаем на кнопку Выдать и загружаем сертификат user.crt в формате Base64. Полученный файл сохраняем

Остался последний вопрос: Для чего всё это. Зачем мы получали все эти сертификаты, ключи и запросы?

Дело в том, что они нужны протоколу TLS для двусторонней аутентификации. Работает это очень просто.

У нас есть сертификат сервера, и мы считаем его доверенным.

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

Мы отправили этот запрос и сервер подписал её своей ЭЦП. Теперь мы можем каждый раз предъявлять этот сертификат, подписанный корневым УЦ, тем самым подтверждая, что мы — это мы.

Конфигурирование Stunnel

Осталось только правильно настроить наш туннель. Для этого создадим файл stunnel.conf с настройками Stunnel по умолчанию и напишем туда следующее:

Теперь, если всё сделано правильно, можно запустить Stunnel с нашей конфигурацией и подключиться к серверу:

Откроем браузер и зайдём по адресу localhost:8080. Если всё верно, то отобразится следующее:

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Если же нет, то смотрим логи и используем отладчик, чтобы понять в чём же всё-таки проблема.

Если у вас остались какие-то вопросы, то милости просим в комментарии 🙂

Источник

Что такое TLS

Данный текст является вольным переводом вот этой главы замечательной книги «High Performance Browser Networking» авторства Ильи Григорика. Перевод выполнялся в рамках написания курсовой работы, потому очень вольный, но тем не менее будет полезен тем, кто слабо представляет что такое TLS, и с чем его едят.

Общие сведения о TLS

Протокол TLS (transport layer security) основан на протоколе SSL (Secure Sockets Layer), изначально разработанном в Netscape для повышения безопасности электронной коммерции в Интернете. Протокол SSL был реализован на application-уровне, непосредственно над TCP (Transmission Control Protocol), что позволяет более высокоуровневым протоколам (таким как HTTP или протоколу электронной почты) работать без изменений. Если SSL сконфигурирован корректно, то сторонний наблюдатель может узнать лишь параметры соединения (например, тип используемого шифрования), а также частоту пересылки и примерное количество данных, но не может читать и изменять их.

Конкретное место TLS (SSL) в стеке протоколов Интернета показано на схеме:

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

После того, как протокол SSL был стандартизирован IETF (Internet Engineering Task Force), он был переименован в TLS. Поэтому хотя имена SSL и TLS взаимозаменяемы, они всё-таки отличаются, так как каждое описывает другую версию протокола.

Первая выпущенная версия протокола имела название SSL 2.0, но была довольно быстра заменена на SSL 3.0 из-за обнаруженных уязвимостей. Как уже упоминалось, SSL был разработан компанией Netscape, так что в январе 1999 года IETF открыто стандартизирует его под именем TLS 1.0. Затем в апреле 2006 года была опубликована версия TLS 1.1, которая расширяла первоначальные возможности протокола и закрывала известные уязвимости. Актуальная версия протокола на данный момент – TLS 1.2, выпущенная в августе 2008 года.

Как уже говорилось, TLS был разработан для работы над TCP, однако для работы с протоколами дейтаграмм, такими как UDP (User Datagram Protocol), была разработана специальная версия TLS, получившая название DTLS (Datagram Transport Layer Security).

Шифрование, аутентификация и целостность

Также в рамках процедуры TLS Handshake имеется возможность установить подлинность личности и клиента, и сервера. Например, клиент может быть уверен, что сервер, который предоставляет ему информацию о банковском счёте, действительно банковский сервер. И наоборот: сервер компании может быть уверен, что клиент, подключившийся к нему – именно сотрудник компании, а не стороннее лицо (данный механизм называется Chain of Trust и будет рассмотрен в соответствующем разделе).

Наконец, TLS обеспечивает отправку каждого сообщения с кодом MAC (Message Authentication Code), алгоритм создания которого – односторонняя криптографическая функция хеширования (фактически – контрольная сумма), ключи которой известны обоим участникам связи. Всякий раз при отправке сообщения, генерируется его MAC-значение, которое может сгенерировать и приёмник, это обеспечивает целостность информации и защиту от её подмены.

Таким образом, кратко рассмотрены все три механизма, лежащие в основе криптобезопасности протокола TLS.

TLS Handshake

Перед тем, как начать обмен данными через TLS, клиент и сервер должны согласовать параметры соединения, а именно: версия используемого протокола, способ шифрования данных, а также проверить сертификаты, если это необходимо. Схема начала соединения называется TLS Handshake и показана на рисунке:
Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Также имеется дополнительное расширение процедуры Handshake, которое имеет название TLS False Start. Это расширение позволяет клиенту и серверу начать обмен зашифрованными данными сразу после установления метода шифрования, что сокращает установление соединения на одну итерацию сообщений. Об этом подробнее рассказано в пункте “TLS False Start”.

Обмен ключами в протоколе TLS

По различным историческим и коммерческим причинам чаще всего в TLS используется обмен ключами по алгоритму RSA: клиент генерирует симметричный ключ, подписывает его с помощью открытого ключа сервера и отправляет его на сервер. В свою очередь, на сервере ключ клиента расшифровывается с помощью закрытого ключа. После этого обмен ключами объявляется завершённым. Данный алгоритм имеет один недостаток: эта же пара отрытого и закрытого ключей используется и для аутентификации сервера. Соответственно, если злоумышленник получает доступ к закрытому ключу сервера, он может расшифровать весь сеанс связи. Более того, злоумышленник может попросту записать весь сеанс связи в зашифрованном варианте и занять расшифровкой потом, когда удастся получить закрытый ключ сервера. В то же время, обмен ключами Диффи-Хеллмана представляется более защищённым, так как установленный симметричный ключ никогда не покидает клиента или сервера и, соответственно, не может быть перехвачен злоумышленником, даже если тот знает закрытый ключ сервера. На этом основана служба снижения риска компрометации прошлых сеансов связи: для каждого нового сеанса связи создаётся новый, так называемый «временный» симметричный ключ. Соответственно, даже в худшем случае (если злоумышленнику известен закрытый ключ сервера), злоумышленник может лишь получить ключи от будущих сессий, но не расшифровать ранее записанные.

На текущий момент, все браузеры при установке соединения TLS отдают предпочтение именно сочетанию алгоритма Диффи-Хеллмана и использованию временных ключей для повышения безопасности соединения.

Следует ещё раз отметить, что шифрование с открытым ключом используется только в процедуре TLS Handshake во время первоначальной настройки соединения. После настройки туннеля в дело вступает симметричная криптография, и общение в пределах текущей сессии зашифровано именно установленными симметричными ключами. Это необходимо для увеличения быстродействия, так как криптография с открытым ключом требует значительно больше вычислительной мощности.

Возобновление сессии TLS

Как уже отмечалось ранее, полная процедура TLS Handshake является довольно длительной и дорогой с точки зрения вычислительных затрат. Поэтому была разработана процедура, которая позволяет возобновить ранее прерванное соединение на основе уже сконфигурированных данных.

Начиная с первой публичной версии протокола (SSL 2.0) сервер в рамках TLS Handshake (а именно первоначального сообщения ServerHello) может сгенерировать и отправить 32-байтный идентификатор сессии. Естественно, в таком случае у сервера хранится кэш сгенерированных идентификаторов и параметров сеанса для каждого клиента. В свою очередь клиент хранит у себя присланный идентификатор и включает его (конечно, если он есть) в первоначальное сообщение ClientHello. Если и клиент, и сервер имеют идентичные идентификаторы сессии, то установка общего соединения происходит по упрощённому алгоритму, показанному на рисунке. Если нет, то требуется полная версия TLS Handshake.

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Процедура возобновления сессии позволяет пропустить этап генерации симметричного ключа, что существенно повышает время установки соединения, но не влияет на его безопасность, так как используются ранее нескомпрометированные данные предыдущей сессии.

Однако здесь имеется практическое ограничение: так как сервер должен хранить данные обо всех открытых сессиях, это приводит к проблеме с популярными ресурсами, которые одновременно запрашиваются тысячами и миллионами клиентов.

Для обхода данной проблемы был разработан механизм «Session Ticket», который устраняет необходимость сохранять данные каждого клиента на сервере. Если клиент при первоначальной установке соединения указал, что он поддерживает эту технологию, то в сервер в ходе TLS Handshake отправляет клиенту так называемый Session Ticket – параметры сессии, зашифрованные закрытым ключом сервера. При следующем возобновлении сессии, клиент вместе с ClientHello отправляет имеющийся у него Session Ticket. Таким образом, сервер избавлен от необходимости хранить данные о каждом соединении, но соединение по-прежнему безопасно, так как Session Ticket зашифрован ключом, известным только на сервере.

TLS False Start

Технология возобновления сессии бесспорно повышает производительность протокола и снижает вычислительные затраты, однако она не применима в первоначальном соединении с сервером, или в случае, когда предыдущая сессия уже истекла.

Для получения ещё большего быстродействия была разработана технология TLS False Start, являющаяся опциональным расширением протокола и позволяющая отправлять данные, когда TLS Handshake завершён лишь частично. Подробная схема TLS False Start представлена на рисунке:

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Важно отметить, что TLS False Start никак не изменяет процедуру TLS Handshake. Он основан на предположении, что в тот момент, когда клиент и сервер уже знают о параметрах соединения и симметричных ключах, данные приложений уже могут быть отправлены, а все необходимые проверки можно провести параллельно. В результате соединение готово к использованию на одну итерацию обмена сообщениями раньше.

TLS Chain of trust

Пусть теперь Алиса получает сообщение от Чарли, с которым она не знакома, но который утверждает, что дружит с Бобом. Чтобы это доказать, Чарли заранее попросил подписать собственный открытый ключ закрытым ключом Боба, и прикрепляет эту подпись к сообщению Алисе. Алиса же сначала проверяет подпись Боба на ключе Чарли (это она в состоянии сделать, ведь открытый ключ Боба ей уже известен), убеждается, что Чарли действительно друг Боба, принимает его сообщение и выполняет уже известную проверку целостности, убеждаясь, что сообщение действительно от Чарли:

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Описанное в предыдущем абзаце и есть создание «цепочки доверия» (или «Chain of trust», если по-английски).
В протоколе TLS данные цепи доверия основаны на сертификатах подлинности, предоставляемых специальными органами, называемыми центрами сертификации (CA – certificate authorities). Центры сертификации производят проверки и, если выданный сертификат скомпрометирован, то данный сертификат отзывается.

Из выданных сертификатов складывается уже рассмотренная цепочка доверия. Корнем её является так называемый “Root CA certificate” – сертификат, подписанный крупным центром, доверие к которому неоспоримо. В общем виде цепочка доверия выглядит примерно таким образом:

Что такое в адресе электронной почты tsl tunnel. Смотреть фото Что такое в адресе электронной почты tsl tunnel. Смотреть картинку Что такое в адресе электронной почты tsl tunnel. Картинка про Что такое в адресе электронной почты tsl tunnel. Фото Что такое в адресе электронной почты tsl tunnel

Естественно, возникают случаи, когда уже выданный сертификат необходимо отозвать или аннулировать (например, был скомпрометирован закрытый ключ сертификата, или была скомпрометирована вся процедура сертификации). Для этого сертификаты подлинности содержат специальные инструкции о проверке их актуальности. Следовательно, при построении цепочки доверия, необходимо проверять актуальность каждого доверительного узла.

Механизм этой проверки прост и в его основе лежит т.н. «Список отозванных сертификатов» (CRL – «Certificate Revocation List»). У каждого из центров сертификации имеется данный список, представляющий простой перечень серийных номеров отозванных сертификатов. Соответственно любой, кто хочет проверить подлинность сертификата, попросту загружает данный список и ищет в нём номер проверяемого сертификата. Если номер обнаружится – это значит, что сертификат отозван.

Таким образом, в данной статье рассмотрены все ключевые средства, предоставляемые протоколом TLS для защиты информации. За некоторую отсебятину в статье прошу прощения, это издержки изначальной цели выполнения перевода.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *