A Python port of the Invisible Internet Project (I2P)

Changelog#

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[0.1.0] - 2026-03-23#

Added#

  • Complete I2P protocol implementation in Python
  • 14 cryptographic primitives (AES-256-CBC, ChaCha20-Poly1305, Ed25519, X25519, ElGamal, DSA, HKDF, HMAC-SHA256, SipHash, SHA-256, ML-KEM, Noise XK, Garlic, Session Keys)
  • NTCP2 transport with Noise XK handshake (interop verified with Java I2P peers)
  • SSU2 transport (UDP) with peer testing and relay infrastructure
  • I2NP message format (DatabaseStore, DatabaseLookup, TunnelData, etc.)
  • Network database with Kademlia DHT
  • Tunnel construction and management
  • SAM v3.0-3.3 bridge protocol
  • Streaming library
  • Full I2P router with bootstrap, reseed, and peer management
  • I2PTunnel application layer
  • Cross-platform builds (deb, rpm, Windows exe, sdist, wheel)
  • 3,240+ tests with parity validation against Java reference vectors
  • Security audit (bandit + pip-audit + crypto checklist)