Запутанный TCP - Obfuscated TCP
Запутанный TCP (ObsTCP) было предложением транспортный уровень протокол, который реализует гибкое шифрование над Протокол управления передачей (TCP). Он был разработан для предотвращения массового прослушивание телефонных разговоров и злонамеренное повреждение TCP-трафика на Интернет, с более низкой стоимостью внедрения и сложностью, чем Безопасность транспортного уровня (TLS). В августе 2008 г. IETF отклонил предложение о варианте TCP, предложив вместо этого сделать это на уровне приложений.[1] Спустя несколько месяцев проект бездействовал.
В июне 2010 г. в отдельном предложении называлось tcpcrypt был отправлен, что разделяет многие цели ObsTCP: прозрачность для приложений, гибкость и низкие накладные расходы. Требуется еще меньше настроек (без записей DNS или заголовков HTTP). В отличие от ObsTCP, tcpcrypt также предоставляет примитивы вплоть до приложения для реализации аутентификации и предотвращения Атаки посредника (MITM).[2]
Историческое происхождение
ObsTCP был создан Адам Лэнгли. Концепция обфускации TCP-коммуникаций с помощью гибкого шифрования развивалась в несколько итераций. Экспериментальные версии ObsTCP использовали параметры TCP в пакетах «SYN», чтобы объявить о поддержке ObsTCP, при этом сервер отвечает открытым ключом в «SYNACK». An IETF Проект протокола был впервые опубликован в июле 2008 года. Пакеты были зашифрованы с помощью Salsa20 / 8,[3] и подписанные пакеты с контрольными суммами MD5.[4]
Настоящая (третья) итерация использует специальные записи DNS (или внеполосные методы) для объявления поддержки и ключей без изменения работы базового протокола TCP.[5]
Возможности шифрования
ObsTCP - это недорогой протокол, предназначенный для защиты TCP-трафика, не требующий сертификаты открытых ключей, услуги Центры сертификации, или сложный Инфраструктура открытых ключей. Он предназначен для подавления использования ненаправленного наблюдения для отслеживания незашифрованного трафика, а не для защиты от человека в средней атаке.
В настоящее время программное обеспечение поддерживает Salsa20 / 8.[3] потоковый шифр и Curve25519[6] функция Диффи-Хеллмана с эллиптической кривой.
Сравнение с TLS / SSL / HTTPS
Особенность | ObsTCP | SSL / TLS / HTTPS |
---|---|---|
Инфраструктура открытых ключей | Не требует подписанного сертификата открытого ключа | Требуется приобретение подписанного сертификата открытого ключа (или использование самозаверяющего сертификата) |
Поддержка веб-браузера | Исправленные версии Fire Fox имеется в наличии[7] | Широко поддерживается всеми популярными веб-браузерами |
Поддержка веб-сервера | Требуются исправления / обновления сервера для lighttpd и апач[8] | Широко поддерживается популярными веб-серверами |
Сетевая задержка | Нет дополнительных поездок туда и обратно на каждое соединение (хотя DNS поиск может потребоваться для получения ключевой рекламы) | Один или два дополнительных обхода на каждое соединение |
Скорость шифрования | Очень быстрая криптография | Помедленнее |
Порт TCP | Может использовать любой порт TCP | Обычно использует порт 443, но может использовать любой порт TCP. |
Характеристики безопасности | Не сопротивляется атакам какого-то человека посередине | Противостоит атакам человека посередине |
Установление соединения
Сервер, использующий ObsTCP, объявляет открытый ключ и номер порта.
А DNS 'A запись' может использоваться для рекламы серверной поддержки ObsTCP (с DNS "запись CNAME" предоставляя "понятное" имя). Вместо этого также могут использоваться записи заголовка HTTP или кэшированная / внешняя информация о наборах ключей.
Клиент, подключающийся к серверу ObsTCP, анализирует записи DNS, использует записи заголовка HTTP или использует кэшированные / внеполосные данные для получения открытого ключа и номера порта перед подключением к серверу и шифрованием трафика.
Смотрите также
- Оппортунистическое шифрование
- tcpcrypt (более новое предложение с похожими целями)
- Безопасность транспортного уровня (TLS, также известный как SSL)
- IPsec
Рекомендации
- ^ Адам Лэнгли (15 августа 2008 г.). "Извините, ребята, я думаю, что Obfuscated TCP умер". Обфусцированный блог разработки TCP.
- ^ Андреа Биттау; и другие. (2010-08-13). Доводы в пользу повсеместного шифрования на транспортном уровне (PDF). 19-й симпозиум по безопасности USENIX.
- ^ а б "Снаффл 2005". cr.yp.to. Получено 2009-05-08.
- ^ Эдди, Уэсли; Лэнгли, Адам. «Расширение пространства, доступного для параметров TCP». IETF. Получено 2015-02-07.
- ^ "Обфусцированная история TCP". Google. 2 октября 2008 г. Архивировано с оригинал на 2009-01-08. Получено 2009-05-08.
- ^ "Curve25519: высокоскоростная криптография на основе эллиптических кривых". cr.yp.to. Получено 2009-05-08.
- ^ «Обфусцированные TCP-клиенты: Firefox». Google. Получено 2009-05-08.
- ^ «Установка ObsTCP с использованием транспортного уровня ObsTCP». Google. Получено 2009-05-08.