Далі наведено покажчик до технічної документації по I2P.
Покажчик впорядковано від верхніх до нижчих рівнів. Верхні рівні призначені для "клієнтів" або додатків; нижні рівні для внутрішньої частини маршрутизатора. Інтерфейсом між додатками та маршрутизатором є I2CP (I2P Control Protocol) API.
The specifications linked below are currently supported in the network. See the Proposals page for specifications in discussion or development.I2P Project прагне підтримувати точність документації. Якщо ви знайшли будь-які неточності в документах за посиланнями нижче, будь-ласка, зробіть заявку, що описує проблему.
Покажчик до Технічної Документації
Огляд
- Technical Introduction
- A Less-Technical Introduction
- Модель загрози та аналіз
- Порівняння до інші анонімні мережі
- Специфікація
- Protocol stack chart
- Документи на I2P
- Презентації, статті, навчальні посібники, відеоролики та інтерв'ю
- Invisible Internet Project (I2P) Project Overview August 28, 2003 (pdf)
Application-Layer Topics
- Application Development Overview and Guide
- Naming and Address Book
- Address Book Subscription Feed Commands
- Перегляд Плагіни
- Специфікація плагіна
- Керовані клієнти
- Embedding the router in your application
- Bittorrent через I2P
- I2PControl плагін API
- Формат hostsdb.blockfile
- Формат файлу конфігурації
Application Layer API and Protocols
High-level, easy-to-use APIs for applications written in any language to send and receive data.- Application Development Overview and Guide
- 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)
End-to-End Transport API and Protocols
The end-to-end protocols used by clients for reliable and unreliable communication.- Streaming Protocol Overview
- Streaming Protocol Specification
- Streaming Javadoc
- Datagrams
- Datagram Javadoc
API та протокол інтерфейсу клієнта до роутера
The lowest-level API used for clients (applications) to send and receive traffic to a router. Traditionally used only by Java applications and higher-level APIs.- I2CP - I2P Control Protocol / API overview
- Специфікація I2CP
- I2CP API Javadoc
- Common data structures specification
- Структури даних Javadoc
Шифрування end-to-end
How client messages are end-to-end encrypted by the router.- ECIES-X25519-AEAD-Ratchet encryption for destinations
- ECIES-X25519 encryption for routers
- Шифрування ElGamal/AES + SessionTag
- Деталі криптографії ElGamal та AES
Мережева база даних
Distributed storage and retrieval of information about routers and clients.- Network database overview, details, and threat analysis
- Криптографічні хеші
- Криптографічні підписи
- Red25519 signatures
- Router reseed specification
- Base32 Addresses for Encrypted Leasesets
Протокол повідомлення роутера
I2P is a message-oriented router. The messages sent between routers are defined by the I2NP protocol.- Огляд мережевого протоколу I2NP-I2P
- Специфікація I2NP
- I2NP Javadoc
- Common data structures specification
- Encrypted Leaseset specification
- Структури даних Javadoc
Тунелі
Selecting peers, requesting tunnels through those peers, and encrypting and routing messages through these tunnels.- Peer profiling and selection
- Tunnel routing overview
- Garlic routing and "garlic" terminology
- Будівництво та шифрування тунелів
- ElGamal/AES for build request encryption
- Деталі криптографії ElGamal та AES
- Специфікація будівництво тунелів (ElGamal)
- Специфікація будівництво тунелів (ECIES-X25519)
- Low-level tunnel message specification
- Unidirectional Tunnels
- Peer Profiling and Selection in the I2P Anonymous Network 2009 paper (pdf), not current but still generally accurate
Transport Layer
The protocols for direct (point-to-point) router to router communication.- Transport layer overview
- NTCP TCP-based transport overview and specification
- Специфікація NTCP2
- SSU UDP-based transport overview
- Специфікація SSU
- SSU2 specification
- Шифрування транспорту NTCP
- Шифрування транспорту SSU
- Транспорт Javadoc
- NTCP Javadoc
- SSU Javadoc
Інші теми роутера
- Router software updates
- Router reseed specification
- Native BigInteger Library
- Синхронізація час та NTP
- Продуктивність
- Формат файлу конфігурації
- GeoIP File Format
Developer's Guides and Resources
- New Developer's Guide
- New Translator's Guide
- Monotone Guide
- Developer Guidelines
- Javadocs on the standard internet: Сервер 1 Сервер 3 Note: always verify that javadocs are current by checking the release number.
- Javadocs всередині I2P: Сервер 3 Note: always verify that javadocs are current by checking the release number.
- Proposals
- Embedding the router in your application
- How to Set up a Reseed Server
- Портів, які I2P вживає
- Updating the wrapper manually
- Форум користувача
- Developer forum inside I2P
- Баг-трекер
- I2P Source exported to GitHub
- I2P Source Git Repo inside I2P
- Переклад джерела на Transifex
- Roadmap
- To Do List (not current)
- Ancient invisiblenet I2P documents (2003)
- The ancient I2P mailing list 2004-07 to 2006-10