I2P SAMv3 support
Completed 2 of 3 milestones · raised 0 of 50 XMR
Note: this proposal has been funded entirely using funds from a declined bounty
What
Monero's core software currently has very limited support for the I2P network, which is through the use of SOCKS proxies. This has a number of disadvantages in terms of both security and ease of use.
I propose to work on improving and modernizing I2P support in Monero through the following:
- Implementing I2P's SAMv3 protocol in
monerod - Adding functionality to the GUI for configuring I2P connections
- Contributing to and improving upon existing documentation for anonymity networks in Monero
- Attending community/development meetings
- Other tasks mentioned below
The scope of tasks/effort needed is very similar to that which has already been discussed here.
Milestones
Milestone 1: Research and prototype, core SAMv3 implementation (25 XMR)
- Study SAMv3 docs, evaluate existing protocol implementations
- Decide on ACCEPT vs FORWARD for incoming connections, permanent vs transient destinations
- Full SAMv3 integration in addition to the SOCKS proxy path
- Support for both Java I2P and i2pd routers
- Handle external router start/stop/restart gracefully
- Sane default tunnel configuration per I2P expert guidance
- Deliver a working PR with SAMv3, functional for CLI usage, with unit tests as per guidelines
Milestone 2: GUI integration and docs (10 XMR)
- Toggle to enable/configure I2P connections in the GUI; indicator for router status (up/down)
- Configuration options exposed in GUI
- Rewritten docs: new install (i2pd + Java I2P), migration from i2p-zero, migration of existing setups
- Verify and update seed node list
Milestone 3: Beta testing and review (15 XMR)
- Announce and recruit beta testers
- Address community feedback from testing
- Pass code review requirements
- Address all PR review comments
- PR has loose approval, and is ready to be merged into
masterbranch
Who
I'm a self-taught programmer who has been interested in Monero and similar projects for quite some time now. I have been active in development discussion/happenings on IRC/Matrix for several months, and have also contributed a number of merged PRs (albeit mostly small ones) to core Monero repos as well as Monero-adjacent community projects. Here are some examples:
- Added I2P support to P2Pool
- Added IPv6 support to the ZMQ interface in
monerod - Contributed documentation fixes and improvements to P2Pool, Monfluo, and monero-lws (1, 2, 3, 4)
Funding
I am requesting a total of 50 XMR for all milestones combined, with the corresponding amount to be paid out upon the completion of each individual milestone.
Community discussion and updates
Research and prototype, core SAMv3 implementation
To be paid: 25
Completion date: 28 June 2026
GUI integration and docs
To be paid: 10
Completion date: 8 July 2026
Beta testing and review
To be paid: 15
Completion date: not yet
Funds awarded: 25
Date: 9 July 2026
Funds awarded: 10
Date: 22 July 2026
Funds awarded:
Date: