I2P
| Company type | Free and open source software |
|---|---|
| Industry | Anonymous networking, peer-to-peer communication |
| Founded | 2003 |
Area served | Global |
| Products | I2P router software, I2P nodes, I2PTunnel, SAM protocol, BOB protocol, Orchid plugin, I2P-Bote email, I2PSnark BitTorrent client |
| Owner | Community-driven / volunteer network |
| Website | geti2p |
The Invisible Internet Project (I2P) functions as an anonymous network layer, constructed as a mix network that facilitates peer-to-peer communication resistant to censorship. It protects user data with end-to-end encryption and directs traffic through a global volunteer network comprising roughly 55,000 computers. This broad routing infrastructure complicates efforts by external parties to track complete communication paths. The software responsible for operating this network is termed an "I2P router," while the devices running it are referred to as "I2P nodes." I2P is free and open source software, licensed under various licenses.
Technical design
Originating in 2003 as a derivative of Freenet, I2P operates as a purely message-oriented network, akin to IP, but enhanced with a library that supports dependable streaming communications. Since its 0.6 release, it employs a Secure Semi-reliable UDP transport layer. Communications within I2P are secured end-to-end using four encryption layers through garlic routing, with communication endpoints ("destinations") identified by cryptographic keys (pairs of public keys), ensuring that neither sender nor receiver disclose their IP address.
Although some contributors originated from the Invisible IRC Project (IIP) and Freenet communities, I2P diverges considerably in function. Unlike IIP, which was an anonymous centralized IRC server, and Freenet, a censorship-resistant distributed data store, I2P serves as an anonymous peer-to-peer distributed communication platform designed to support conventional internet services such as Usenet, email, IRC, file sharing, web hosting (HTTP), or Telnet, along with distributed applications like decentralized data stores, Squid-based web proxy networks, or the DNS. Despite its decentralized nature, I2P remains susceptible to address-based blocking; research in 2018 revealed that merely 10 strategically positioned routers could obstruct more than 95% of recognized peers.
Many developers within the I2P community operate under pseudonyms. The former lead developer, jrandom, is currently on hiatus, whereas others including zzz, killyourtv, and Complication continue to guide development alongside numerous contributors.
For encryption, I2P utilizes 2048-bit ElGamal combined with AES256 and SHA256, incorporating session tags. Digital signatures are managed through Ed25519 EdDSA and/or ECDSA algorithms to maintain secure communications.
Releases
I2P has consistently issued stable updates approximately every six to eight weeks. These releases are shared via I2P torrents and digitally signed by the release manager, typically either str4d or zzz.
| I2P Versions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Funding
I2P's financial support depends exclusively on donations; however, the primary project itself does not receive contributions directly. Instead, funds are allocated to auxiliary applications or to employ developers working on I2P. Early development and onboarding initiatives were funded by the Open Technology Fund. In contrast to The Tor Project, I2P does not possess the monetary or legal framework required to sustain a network of exit nodes. Volunteer-operated reseed servers act as bootstrap nodes, facilitating users’ initial connections to peers within the I2P network.
Software
Functioning as an anonymizing network layer, I2P offers a variety of tools designed for private communication.
The I2P router is controlled through a web-based console accessible via a browser interface.
General networking
- I2PTunnel allows TCP/IP applications to communicate anonymously over I2P by establishing "tunnels" available on designated localhost ports.
- SAM (Simple Anonymous Messaging) is a protocol that enables client software written in any programming language to connect with the I2P router through socket communication.
- BOB (Basic Open Bridge) provides a streamlined application-to-router protocol similar in function to SAM.
- Orchid serves as an Outproxy plugin for the Tor system.
- Starting with version 2.6.0 (July 2024), I2P discontinued support for access via Tor connections.
Chat
- Any typical IRC client can link to the I2P IRC server running on localhost, where tunnels filter out commands that might reveal user identity.
- Several XMPP clients such as Gajim, Pidgin, and a customized version of Conversations are compatible with I2P XMPP servers powered by Prosody using the mod_darknet plugin.
File sharing
- Multiple applications provide BitTorrent capabilities within the I2P ecosystem. Connections to torrents or peers outside of I2P are not possible from within the network, nor can external clients access I2P torrents. Included in the I2P suite is I2PSnark, a port of the BitTorrent client Snark. The client Vuze, formerly known as Azureus, features an I2P plugin enabling anonymous swarming; although still in early stages, it is relatively stable. I2P-BT is a modified version of BitTorrent 3.4.2 tailored for anonymous sharing on I2P, created by 'duck' and 'smeghead'; it is no longer actively maintained but has seen some recent updates. I2PRufus is an I2P adaptation of the Rufus client, with its most active fork maintained by Robert (P2P Software). XD is an independent BitTorrent client written in Go that supports I2P. BiglyBT, derived from Vuze, also integrates I2P support for both downloading and seeding. The torrent index called Postman, managed by its creator, prohibits illegal content but permits warez and piracy.
- Two Kad network clients designed for use on I2P are iMule and Nachtblitz. iMule (short for "invisible Mule") is an anonymous file-sharing port of eMule utilizing Kademlia without relying on servers; its development halted in 2013. Nachtblitz, built on the .NET Framework with its latest release being version 1.4.27 in 2016, incorporates a time lock that disables the software one year after installation.
- I2Phex represents a stable port of the popular Gnutella client Phex adapted for use with I2P.
- The distributed storage system Tahoe-LAFS has been ported to operate within the I2P network, enabling anonymous file storage across Tahoe-LAFS grids.
- MuWire, inspired by LimeWire’s Gnutella client, functions as a file-sharing program running atop the I2P infrastructure.
Connecting to the clearnet
At present, torrent clients such as Vuze and BiglyBT facilitate access between clearnet (non-I2P) torrents and the I2P network in both directions. Based on configuration, torrents originating from the internet can be advertised on I2P's DHT network, making them accessible within I2P, while torrents from I2P can also be distributed to clearnet users. This mechanism enables content initially limited to I2P to be shared more widely on the Internet and allows I2P participants to obtain popular clearnet torrents while preserving their anonymity. As of August 2022, the default outproxy is exit.stormycloud.i2p, managed by StormyCloud Inc.
- I2P-Bote offers a free, fully decentralized anonymous email platform focused on privacy and security. Supporting multiple identities without revealing email metadata, it has been in beta since 2015. Accessible through the I2P web console or via standard email protocols (IMAP/SMTP), all communications are encrypted end-to-end and digitally signed with the sender’s private key, removing the necessity for external encryption solutions like PGP. Anonymity is further enhanced by mail relays that introduce variable delays; there is no central server capable of linking identities or messages. Relay nodes lack knowledge of sender identities; only the endpoints of the routing path and nodes storing messages are aware of destination addresses, while user IPs remain concealed by I2P. Users can generate new identities without registration requirements. I2P-Bote is available as an installable I2P plugin.
- Another free pseudonymous email service within I2P is operated by an individual known as Postman. Susimail, a web-based client tailored for secure and anonymous interaction with Postman’s servers, prevents hostname leaks typical in conventional clients. Included in the standard I2P package, it can be accessed via the router console and supports messaging with both I2P users and those on the public internet.
- Additionally, Bitmessage.ch can be utilized over the I2P network.
Instant messaging
- I2P-Messenger is a straightforward Qt-based instant messaging application designed for I2P that operates without servers and employs end-to-end-encrypted communication. It ensures that neither servers nor ISPs can log conversations or metadata. Its serverless architecture leverages I2P’s end-to-end encryption to guarantee that intermediaries cannot access unencrypted messages. The application supports completely anonymous chats with unknown parties as well as secure, untraceable conversations with known contacts. File sharing functionality is also integrated.
- I2P-Talk provides another instant messaging option with comparable security features but is not compatible with I2P-Messenger.
Publishing
- Syndie functions as a content distribution platform for blogs, newsgroups, forums, and small media files, emphasizing network resilience. It connects to multiple networks including I2P, Tor (with specific adaptations), Freenet, and the conventional internet, accommodating intermittent server availability and higher-latency environments. Syndie supports multiple servers and utilizes a Gossip protocol to efficiently disseminate content.
- Aktie serves as an anonymous file-sharing system combined with a distributed web of trust forum platform. It interfaces with I2P through either internal or external routers and employs "hash payments"—a proof-of-work mechanism requiring CPU effort—to mitigate spam for each published entry.
Routers
- i2pd is a streamlined I2P router developed in C++, designed to eliminate unnecessary features such as e-mail and torrent clients to minimize software overhead. The standalone BitTorrent client I2PSnark, created by the I2P+ Team, continues to function with i2pd.
The Privacy Solutions project
The Privacy Solutions project is responsible for developing and maintaining I2P-related software, focusing on improving privacy, security, and anonymity through I2P protocols.
Their primary initiatives comprise:
- The Abscond browser suite.
- i2pd, a C++ alternative to the traditional Java-based I2P implementation.
- The "BigBrother" project, which monitors the I2P network.
Source code and downloads for both i2pd and Abscond are openly accessible. Since January 2015, PurpleI2P has overseen ongoing development of i2pd.
Android
- Official Android versions of the I2P Router are distributed via Google Play under The Privacy Solutions Project and through an F-Droid repository.
- Nightweb, an Android application utilizing I2P and BitTorrent for content sharing, was previously available as a desktop application but is no longer actively maintained.
Cryptocurrency
Several cryptocurrencies support integration with I2P, including:
Terminology
- Eepsite
- Websites hosted anonymously within the I2P network, identified by domain names ending in .i2p, for example ugha.i2p. These sites are located using cryptographic identifier keys stored in the hosts.txt file inside the I2P directory through EepProxy. Access generally requires connection to I2P.
- .i2p
- A pseudo-top-level domain that functions exclusively within the I2P overlay network. Browsers resolve
.i2paddresses via EepProxy, which converts these names into corresponding I2P peer keys and manages data transmission seamlessly. - EepProxy
- A proxy service enabling browsers to interact with eepsites.
- Peers, I2P nodes
- Devices participating in the I2P network responsible for encrypted packet routing and forwarding.
- Tunnels
- Secure connections established approximately every ten minutes between a user's device and other peers, routing traffic through multiple intermediary nodes.
- netDb
- A distributed hash table database based on the Kademlia protocol that stores information about I2P nodes and eepsites. It is maintained by "floodfill routers" and queried to locate peers or eepsites.
Vulnerabilities
Denial of service attempts can target websites hosted within the network; however, site administrators may deploy defenses against certain attack types.
In 2014, a previously unknown vulnerability in I2P was exploited to de-anonymize more than 30,000 users, including those utilizing the Tails OS. This security flaw was later resolved through a patch.
A forensic analysis conducted in 2017 revealed potential risks for both users and operators: confiscated devices running I2P router software might contain unencrypted local data accessible to law enforcement. The study also uncovered a "trusted" I2P domain registrar named "NO.i2p," which had been abandoned by its operator—posing a possible target for law enforcement infiltration or social engineering attacks aimed at redirecting community traffic. Furthermore, registering mirror sites under identical domain names was suggested as an investigative measure.
Although I2P enjoys worldwide adoption, a 2019 investigation detected censorship efforts in various regions using methods such as DNS manipulation (notably in China), blocking based on SNI, and injecting blockpages (observed in Oman, Qatar, and Kuwait).
I2PCon
The first-ever I2P conference took place on August 15–16, 2015, in Toronto, Ontario. Organized by the local hackerspace known as Hacklab, the gathering showcased talks from I2P developers and security experts, highlighting progress and strategic initiatives related to the I2P network.
See also
- Crypto-anarchism
- Deep web
- Darknet
- Garlic routing
- Key-based routing
- Public-key cryptography
- Rendezvous protocol
- Secure communication
- Threat model
Software
External links
- Articles with short description
- I2P
- Anonymous file sharing networks
- Application layer protocols
- Computer networking
- Cross-platform free software
- Cross-platform software
- Cryptographic software
- Dark web
- Distributed data storage
- Distributed data structures
- Distributed data storage systems
- Distributed file systems
- File sharing
- Free and open-source Android software
- Free communication software
- Free file transfer software
- Free file sharing software
- Free multilingual software
- Free network-related software
- Free routing software
- Free software programmed in Java (programming language)
- Garlic routing
- Hash-based data structures
- Internet privacy software
- Key-based routing
- Overlay networks
- Peer-to-peer computing
- Privacy software
- Software using the MIT license
- 2003 software