Tor vs i2p: сравниваем

Tor vs i2p: сравниваем

t.me/chipollin0nion

Введение

Tor и Onion Routing это анонимные сети прокси-серверов, позволяющие пользователям туннелировать данные через их сеть с низкими задержками. Два основных отличия Tor и I2P основаны на разнице в моделях угроз и дизайне выходных прокси-узлов (хотя Tor и поддерживает скрытые сервисы, как и I2P). Кроме того, Tor реализует централизованную точку для управления видимостью сети, а так же для сбора статистики, в отличие от распределенной модели сети I2P, базы сети и выбора пира.

Функция выходных узлов в I2P/Tor обладает несколькими явными проблемами - как только данные покидают сеть, глобальные наблюдатели легко обеспечивают мониторинг этого траффика. В добавок, выходные узлы имеют доступ к незашифрованным данным в обе стороны, а также легко выявляются и подвержены разного рода атакам реального мира. И это все в добавление к обычным проблемам безопасности, которые мы знаем.

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

Сравнение терминологии Tor и I2P

Хотя Tor и I2P во многом похожи, у них значительно отличается терминология.

Tor / I2P

Ячейка / Сообщение

Клиент / Маршрутизатор или Клиент

Цепочка / Туннель

Справочник / NetDb

Сервер справочников / Floodfill маршрутизатор

Входные стражи / Быстрые пиры

Входные узлы / Входной прокси

Выходной узел / Выходной прокси

Скрытый сервис / Eepsite или Назначение

Дескриптор скрытого сервиса / LeaseSet

Введение / Входной шлюз

Узел / Маршрутизатор

Onion Proxy / I2PTunnel клиент (более-менее)

Relay / Маршрутизатор

Точка встречи / что-то вроде Входной шлюз + Выходная точка

Дескриптор маршрутизатора / RouterInfo

Сервер / Маршрутизатор

Преимущества Tor перед I2P

  • Значительно большая пользовательская база; Большее внимание со стороны науки и хакерского сообщества; выгоды от формальных исследований анонимности, сопротивления и производительности; известен не анонимный, видимый, связанный с университетом лиде
  • Уже разрешили ряд проблем масштабирования, к которым I2P еще просто не подоше
  • Имеет значительное финансирование
  • Больше разработчиков, включая ряд оплачиваемых
  • Более устойчивый к блокировкам на уровне государств, благодаря транспорту поверх TLS и мостам (I2P имеет предложения по "полностью закрытым путям", но они еще не реализованы
  • Достаточно большая сеть, чтобы адаптироваться к блокировке и попыткам DOS
  • Разработан и оптимизирован для выхода трафика, с большим числом выходных узло
  • Лучше документация, есть исследования и спецификации, лучше вебсайт, гораздо больше переведенных данных
  • Более эффективен в использовании памяти
  • Клиенты Tor работают с очень небольшими затратами на протокол
  • Централизованный контроль уменьшает сложность каждого узла и может эффективно работать с атаками Sybil
  • Набор высокопроизводительных узлов обеспечивает высокую производительность и меньшие задержки
  • Реализация на C, не Java

Преимущества I2P перед Tor

  • Разработан и оптимизирован для работы скрытых сервисов, что гораздо быстрее, чем в Tor
  • Полностью распределенная и самоорганизующаяся сеть
  • Пиры выбираются на основе постоянного профайлинга и замеров по производительности, нежели по объявленной пиром пропускной способности
  • Пиры Floodfill ("справочные сервера") постоянно меняются и не обладают доверием, в отличие от явно прошитых в Tor
  • Достаточно небольшая, чтобы ее сильно блокировали или DOS'или.
  • Обеспечивает пиринговые сервисы
  • Коммутирует пакеты, нежели соединения
  • Явная прозрачная балансировка сообщений по многим пирам, в отличие от использования одного пути
  • Надежность и отказоустойчивость за счет поддержания нескольких параллельных туннелей и обеспечения ротации туннелей соединения каждого пользователя масштабируются как O(1) вместо O(N) (например, Алиса держит 2 входящих туннеля, которые может использовать любой пир, с которым Алиса общается, а не держим по цепочке на каждый пир)
  • Односторонние туннели, вместо двусторонних цепочек, удваивая число узлов, которые пир должен скомпроменировать, чтобы получить ту же информацию
  • Защита против детектирования клиентской активности, даже если атакующий участвует в туннеле, так как туннели используются не только для передачи сообщений, но и для работы NetDb, управления туннелями, проверки работоспособности туннелей)
  • В I2P реализованы короткоживущие туннели, что уменьшает количество примеров, которые атакующий может использовать для атаки, в отличие от цепочек в Tor'е, которые как правило живут долго.
  • API I2P спроектированы под анонимность и безопасность, тогда как SOCKS сделан для функциональности
  • За редким исключением, все пиры участвуют в маршрутизации трафика для других
  • Затраты на работу в полном режиме довольно низки, тогда как в Tor, если клиент сам по себе не требует много полосы, но они еще и не полностью используют сеть.
  • Встроенный механизм автоматических обновлений
  • Используется как TCP, так и UDP транспорт
  • Реализация на Java, не C

Другие потенциальные, но еще не реализованные преимущества I2P

... и возможно никогда не реализуемые, так что не рассчитывайте на них

  • Защита от количественного анализа сообщений за счет заворачивания нескольких сообщений в одно
  • Защита от статистического анализа за счет добавления задержек на разных хопах (где задержки не зависят от других хостов)
  • Разные стратегии имитовставки на уровне туннелей (например создание туннеля, который будет обрабатывать 500 сообщений в минуту, где эндпойнт посылает случайные данные, если полезный трафик не передается и т.д)


Chipollino Onion Club

Report Page