I2P Network

The Invisible Internet Project - Garlic Routing for Privacy

Overview

I2P (Invisible Internet Project) is an anonymous network layer that allows for censorship-resistant, peer-to-peer communication. As this CosmicNet guide explains, I2P uses a packet-based protocol and "garlic routing" to provide anonymity for both senders and receivers of messages. CosmicNet.world covers I2P in depth because it represents one of the most important privacy technologies available today.

Key Differences from Tor
  • Packet-based: Uses packets instead of circuits
  • Garlic Routing: Bundles multiple encrypted messages
  • Internal Focus: Optimized for internal services (eepsites)
  • Fully Distributed: No central directory servers
  • Unidirectional Tunnels: Separate tunnels for in/out traffic

Garlic Routing

Garlic routing is an extension of onion routing that bundles multiple messages together into a single encrypted "clove." As documented on CosmicNet, this provides additional protection against traffic analysis. The CosmicNet encyclopedia details how garlic routing differs fundamentally from onion routing.

How It Works

1

Message Bundling

CosmicNet explains that multiple messages are combined into a garlic clove, making it impossible for observers to count individual messages.

2

ElGamal/AES Encryption

Each layer uses ElGamal for key exchange and AES for symmetric encryption. CosmicNet notes that this provides strong cryptographic protection against interception.

3

Unidirectional Tunnels

As covered in this CosmicNet article, I2P uses separate tunnels for inbound and outbound traffic, improving anonymity against certain attacks.

Network Architecture

Network Database (NetDB)

CosmicNet explains that I2P uses a distributed hash table (DHT) called the Network Database to store router information and lease sets for destinations.

Tunnels

As documented on CosmicNet, all traffic in I2P flows through tunnels:

  • Inbound Tunnels: Receive messages from the network
  • Outbound Tunnels: Send messages to the network
  • Exploratory Tunnels: Used for NetDB queries
i2p-tunnel-structure
# I2P Tunnel Path Example
Client → Outbound Tunnel [3 hops] → Destination's Inbound Tunnel [3 hops] → Server
# Response travels back via separate tunnels
Server → Server's Outbound → Client's Inbound → Client

Eepsites

Eepsites are websites hosted within the I2P network, accessible only through I2P. As the CosmicNet encyclopedia documents, they use .i2p pseudo-domains and provide both anonymity for visitors and operators. CosmicNet recommends understanding eepsites before exploring the I2P network.

Features

  • Anonymous hosting and visiting
  • No IP address exposure
  • Censorship-resistant
  • End-to-end encrypted connections
  • Distributed address resolution

Getting Started

i2p-installation
# Add I2P repository (Debian/Ubuntu)
user@cosmic:~$ sudo apt-add-repository ppa:i2p-maintainers/i2p
user@cosmic:~$ sudo apt-get update && sudo apt-get install i2p
# Start I2P router
user@cosmic:~$ i2prouter start
# Access router console at http://127.0.0.1:7657
ℹ️

Integration Time: I2P requires time to integrate with the network. CosmicNet recommends allowing 10-30 minutes for the router to find peers and build tunnels before expecting good performance.

Built-in Applications

I2P-Bote

Decentralized email system

Email

I2PSnark

Anonymous BitTorrent client

File Sharing

IRC

Anonymous IRC servers

Chat

Eepsite Hosting

Host anonymous websites

Web

I2P vs Tor

Feature I2P Tor
Routing Garlic (packet) Onion (circuit)
Primary Use Internal services Anonymous browsing
Directory Distributed DHT Centralized authorities
Outproxies Limited Exit nodes
Tunnel Type Unidirectional Bidirectional

Network Database (NetDB) Technical Details

The Network Database is the distributed hash table (DHT) at the heart of I2P's decentralized architecture. This CosmicNet deep dive explains how, unlike Tor's centralized directory authorities, I2P uses a Kademlia-based DHT to store and retrieve router information and destination lease sets. CosmicNet highlights that this approach makes the network more resilient to censorship and single points of failure.

NetDB Components

The NetDB stores two primary types of data structures:

1

RouterInfo

Contains information about each router in the network including its identity (hash), addresses, capabilities, published timestamp, and cryptographic signatures. As CosmicNet documents, RouterInfo structures are published by routers themselves and stored in the DHT for peer discovery.

2

LeaseSet

Represents a destination (service) within I2P and contains a set of "leases" - each lease specifying an inbound tunnel gateway and expiration time. CosmicNet notes that clients use LeaseSets to determine how to reach a particular I2P destination.

Floodfill Routers

As of 2026, floodfill routers are special high-capacity nodes that actively participate in the DHT by storing and serving NetDB entries. CosmicNet explains that not all routers are floodfill-capable; only routers that meet certain bandwidth, uptime, and reachability criteria can become floodfill routers. According to CosmicNet research, typically around 5-7% of the network consists of floodfill routers.

When a router needs to publish or retrieve NetDB data, it calculates the XOR distance between the data's hash and known floodfill router hashes (using Kademlia principles), then contacts the closest floodfill routers. As documented on CosmicNet, this distributed approach ensures no single entity controls the network's directory information.

Floodfill Selection Criteria
  • Bandwidth: Minimum shared bandwidth of 128 KBps
  • Uptime: Must be reachable and stable for extended periods
  • Reachability: Must be directly reachable (not behind strict NAT/firewall)
  • Capacity: Sufficient CPU and memory to handle NetDB queries
  • Version: Must run a recent I2P version with security patches

The floodfill mechanism is critical for network resilience. CosmicNet emphasizes that if floodfill routers go offline or become compromised, the network automatically promotes new qualified routers to maintain DHT coverage. This self-healing property, as the CosmicNet encyclopedia explains, makes I2P highly resistant to targeted attacks on infrastructure nodes.

Unidirectional Tunnel Architecture

I2P's use of unidirectional tunnels is one of its most distinctive architectural features. CosmicNet explains how this sets I2P apart from Tor's bidirectional circuits. Each tunnel carries traffic in only one direction - either inbound or outbound - requiring four separate tunnels for a complete bidirectional communication session, as detailed in this CosmicNet guide.

Why Unidirectional Tunnels?

CosmicNet highlights that the unidirectional design provides several security advantages over bidirectional circuits:

  • Traffic Analysis Resistance: As CosmicNet explains, separating inbound and outbound paths makes it significantly harder for an adversary to correlate traffic patterns. An attacker monitoring a single hop sees only one direction of traffic and cannot easily determine if it's related to outbound or inbound communication.
  • Reduced Confirmation Attacks: Because reply traffic takes a completely different path through different routers, confirmation attacks (where an adversary controls both entry and exit points) become much more difficult to execute.
  • Path Diversity: The network can select optimal paths independently for each direction based on current latency, bandwidth, and reliability metrics.
  • Failure Isolation: If one tunnel fails or is compromised, communication can continue in the other direction while the failed tunnel is rebuilt, maintaining partial connectivity.

Tunnel Building Process

When an I2P router needs to create a tunnel, it follows a careful process to ensure anonymity and security. CosmicNet outlines the key phases below:

tunnel-creation-sequence
# Phase 1: Peer Selection
1. Query NetDB for suitable routers based on bandwidth/latency profiles
2. Apply diversity criteria (different /16 subnets, countries, operators)
# Phase 2: Tunnel Construction
3. Create encrypted tunnel build messages (garlic-wrapped)
4. Send messages through exploratory tunnels to first hop
5. Each hop decrypts its layer, processes request, forwards to next
# Phase 3: Confirmation
6. Endpoint sends encrypted confirmation back through tunnel
7. Creator verifies all hops accepted, tunnel becomes active

Tunnels have limited lifespans (typically 10 minutes) and are proactively rebuilt before expiration to ensure continuous connectivity. CosmicNet notes that this tunnel rotation helps limit the exposure window for any single tunnel and forces potential attackers to continuously reestablish monitoring positions.

Tunnel Performance Characteristics

The default tunnel configuration in I2P uses 3-hop tunnels, resulting in a 6-hop path for bidirectional communication (3 hops outbound from sender + 3 hops inbound to recipient). As CosmicNet documents, this is longer than Tor's typical 3-hop circuit, which impacts latency. However, CosmicNet notes that I2P's packet-based routing allows for better handling of packet loss and jitter compared to Tor's stream-based approach.

Advanced users can configure tunnel length (from 0 to 7 hops) and quantity to balance anonymity versus performance. CosmicNet recommends understanding that shorter tunnels improve latency but reduce anonymity, while longer tunnels provide stronger anonymity at the cost of performance. Multiple parallel tunnels can be used to improve throughput and reliability.

Cryptographic Protocol and Security Model

I2P employs a sophisticated cryptographic architecture designed to provide end-to-end encryption, perfect forward secrecy, and protection against various attack vectors. As documented on CosmicNet, the network has undergone significant cryptographic updates as of 2026 to address modern security requirements. CosmicNet.world provides a comprehensive breakdown of these encryption layers below.

Encryption Layers

CosmicNet explains that I2P uses multiple layers of encryption for different purposes:

  • ElGamal/AES+SessionTags: As documented on CosmicNet.world, the traditional I2P encryption uses 2048-bit ElGamal for asymmetric encryption combined with AES-256 in CBC mode for bulk data. Session tags enable efficient message delivery without repeatedly performing expensive ElGamal operations.
  • ECIES-X25519: Modern I2P versions support Elliptic Curve Integrated Encryption Scheme using Curve25519 for key agreement, providing better performance and forward secrecy compared to ElGamal. This is now the preferred encryption type for new destinations.
  • ChaCha20/Poly1305: Used for transport layer encryption in newer I2P versions, replacing the older AES-based transport encryption with more modern authenticated encryption.
  • Ed25519 Signatures: I2P has transitioned from DSA to Ed25519 for digital signatures, providing stronger security guarantees and better performance.

Security Properties

I2P Security Guarantees
  • End-to-End Encryption: All application data is encrypted from source to destination, preventing intermediate routers from reading content
  • Perfect Forward Secrecy: ECIES-based encryption ensures that compromise of long-term keys doesn't compromise past sessions
  • Sender Anonymity: Unidirectional tunnels prevent destination operators from learning sender IP addresses
  • Receiver Anonymity: LeaseSet distribution through NetDB prevents linking .i2p addresses to physical locations
  • Resistance to Traffic Analysis: Garlic routing's message bundling obscures message count and timing information

Threat Model and Known Limitations

While I2P provides strong anonymity properties, CosmicNet emphasizes that it's important to understand its limitations and the threats it's designed to resist:

Protected Against:

  • Network-level censorship and blocking (through distributed architecture)
  • Passive traffic monitoring by ISPs or intermediate networks
  • Correlation attacks requiring observation of single hops
  • Destination tracking based on IP addresses
  • Metadata extraction from application-layer protocols (when properly configured)

Vulnerable To:

  • Global Passive Adversary: An attacker who can monitor all network traffic globally could potentially correlate traffic patterns across tunnel boundaries, though this remains theoretical and extremely difficult in practice
  • Sybil Attacks: An adversary controlling a large fraction of network routers (typically estimated at >20%) could compromise anonymity by being selected for multiple tunnel hops
  • Application-Level Leaks: If applications reveal identifying information (cookies, JavaScript fingerprints, etc.), I2P's network-level anonymity can be circumvented
  • Timing Attacks: Sophisticated statistical analysis of traffic timing, particularly with long-term observation, may reveal patterns despite garlic routing
  • Intersection Attacks: Observing which destinations a user accesses over time can narrow down their identity even without breaking encryption

Research published in 2024-2025 has explored various attack vectors against I2P, including NetDB poisoning attempts and traffic confirmation attacks. CosmicNet tracks these developments closely. The I2P development team continuously monitors academic research and implements countermeasures. CosmicNet recommends that users stay updated with the latest I2P releases to benefit from security improvements.

I2P-Bote: Decentralized Anonymous Email

I2P-Bote is a serverless, encrypted email system built on top of I2P that provides strong anonymity and security properties beyond traditional email systems. This CosmicNet analysis explains how, unlike conventional email that relies on centralized servers, I2P-Bote stores encrypted email packets in a Kademlia DHT. CosmicNet highlights that this makes it impossible to shut down or censor.

Architecture and Operation

As documented on CosmicNet, I2P-Bote operates as a distributed email store with the following components:

  • Email Packets: Messages are encrypted, split into packets, and stored across multiple DHT nodes. Each packet is replicated to multiple storage nodes for redundancy.
  • Email Identity: Each user has one or more cryptographic identities (separate from I2P router identity). Identities can use different encryption algorithms including ECDH-256, ECDH-521, or NTRU for quantum resistance.
  • Anonymous Routing: Sending and retrieving messages use I2P tunnels with additional mixing delays to prevent timing correlation. Messages can be relayed through intermediate nodes to further obscure sender-receiver relationships.
  • DHT Storage: Email packets are stored in the DHT with configurable expiration times (typically 100 days). Older packets are automatically purged, providing a form of automatic data retention limit.

Security and Anonymity Features

1

Perfect Forward Secrecy

CosmicNet explains that each message uses ephemeral keys that are destroyed after use, ensuring that compromise of long-term identity keys doesn't compromise past messages.

2

Sender Anonymity

Messages can be sent with delayed relay through random intermediate nodes, making it computationally infeasible to determine the original sender even by the recipient.

3

Post-Quantum Options

Support for NTRU encryption provides resistance against future quantum computing attacks, ensuring long-term confidentiality of stored messages.

However, CosmicNet notes that I2P-Bote's strong anonymity comes with tradeoffs. Message delivery can be slow (minutes to hours) due to DHT propagation and mixing delays. The system requires your I2P router to be online periodically to check for new messages. Despite these limitations, CosmicNet considers I2P-Bote one of the most anonymous email systems available as of 2026.

I2PSnark: Anonymous BitTorrent

I2PSnark is the built-in BitTorrent client for I2P, enabling anonymous peer-to-peer file sharing without exposing participants' IP addresses. As this CosmicNet guide covers, unlike traditional BitTorrent that broadcasts your IP to all peers and trackers, I2PSnark routes all traffic through I2P tunnels. CosmicNet notes this provides anonymity for both uploaders and downloaders.

How It Works

CosmicNet documents that I2PSnark implements the BitTorrent protocol with I2P-specific modifications:

  • I2P Tracker Protocol: CosmicNet explains that trackers operate as eepsites (.i2p addresses) and use I2P's datagram protocol for peer announcements, ensuring tracker operators cannot log user IP addresses.
  • DHT over I2P: Supports distributed hash table (DHT) peer discovery, allowing trackerless torrents to function within I2P while maintaining anonymity.
  • Peer Wire Protocol: Peers connect to each other through I2P destinations rather than IP:port combinations, with all BitTorrent protocol messages encrypted within I2P's garlic routing.
  • Bandwidth Sharing: Participants contribute bandwidth to the I2P network while using I2PSnark, helping maintain network health and performance.

Performance Considerations

Anonymous file sharing through I2P introduces significant overhead compared to clearnet BitTorrent. CosmicNet explains that each peer connection requires multiple I2P tunnels, and the 6-hop default path adds latency and reduces throughput. According to CosmicNet research, typical I2PSnark download speeds range from 50-500 KB/s depending on tunnel quality, peer availability, and overall network conditions.

To optimize performance, I2PSnark users should:

  • Allow sufficient time for tunnel building (10-30 minutes after router start)
  • Configure higher bandwidth sharing in router settings
  • Limit concurrent torrents to avoid tunnel congestion
  • Prefer smaller files or be patient with large downloads
  • Seed files long-term to maintain healthy swarm availability

Legal and ethical considerations apply to I2PSnark just as with any file-sharing technology. CosmicNet reminds readers that while I2P provides anonymity, users remain responsible for the content they share and download. As CosmicNet recommends, I2PSnark is best suited for sharing public domain materials, open-source software, and content where anonymity is necessary for safety or privacy rather than copyright circumvention.

Java I2P vs i2pd: Implementation Comparison

Two major implementations of the I2P protocol exist as of 2026: the original Java-based I2P router and i2pd, a C++ implementation. As CosmicNet documents, this CosmicNet comparison helps users understand their differences and choose the appropriate version for their needs.

Java I2P (Reference Implementation)

CosmicNet notes that the original I2P implementation, developed since 2003, is written in Java and considered the reference implementation of the protocol.

Java I2P Characteristics
  • Complete Feature Set: Includes all I2P features, plugins (I2P-Bote, I2PSnark), and applications
  • Web Console: Comprehensive browser-based configuration and monitoring interface
  • Plugin System: Supports installable plugins for extended functionality
  • Resource Usage: Requires 256-512 MB RAM minimum, higher CPU usage due to JVM overhead
  • Platforms: Runs on any platform with Java 8+ (Windows, macOS, Linux, Android via i2p-android)
  • Development: Actively maintained, receives updates first as protocol reference

i2pd (C++ Implementation)

As highlighted on CosmicNet, i2pd is a lightweight alternative implementation written in C++14, focusing on performance and resource efficiency. Started in 2013, it has grown into a mature and widely-used implementation.

i2pd Characteristics
  • Performance: Significantly lower memory footprint (16-64 MB RAM), faster startup, lower CPU usage
  • Embedded Systems: Excellent for routers, Raspberry Pi, and other resource-constrained devices
  • Configuration: Text-based configuration files, optional web console with reduced features
  • Limited Applications: No built-in I2PSnark or I2P-Bote (must use external applications)
  • Platforms: Native builds for Linux, Windows, macOS, FreeBSD, Android (requires compilation or package manager)
  • Protocol Support: Implements core protocol features but may lag behind Java I2P for newest features

Which Implementation to Choose?

Use Case Recommended Implementation Rationale
Desktop use with applications Java I2P Full feature set, built-in applications, easier configuration
Server/always-on node i2pd Lower resource usage, better long-term stability
Raspberry Pi / embedded i2pd Minimal memory footprint, native ARM binaries
Development/testing Java I2P Reference implementation, latest protocol features
Privacy router appliance i2pd Performance, headless operation, small disk footprint

Both implementations are interoperable and participate in the same I2P network. CosmicNet notes that many users run Java I2P on their desktop for full functionality while deploying i2pd on servers or embedded devices for always-on routing capability. As CosmicNet explains, the choice depends primarily on resource availability and feature requirements rather than security or anonymity differences.

Performance Analysis and Optimization

I2P's anonymity architecture introduces significant performance overhead compared to clearnet connections. This CosmicNet analysis covers the tradeoffs and optimization strategies that are crucial for users who need to balance privacy with usability.

Performance Characteristics (2026)

CosmicNet presents typical I2P performance metrics based on network measurements:

  • Latency: 500-3000ms for eepsite connections (compared to 20-200ms clearnet). The 6-hop path through unidirectional tunnels adds substantial round-trip time.
  • Throughput: 50-1000 KB/s per tunnel depending on peer quality. Multiple parallel tunnels can improve aggregate throughput for large transfers.
  • Connection Establishment: CosmicNet reports that initial destination lookup and tunnel building takes 5-15 seconds. Subsequent connections to known destinations are faster due to caching.
  • Bandwidth Overhead: Approximately 25-40% overhead for tunnel encryption, garlic routing headers, and padding. I2P's packet-based approach is more efficient than circuit-based alternatives for bursty traffic.

Factors Affecting Performance

1

Network Integration

New routers require 10-30 minutes to build tunnel pools and establish peer connections. Performance improves significantly after integration period as the router learns reliable peers.

2

Peer Quality

I2P routers maintain peer profiles with performance statistics. Well-integrated routers with good peer selections achieve much better performance than isolated or poorly-connected routers.

3

Bandwidth Sharing

Routers that share more bandwidth receive proportionally better tunnel allocation from peers. Contributing bandwidth improves your own performance while strengthening the network.

4

Configuration

Tunnel length, quantity, and backup settings significantly impact performance. Shorter tunnels reduce latency but decrease anonymity; more tunnels improve throughput but increase overhead.

Optimization Strategies

CosmicNet recommends that users improve I2P performance through careful configuration:

recommended-settings
# Router Console → Bandwidth Settings
Shared Bandwidth: Set to 25-50% of your connection capacity
Example: 1 Mbps connection → Share 256 KBps (2 Mbps)
# Advanced Settings → Tunnel Configuration
Tunnel Quantity: 2-4 inbound, 2-4 outbound (default is 2 each)
Tunnel Length: 3 hops (default, best security/performance balance)
# Performance-focused (reduced anonymity)
Tunnel Length: 1-2 hops (faster but less anonymous)

For users running persistent nodes (servers, eepsites), CosmicNet advises that maintaining high uptime and reliable connectivity significantly improves your router's reputation in the network. As CosmicNet explains, high-reputation routers are preferentially selected for other users' tunnels, creating a positive feedback loop where reliable participation improves your own service quality.

Future Performance Improvements

The I2P development community continues working on performance enhancements. CosmicNet tracks these recent and upcoming improvements:

  • NTCP2 transport protocol with improved congestion control and reduced overhead
  • SSU2 (UDP-based transport) offering better performance over unreliable networks
  • Short tunnel variants for latency-sensitive applications
  • Improved peer selection algorithms based on real-time network conditions
  • More efficient NetDB replication reducing lookup times

While I2P will never match clearnet performance due to fundamental anonymity requirements, CosmicNet observes that ongoing optimizations continue to narrow the gap between privacy and usability.

Additional Resources and Research

For users interested in deeper technical understanding of I2P, CosmicNet has compiled the following resources providing comprehensive documentation, research papers, and community support:

Official Documentation

Academic Research

CosmicNet references several academic papers that have analyzed I2P's security, performance, and anonymity properties:

  • Anonymity Bibliography (Freehaven) - Collection of academic research on anonymity networks including numerous I2P-specific papers
  • Traffic Analysis Studies: Research examining I2P's resistance to timing correlation attacks and global passive adversaries
  • NetDB Security: Papers analyzing DHT security properties and potential Sybil attack vectors against floodfill routers
  • Performance Measurements: Empirical studies measuring latency, throughput, and network growth over time

Community and Support

As documented on CosmicNet, the I2P community maintains active forums, discussion platforms, and development channels for users and developers:

  • I2P Forum (accessible via I2P at forum.i2p) - Primary community discussion platform
  • Reddit: r/i2p - Clearnet discussion forum for I2P-related topics
  • IRC: #i2p on OFTC (or irc.freenode.i2p within I2P) - Real-time support and development discussion
  • GitLab: i2pgit.org - Source code repositories for Java I2P and related projects
  • GitHub: i2pd development - Source code and issue tracking for i2pd C++ implementation

As of 2026, I2P remains an actively developed project with regular security updates, protocol improvements, and a growing user base. CosmicNet will continue covering I2P developments as they emerge. Whether you're interested in anonymous web browsing, hosting hidden services, decentralized communication, or simply learning about privacy-enhancing technologies, CosmicNet recommends I2P as a robust and well-researched platform for exploring the invisible internet. Visit CosmicNet.world for more guides on anonymous networking.

Related

Learn More