Как использовать криптосеть в анонимном хостинге через I2P: практические советы
7 Август 2011Как разместить сайт в сети полностью анонимно? На сегодняшний момент самым технологичным решением в этом плане, обеспечивающим возможность анонимного хостинга, является технология I2P. Именно эта технология практически не позволяет определить, где на самом деле находится сервер с файлами.
Что собой представляет технология I2P? Эту технологию оптимальнее всего воспринимать как работающий сверх обычного протокола IP дополнительный сетевой уровень, предоставляющий возможности для анонимной передачи данных. Безопасная передача данных в I2P осуществляется посредством использования различных видов криптографии и многочисленных pear-to-pear туннелей. Последние, кстати, и обеспечивают отказоустойчивость и анонимность системы. Технологию I2P используют намного реже более известного аналога Tor, поэтому далее мы сравним два этих решения.
И система Tor, и система I2P для полной анонимности данных, передаваемых через них, используют многоуровневую криптографию. Однако у них есть некоторые различия. Например, во время работы Tor система больше сконцентрирована на сохранении клиента во время серфинга в сети инкогнито. А вот система I2P направлена на построение анонимной сети, которая объединит подключившихся к ней пользователей. Безусловно, в этой системе также есть возможность анонимного серфинга, однако главное предназначение данной системы – анонимный хостинг серверов.
Прежде всего, речь идет о размещении в сети веб-сайтов, на языке I2P называющихся eepsites. Однако система I2P работает намного надежнее, быстрее и устойчивее попыток, реализованных в Tor.
Технология I2P не подразумевает наличие привычных DNS или центральных серверов. Однако здесь применяется распределенная хеш-таблица DHT (Distributed Hash Table) на базе Kademlia. Это является гарантией устранения серьезной точки отказа системы. Кроме того, принцип I2P базируется на пиринговой технологии для обмена информацией в роутинге. Поэтому перекрыть доступ файерволом к главной директории сервисов I2P невозможно. В I2P пользователи получают информацию друг о друге с помощью системы NetDB. Другими словами, каждый участник такой анонимной сети – своеобразный роутер, через которого проходит транзитный трафик. Другими словами, в данной системе особой разницы между сервером и обычным клиентом нет.
Адресация в I2P
Адресация в I2P осуществляются следующим образом: вместо IP используются специальный криптографический идентификатор, обозначающий и роутеры, и конечные сервисы.
Понятно, что такой идентификатор не очень удобен, точнее, совсем не удобен. Мало того, он не поддерживает некоторые протоколы, в том числе и HTTP. Именно поэтому в I2P используется альтернативный путь “Base 32 Names”, который очень напоминает правила составления имен .onion в сети Tor. В исходный raw-вид с заменой некоторых символов декодируется изначальный 516-байтовый идентификатор. То значение, которое получается в результате такой декодировки, хешируется посредством SHA256, а затем кодируется в Base32. В конечном итоге к полученным данным прибавляется .b32.i2p. В конце концов, получается вполне пригодная к использованию последовательность символов.
С этой формой дальнейшая работа заметно упрощается. I2P не имеет какого-то официального аналога DNS-сервера, выполняющего резолвинг имен – установку соответствия между идентификатором и доменом <somename>.i2p. В противном случае именно это и была бы серьезная точка отказа всей системы. К каждой ноде в системе прикреплен свой набор текстовых файлов с выполненным маппингом для сервисов. Эти файлы сильно напоминают традиционный конфиг HOSTS. Однако пользователь имеет возможность синхронизировать собственную базу закладок посредством спецсервера подписки в саму систему. При этом он доверяет владельцу сервиса, надеясь, что последний предоставляет ему верные идентификаторы.
Механизмы защиты
Система I2P имеет несколько технологий для устранения возможности подмены и перехвата трафика. I2P для коммуникации использует концепцию входящих-исходящих (in-out) туннелей. Другими словами, в этой технологии ответы и запросы совсем не всегда идут по одному и тому же пути. При передаче сообщения оно многократно шифруется, а конечные узлы сообщения обозначаются криптованными идентификаторами. А сами туннели каждые 10 мин. перестраиваются.
Так называемая «чесночная маршрутизация» - это еще один защитный механизм, реализованный в I2P. Этот механизм, по своей сути, обозначает все то же многослойное шифрование, позволяющее единственному сообщению делиться на большое количество отрывков – полностью сформированных сообщений с инструкциями для их доставки. То есть в момент подготовки к передаче сообщения оно делится на много отрывков, к которым добавляются еще и транзитные отрывки сообщений. Определить, является ли определенный отрывок сообщения отрывком нашего, либо же он отрывок транзитного, может лишь тот, кто создал сообщение. Никому другому это не под силу.
Описанный выше сложнейший принцип обеспечивает надежную защиту данных. Однако он не налагает никаких ограничений на использование технологии I2P. В сети таким образом можно расположить всевозможные сервисы: IRC, eDonkey, BitTorrent, Email. Мало того, создатели I2P предоставляют API для создания новых приложений, работающих через защищенную сеть, но не требуют дополнительной установки и настройки I2P-клиента от пользователя.