Ce qui suit est un index de la documentation technique pour I2P.
Cette table des matières est organisée de la plus haute à la plus basse des couches. Les couches les plus hautes sont pour les « clients » ou les « applications » ; les couches plus basses sont dans le routeur même. L’interface entre les applications et le routeur est l’API I2CP (protocole de contrôle d’I2P).
The specifications linked below are currently supported in the network. See the Propositions page for specifications in discussion or development.Le projet I2P s’engage à maintenir exact la documentation actuelle. Si vous trouvez des inexactitudes dans les documents en lien ci-dessous, veuillez créer un ticket identifiant le problème.
Index de la documentation technique
Vue d’ensemble
- Présentation technique
- Une présentation moins technique
- Modèle de menace et analyses
- Comparaison avec d’autres réseaux anonymes
- Spécifications
- Diagramme de la pile du protocole
- Papiers sur I2P
- Présentations, articles, tutoriaux, vidéos et entretiens
- Invisible Internet Project (I2P) Project Overview 28 août 2003 (pdf)
Sujets couche d’application
- Application Development Overview and Guide
- Nommer et carnet d'adresse
- Commandes pour la liste d'abonnement du carnet d'adresse
- Aperçu des greffons
- Spécification des greffons
- Clients gérés
- Inclure le routeur dans votre application
- Bittorrent par-dessus I2P
- API du greffon I2PControl
- Format hostsdb.blockfile
- Format de fichier de configuration
Couche d’application : API et protocoles
Des API de haut niveau, faciles à utiliser pour des applications écrites dans n’importe quelle langue pour envoyer et recevoir des données.- Vue d’ensemble et guide de développement d’application
- I2PTunnel
- Configuration d’I2PTunnel
- SOCKS Proxy
- HTTP Proxy
- CONNECT Proxy
- IRC Proxy
- SOCKS IRC Proxy
- Streamr Proxy
- HTTP Bidir Proxy
- Protocole SAM (Deprecated)
- Protocole SAMv2 (Deprecated)
- Protocole SAMv3
- Protocole BOB (Deprecated)
API et protocoles de transport de bout en bout
Les protocoles de bout en bout utilisés par les clients pour des communications fiables et non fiables.- Aperçu du protocole de diffusion en continu
- Spécifications du protocole Streaming
- Javadoc streaming
- Datagrammes
- Javadoc sur les datagrammes
API de l’interface client-à-routeur et protocole
L’API de plus bas niveau utilisée par des clients (applications) pour envoyer et recevoir du trafic vers un routeur. Traditionnellement utilisée seulement par les applications Java et les API de plus haut niveau.- I2CP - Protocole contrôle I2P / Vue d’ensemble d’API
- Spécification de I2CP
- Javadoc API I2CP
- Spécification des structures de données communes
- Javadoc structures données
Chiffrement bout à bout
Comment les messages client sont chiffrés de bout en bout par le routeur.- chiffrement ECIES-X25519-AEAD-Ratchet pour les destinations
- chiffrement ECIES-X25519 pour les utilisateurs
- Chiffrement ElGamal/AES+SessionTag
- Détails cryptographie ElGamal et AES
Base de données de réseau
Stockage distribué et récupération d’informations concernant les routeurs et clients.- Vue d’ensemble de la base de données de réseau, détails et analyse des menaces
- Empreintes cryptographiques
- Signatures cryptographiques
- signatures Red25519
- Spécification de réensemencement du routeur
- adresses Base32 pour les jeux de baux chiffrés
Protocole de message du routeur
I2P est un routeur orienté-message. Les messages envoyés entre routeurs sont définis par le protocole I2NP.- I2NP - Vue d’ensemble de protocole de réseau I2P
- Spécification I2NP
- Javadoc I2NP
- Spécification des structures de données communes
- spécification pour le jeu de baux chiffré
- Javadoc structures données
Tunnels
Sélection de pairs, requête de tunnels à travers ces pairs, et chiffrement et acheminement des messages à travers ces tunnels.- Profilage et sélection de pair
- Vue d’ensemble de l’acheminement de tunnel
- Cheminement en ail et terminologie "ail"
- Construction de tunnel et chiffrement
- ElGamal/AES pour construire une requête de chiffrement
- Détails cryptographie ElGamal et AES
- Spécification de construction de tunnel (ElGamal)
- Spécification de construction de tunnel (ECIES-X25519)
- Spécification de message de tunnel bas niveau
- Tunnels unidirectionels
- Profilage de pair et sélection dans le réseau anonyme I2P Papier de 2009 (pdf), pas actuel mais encore assez précis
Couche transport
Protocoles pour communication directe (point-à-point) de routeur à routeur.- Vue d’ensemble de la couche de transport
- NTCP Vue d’ensemble et spécification du transport basé-TCP
- spécification NTCP2
- SSU Vue d’ensemble du transport basé-UDP
- Spécification SSU
- spécification SSU2
- Chiffrement transport NTCP
- Chiffrement transport SSU
- Javadoc transport
- Javadoc NTCP
- Javadoc SSU
Autres sujets sur routeur
- Mises à jour de logiciel routeur
- Spécification de réensemencement du routeur
- Bibliothèque native BigInteger
- Synchronisation de temps et NTP
- Performances
- Format de fichier de configuration
- GeoIP File Format
Guides et ressources de développeur
- Guide du nouveau développeur
- Guide du nouveau traducteur
- Guide Monotone
- Directives développeur
- Javadocs sur l’internet standard : Serveur 1 Serveur 3 Notez : vérifiez toujours que javadocs sont actuelles en vérifiant le numéro de version.
- JavaDocs dans I2P : Serveur 3 Notez : vérifiez toujours que javadocs sont actuelles en vérifiant le numéro de version.
- Propositions
- Inclure le routeur dans votre application
- Comment configurer un serveur de réensemencement
- Ports utilisés par I2P
- Mise à jour manuelle de l’enveloppeur
- Forum utilisateur
- Forum des développeurs dans I2P
- Système de suivi des bogues
- Source d’I2P exportée vers GitHub
- Source de I2P dans le Git Repo à l’intérieur de I2P
- Traduction source chez Transifex
- Feuille de route
- Liste de choses à faire (pas actuel)
- Ancient invisiblenet I2P documents (2003)
- The ancient I2P mailing list 2004-07 to 2006-10