I2P

Материал из in.wiki
Перейти к навигации Перейти к поиску
I2P
Язык программирования:
Java
Операционная система:
Кроссплатформенное программное обеспечение



Разработчик:
Команда разработчиков I2P



Текущая версия:
0.8.4
Дата выхода текущей версии:
Свойство «Дата выпуска» типа «Страница» со значением «3 февраля Ошибка Lua в Модуль:External_links на строке 409: attempt to index field 'wikibase' (a nil value).» содержит недопустимые символы или неполно и может привести к неожиданным результатам при семантическом аннотировании или запросе.3 февраля 2011



Лицензия:
Open Source - Component licenses: Public domain, BSD, GPL, MIT, Artistic License

I2P (сокр. от англ. "Invisible Internet Project", рус. «Проект Невидимый Интернет», произносится «айтупи») — Открытое программное обеспечение, созданное для организации сверхустойчивой анонимной, оверлейной, зашифрованной сети и применимое для веб-сёрфинга, анонимного хостинга (создания анонимных сайтов, форумов и чатов, файлообменных серверов и т.д.), систем обмена мгновенными сообщениями, блоггинга, а также для файлообмена (в том числе P2P - Torrent, eDonkey, Kad, Gnutella и т.д.), электронной почты, IP-телефонии и многого другого. Названия сайтов в сети I2P имеют вид "http://название_сайта.i2p".

Обзор[править | править код]

I2P — это анонимная, самоорганизующаяся распределённая сеть Network database, которая использует модифицированный DHT Kademlia, но отличается тем, что хранит в себе хешированные адреса узлов сети, зашифрованные AES IP-адреса, а также публичные ключи шифрования, причем соединения по Network database тоже зашифрованны. Сеть предоставляет приложениям простой транспортный механизм для анонимной и защищённой пересылки сообщений друг другу. Хотя сеть I2P строго ориентирована на определение пути передачи пакетов, благодаря библиотеке Streaming lib реализована также и их доставка в первоначально заданной последовательности без ошибок, потерь и дублирования, что даёт возможность использовать в сети I2P IP-телефонию, интернет-радио, IP-телевидение, видеоконференции и другие потоковые протоколы и сервисы.

Внутри сети I2P работает собственный каталог сайтов, электронные библиотеки, а также торрент-трекеры. Кроме того, существуют гейты для доступа в сеть I2P непосредственно из Интернета созданные специально для пользователей, которые по разным причинам не могут установить на компьютер программное обеспечение «Проекта Невидимый Интернет».

Особенности сети[править | править код]

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

В I2P сети нет никаких центральных серверов и нет привычных DNS-серверов, также сеть абсолютно не зависит от внешних DNS, что приводит к невозможности уничтожения, блокирования и фильтрации сети, которая будет существовать и функционировать, пока на планете останутся хотя бы два компьютера в сети. Также отсутствие DNS-серверов и использование DHT Kademlia — механизма распределения имен в сети I2P — дает возможность создания любым пользователем сети I2P своего сайта, проекта, торрент-трекера и т.д. без необходимости где-то регистрироваться, оплачивать кому либо доменное имя или ждать чьего-то разрешения. Каждый человек волен абсолютно бесплатно и свободно создавать любые сайты, при этом узнать местонахождение сервера и человека практически невозможно.

Также стоит отметить, что каждый человек, который присоединился к сети I2P увеличивает надежность, анонимность и скорость всей сети в целом. Чтобы попасть в сеть I2P, нужно всего лишь установить на своем компьютере программу-маршрутизатор, которая будет расшифровывать/зашифровывать весь трафик и перенаправлять его в сеть I2P. Настраивать программу-маршрутизатор в большинстве случаев не требуется — она уже по умолчанию настроена оптимальным образом. Интерфейс полностью переведен на русский язык. При обращении к сайту или другому ресурсу в обычном (внешнем) интернете, программа-маршрутизатор автоматически подобно Tor прокладывает туннель к одному из внешних шлюзов и даёт возможность анонимно посещать и использовать внешние интернет-ресурсы. Также внутренние сайты в сети I2P доступны из внешнего интернета через специальные шлюзы.

Шифрование в сети I2P[править | править код]

Весь трафик в сети шифруется от отправителя до получателя. В сумме при пересылке сообщения используется четыре уровня шифрования (сквозное, чесночное, туннельное, а также шифрование транспортного уровня), перед шифрованием в каждый сетевой пакет автоматически добавляется небольшое случайное количество случайных байт, что бы еще больше обезличить передаваемую информацию и затруднить попытки анализа содержимого и блокировки передаваемых сетевых пакетов. В качестве адресов сети используются криптографические идентификаторы, состоящие из пары криптографических публичных ключей. IP адреса в сети I2P не используются нигде и никогда, поэтому определить истинный адрес какого либо узла в сети не представляется возможным. Каждое сетевое приложение на компьютере строит для себя отдельные шифрованные, анонимные туннели. Туннели в основном одностороннего типа (исходящий трафик идет через одни туннели, а входящий через другие) — направление, длину, а также какое приложение или служба создали эти туннели выяснить практически невозможно. Все передаваемые сетевые пакеты имеют свойство расходится по нескольким разным туннелям что делает бессмысленным попытки прослушать и проанализировать с помощью сниффера проходящий поток данных. Так же происходит периодическая смена (примерно каждые 10 минут) уже созданных туннелей на новые, с новыми цифровыми подписями и ключами шифрования (цифровые подписи и ключи шифрования разумеется у каждого туннеля свои).

По этим причинам нет необходимости беспокоится о том, чтобы прикладные программы обеспечивали шифрование своего трафика. Или если существует недоверие к шифрованию программ имеющих закрытый исходный код (как например Skype). Также, например, существуют программы IP-телефонии (такие, как Ekiga), не умеющие шифровать свой трафик и передающие его в открытом виде. В любом случае сеть I2P произведет четырехуровневое шифрование всех пакетов и обезопасит передачу/прием всех данных.

В I2P сети используются (для разных уровней и протоколов) следующие системы и методы шифрования и подписи:

  1. 256 бит AES режим CBC с PKCS#5;
  2. 2048 бит Схема Эль-Гамаля;
  3. 2048 бит Алгоритм Диффи — Хеллмана;
  4. 1024 бит DSA;
  5. 256 бит HMAC - Алгоритм усиления криптостойкости других криптоалгоритмов;
  6. 256 бит Хэширование SHA256.

История сети I2P[править | править код]

Проект I2P был начат в 2003 году для поддержки всех, кто участвует в создании более свободного общества и заинтересован в новом нецензурируемом, анонимном и безопасном средстве общения и распространения информации. I2P — это попытка создать защищённую децентрализованную анонимную сеть с малым временем отклика и свойствами автономности, отказоустойчивости и масштабируемости. Конечной задачей является способность функционировать в жёстких условиях, даже под давлением организаций, обладающих значительными финансовыми или политическими ресурсами. Все аспекты сети доступны в виде исходного кода и бесплатны. Это позволяет пользователям убедиться, что программное обеспечение делает именно то, что заявлено, и облегчает сторонним разработчикам возможность совершенствовать защиту сети от настойчивых попыток ограничить свободное общение. Команда разработчиков I2P - это открытая группа, чьим участником может стать любой, кто заинтересован в проекте.

Многие люди из команды разработчиков I2P ранее участвовали в проектах IIP и Freenet. Но, в отличие от последних, «Проект Невидимый Интернет» — это анонимная одноранговая распределённая коммуникационная среда, с которой могут работать как любые традиционные сетевые службы и протоколы, такие как E-Mail, IRC, HTTP, Telnet, так и распределённые приложения, вроде баз данных, Squid и DNS.

Начиная с версии 0.7.2 (выпущенной в мае 2009 года) релизы программы считаются стабильными. До мая 2009 года авторы проекта всеми силами удерживали пользователей от активной рекламы I2P сети, указывая на возможную нестабильность и beta-статус разработки.

В 2009 году было выпущено девять обновлений, а трафик сети увеличился в 5 раз.

iMule в сети I2P[править | править код]

Специально для сети I2P был создан анонимный, защищенный клиент на базе aMule под названием "iMule" - (невидимый Mule) - который представляет из себя свободный анонимный клиент файлообменной сети, который использует анонимные соединения с помощью сети I2P и сети Kad. iMule в отличие от сети EDonkey используемой в "классических" клиентах eMule и aMule, которые подключаются к серверам и раскрывают всю идентификационную информацию - IP адреса и т.д. iMule скачивает и отдает файлы без раскрытия своего IP адреса и какой либо идентификационной информации и весь входящий и исходящий трафик подвергается четырехуровневому шифрованию в сети I2P. iMule разработан как анонимный клиент файлообменной сети. С версии 1.2.3, I2P маршрутизатор входит в поставку программы и исходный код, так что никакого дополнительного ПО для подключения к сети I2P не требуется. Если же пользователь хочет использовать остальные возможности сети I2P (такие как BitTorrent, Gnutella, анонимную электронную почту и анонимные веб-сайты и т.д.), то он должен установить полный пакет маршрутизатора I2P. Будучи похожим на aMule, iMule старается быть максимально портабельным и кроссплатформенным с использованием библиотеки wxWidgets. В данный момент клиент поддерживает Linux, Mac OS X, различные BSD-подобные операционные системы, Windows и Solaris.

Премии за работу над полезными для I2P проектами[править | править код]

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

Разработчики также открыты для денежных пожертвований со стороны всех, кто желает материально поддержать I2P, но не может определиться, какому именно из заявленных проектов нужно помочь. В таком случае Вы можете сделать пожертвование в фонд общего назначения и довериться выбору команды I2P — деньги из фонда идут на вознаграждения за разнообразные проекты, на оплату хостинга и тому подобные расходы. Ознакомиться со списком оплачиваемых целевых проектов можно в специальном разделе официального сайта I2P.

Основные приложения, доступные для использования внутри сети I2P[править | править код]

  • eepsite (localhost:7658) — защищенные веб-узлы, доступные только в сети I2P через
  • SusiDNS (localhost:7657/susidns/index.jsp) — DNS-клиент
  • Susimail (localhost:7657/susimail/susimail) — почтовый клиент
  • I2Psnark (localhost:7657/i2psnark) — торрент-клиент
  • I2PTunnel (localhost:7657/i2ptunnel/index.jsp) — интегрированная в I2P программа, позволяющая различным службам TCP/IP устанавливать связь поверх I2P с помощью туннелей
  • localhost:7657/tunnels.jsp — Мониторинг туннелей

См. также[править | править код]

Руководства и справки
Внутренние ресурсы сети I2P
Сайты библиотек в сети I2P
Торренты в сети I2P
Гейты для доступа в сеть I2P непосредственно из Интернета