Далее приведена ссылка на техническую документацию по I2P.
Этот индекс упорядочен от высшего к низшему слоям. Более высокие слои для "клиентов" или приложений; Низшие слои для самого маршрутизатора. Интерфейсом между приложениями и маршрутизатором является API I2CP (I2P Control Protocol)
The specifications linked below are currently supported in the network. See the Предложения page for specifications in discussion or development.I2P Project стремится поддерживать документацию в точном, актуальном виде. Если вы найдёте какие-либо неточности в документах по ссылкам ниже, пожалуйста, заполните запрос, описывающий проблему.
Ссылка для техническую документацию
Обзор
- Техническое вступление
- Менее техническое вступление
- Модель угроз и анализ
- Сравнение с другими анонимными сетями
- Спецификации
- Схема стека протокола
- Статьи о I2P
- Презентации, статьи, учебники, видео и интервью
- Обзор Проекта Invisible Internet Project (I2P) Август 28, 2003 (pdf)
Темы Уровня Приложений
- Application Development Overview and Guide
- Именование и адресная книга
- Команды подписки на адресную книгу
- Обзор плагинов
- Спецификация плагина
- Управляемые клиенты
- Встраивание маршрутизатора в ваше приложение
- Bittorrent через I2P
- I2PControl Plugin API
- Формат hostsdb.blockfile
- Формат файла конфигурации
API и протоколы уровня приложений
Высокоуровневые, доступные API для приложений, написанных на любом языке, для отправки и получения данных.- Обзор и руководство по разработке приложений
- I2PTunnel
- Настройки I2PTunnel
- SOCKS Proxy
- HTTP Proxy
- CONNECT Proxy
- IRC Proxy
- SOCKS IRC Proxy
- Streamr Proxy
- HTTP Bidir Proxy
- Протокол SAM (Deprecated)
- Протокол SAMv2 (Deprecated)
- Протокол SAMv3
- Протокол BOB (Deprecated)
API и Протоколы Транспорта точка-точка
Протоколы из-конца-в-конец используются клиентами для надежного и ненадежного соединения.- Обзор потокового протокола
- Спецификация на потоковый протокол
- Javadoc на Потоки
- Датаграммы
- Javadoc по Дейтаграммам
API и протокол интерфейса клиент-маршрутизатор
Низкоуровневый API используется для клиентов (приложений) для отправки и получения трафика с маршрутизатора. Традиционно используется только Java приложениями и высокоуровневыми API.- Обзор I2CP - I2P Control Protocol / API
- Спецификация I2CP
- Javadoc на I2CP API
- Спецификация основных структур данных
- Javadoc по Структурам Данных
Шифрование из-конца-в-конец
Как сообщения клиентов из-конца-в-конец шифруются маршрутизатором- ECIES-X25519-AEAD-Ratchet шифрование для каталогов
- ECIES-X25519 шифрование для роутеров
- Шифрование ElGamal/AES+SessionTag
- Подробности криптографии ElGamal и AES
Сетевая база данных
Распределенное хранилище и получение информации о маршрутизаторах и клиентах.- Обзор сетевой базы данных, подробности и анализ угроз.
- Криптографические хеши
- Криптографические подписи
- Подписи Red25519
- Спецификация начальной загрузки маршрутизатора
- Адреса Base32 для зашифрованных лизсетов
Протокол Сообщений Маршрутизатора
I2P - это маршрутизатор, ориентированный на сообщения. Сообщения пересылаются между маршрутизаторами и описываются протоколом I2NP.- I2NP - Обзор I2P Network Protocol
- Спецификация I2NP
- Javadoc на I2NP
- Спецификация основных структур данных
- Спецификация зашифрованого лизсета
- Javadoc по Структурам Данных
Туннели
Выбор узлов, запрос туннелей через эти узлы, шифрование и маршрутизация сообщений через эти туннели.- Профилирование и выбор узлов
- Обзор туннельной маршрутизации
- Чесночная маршрутизация и "чесночная" терминология
- Постройка и шифрование туннелей
- ElGamal/AES для шифрования запроса на построение
- Подробности криптографии ElGamal и AES
- Спецификация построения туннеля (ElGamal)
- Спецификация построения туннеля (ECIES-X25519)
- Спецификация низкоуровневых туннельных сообщений
- Однонаправленные Туннели
- Выбор и профилирование узла в Анонимной Сети I2P Статья 2009 года (pdf) устаревшая, но в целом все еще точная
Транспортный Уровень
Протоколы для прямой (точка-точка) связи маршрутизатор-маршрутизатор.- Обзор транспортного уровня
- NTCP Обзор и спецификация транспорта на основе TCP
- Спецификация NTCP2
- SSU Обзор транспорта на основе UDP
- Спецификация SSU
- Спецификация SSU2
- Шифрование транспорта NTCP
- Шифрование транспорта SSU
- Javadoc на транспорт
- Javadoc на NTCP
- Javadoc на SSU
Другие Темы о Маршрутизаторе
- Обновление ПО маршрутизатора
- Спецификация начальной загрузки маршрутизатора
- Нативная Библиотека BigInteger
- Синхронизация времени и NTP
- Производительность
- Формат файла конфигурации
- GeoIP File Format
Источники и Руководства Разработчика
- Руководство для Нового Разработчика
- Руководство для Нового Переводчика
- Руководство по Monotone
- Общие Указания по Разработке
- Javadocs в обычном интернет: Сервер 1 Сервер 3 Примечание: всегда убеждайтесь в том, что все javadoc актуальны, проверяя номер релиза.
- Javadocs внутри I2P: Сервер 3 Примечание: всегда убеждайтесь в том, что все javadoc актуальны, проверяя номер релиза.
- Предложения
- Встраивание маршрутизатора в ваше приложение
- Как настроить сервер начальной загрузки
- Порты, используемые I2P:
- Ручное обновление wrapper
- Форум пользователей
- Форму разработчиков внутри I2P
- Заявки о проблемах
- I2P Source экспортированный в GitHub
- I2P Source Git Repo внутри I2P
- Перевод исходников на Transifex
- План разработки
- Список To Do (устаревшее)
- Ancient invisiblenet I2P documents (2003)
- The ancient I2P mailing list 2004-07 to 2006-10