Skip navigation links

I2P+ Javadocs [2.11.0-0+]

Core (i2p.jar) 
Package Description
net.i2p
Core I2P package providing fundamental interfaces, version information, and entry points to essential I2P services.
net.i2p.app
Interfaces for classes to be started and stopped via clients.config.
net.i2p.client
Interfaces and factories for the base I2P SDK used to develop applications that communicate through I2P.
net.i2p.client.datagram
Provides a standard way for reading and writing messages transferred over I2P so that recipient has an authenticated mechanism to reply to it.
net.i2p.client.impl
Internal implementation of the I2P client SDK, providing the client side of the I2CP protocol for applications communicating through I2P.
net.i2p.client.naming
Naming service for resolving human-readable names to I2P destinations, providing a standard interface without JNDI complexity.
net.i2p.data
These classes define the common data structures used by the various I2P protocols.
net.i2p.data.i2cp
The Invisible Internet Client Protocol (I2CP) allows applications simplified access to I2P network without requiring them to deal with the issues involved with the Invisible Internet Network Protocol (I2NP).
net.i2p.internal
Internal communication interfaces for router and client within same JVM, using queues instead of socket-based I2CP.
net.i2p.kademlia
Generic Kademlia distributed hash table implementation supporting multiple hash algorithms (SHA1, SHA256, etc.).
net.i2p.socks
SOCKS protocol implementation providing client and server functionality for proxy operations through I2P.
net.i2p.stat
Statistical collection and analysis framework used throughout the I2P router for adaptive operation, performance monitoring, and debugging.
net.i2p.time
Time synchronization utilities and interfaces for I2P applications.
net.i2p.update
Interfaces and utilities for update process that operate without requiring full router context.
net.i2p.util
Core utility classes and helper functions used throughout the I2P router and applications.
Core Crypto 
Package Description
com.southernstorm.noise.crypto.chacha20
ChaCha20 stream cipher primitive for Noise protocol framework, moved from router to core in 0.9.39.
com.southernstorm.noise.crypto.x25519
X25519 elliptic curve Diffie-Hellman primitive for Noise protocol framework, moved from router to core in 0.9.38.
net.i2p.crypto
Core cryptographic primitives and algorithms used throughout I2P.
net.i2p.crypto.eddsa
Java implementation of EdDSA, a digital signature scheme using a variant of elliptic curve cryptography based on Twisted Edwards curves.
net.i2p.crypto.eddsa.math
Data structures that define curves and fields, and the mathematical operations on them.
net.i2p.crypto.eddsa.math.bigint
Generic mathematical implementation using Java BigIntegers for arbitrary elliptic curves.
net.i2p.crypto.eddsa.math.ed25519
High-performance, optimized mathematical implementation for Ed25519 using Radix 2^51 representation.
net.i2p.crypto.eddsa.spec
Specifications and parameter tables for EdDSA elliptic curves and cryptographic keys.
net.i2p.crypto.elgamal
Implementation of the ElGamal public-key cryptosystem for I2P.
net.i2p.crypto.elgamal.impl
Concrete implementations of ElGamal cryptographic keys for I2P.
net.i2p.crypto.elgamal.spec
Parameter specifications and key interfaces for ElGamal cryptographic operations.
net.i2p.crypto.provider
Java Security Provider implementation for I2P cryptographic algorithms.
net.i2p.crypto.x25519
Implementation of X25519 elliptic curve Diffie-Hellman key exchange for I2P.
net.i2p.crypto.x25519.spec
Parameter specifications and algorithm configuration for X25519 operations.
Core Dependencies 
Package Description
freenet.support.CPUInformation
CPUID implementation, borrowed from freenet, updated and heavily modified.
gnu.crypto.prng
Fortuna Pseudo-Random Number Generator (PRNG) from GNU Crypto, updated and modified for I2P's cryptographic operations.
gnu.getopt
This is Java getopt 1.0.14 (released 2012/02/08)
gnu.gettext
GettextResource class for ngettext() plural form handling, taken unchanged from GNU gettext package version 0.19.8.
net.i2p.apache.http.conn.ssl
SSL/TLS socket factory and hostname verification from Apache HttpClient 4.4.1, providing secure HTTP connection support for I2P.
net.i2p.apache.http.conn.util
HTTP connection utilities from Apache HttpClient 4.4.1, providing connection management, network address utilities, and public suffix matching.
net.i2p.apache.http.util
HTTP utility classes from Apache HttpCore 4.4.1, providing argument validation and related HTTP utilities.
org.json.simple
This is json-simple release 2.3.0 2017-10-04 retrieved from github.
org.minidns
From MiniDNS release 1.0.0 (2020-07-18), containing the minidns-core portion of the library.
org.minidns.constants
DNS record types and constants for the MiniDNS library.
org.minidns.dnslabel
DNS label parsing and validation utilities.
org.minidns.dnsmessage
DNS message parsing and serialization.
org.minidns.dnsname
DNS name parsing, validation, and manipulation utilities.
org.minidns.edns
EDNS(0) extension mechanisms for DNS.
org.minidns.idna
Internationalized Domain Names in Applications (IDNA) support.
org.minidns.record
DNS resource record types and implementations.
org.minidns.util
Utility classes and helper functions for MiniDNS.
Router 
Package Description
net.i2p.data.i2np
This package defines the low-level messages sent between routers, called Invisible Internet Network Protocol (I2NP).
net.i2p.data.router
Router-specific data structures and identity management classes for I2P.
net.i2p.router
The I2P router application handles I2P network communication.
net.i2p.router.app
Interface and framework for applications managed by the I2P router via clients.config.
net.i2p.router.client
Router-side implementation of the I2CP (I2P Client Protocol) interface for application integration.
net.i2p.router.crypto
Router-specific cryptographic operations and implementations for I2P security.
net.i2p.router.crypto.pqc
Post-quantum cryptographic algorithms for I2P.
net.i2p.router.crypto.ratchet
Implementation of ECIES-X25519-AEAD-Ratchet cryptographic protocol (I2P proposal 144), providing forward secrecy and enhanced security for I2P transport communications.
net.i2p.router.dummy
Dummy implementations and stub classes for testing purposes.
net.i2p.router.message
Garlic message creation, parsing, and source routing for I2P communications.
net.i2p.router.networkdb
Network database management and coordination for the I2P distributed hash table.
net.i2p.router.networkdb.kademlia
Kademlia DHT implementation and floodfill router functionality for I2P.
net.i2p.router.networkdb.reseed
Router reseeding functionality for bootstrapping into the I2P network.
net.i2p.router.peermanager
Peer management, profiling, and capacity calculation for I2P network optimization.
net.i2p.router.startup
The I2P startup package loads configuration when I2P is started.
net.i2p.router.sybil
Offline analysis tools for detecting Sybil attacks and malicious peer coordination in the I2P network.
net.i2p.router.tasks
Periodic maintenance tasks and background jobs for I2P router operations.
net.i2p.router.time
Time synchronization and clock management for I2P router using NTP.
net.i2p.router.transport
Transport layer implementations and management for I2P network communication.
net.i2p.router.transport.crypto
Cryptographic operations for I2P transport protocols, including key exchange algorithms, session key management, and transport-layer encryption.
net.i2p.router.transport.ntcp
The NTCP (New TCP) transport for I2P, allowing I2P messages to be passed over TCP connections.
net.i2p.router.transport.udp
The UDP transport (also known as 'SSU' or Secure Semi-reliable UDP transport) for I2P, allowing I2P messages to be passed over UDP connections.
net.i2p.router.tunnel
Core tunnel management, message processing, and encryption for I2P's anonymous routing system.
net.i2p.router.tunnel.pool
Tunnel pool management, creation, and peer selection for I2P's anonymous routing system.
net.i2p.router.util
Utility classes and helper functions used throughout the I2P router.
Router Dependencies 
Package Description
com.maxmind.db
This is MaxMind-DB-Reader-java release 1.2.2 2017-02-17 retrieved from github.
com.maxmind.geoip
This is geoip-api-java release 1.3.1 2016-02-08 retrieved from github.
com.maxmind.geoip2
This is GeoIP2-java release 2.12.0 2018-04-11 retrieved from github.
com.southernstorm.noise.crypto
Fallback implementations of cryptographic primitives.
com.southernstorm.noise.protocol
Provides classes for communicating via the Noise protocol.
org.bouncycastle
This is a small portion of bouncycastle 1.80 for MLKEM, modified to reduce dependencies.
org.bouncycastle.crypto
Base classes for the lightweight API.
org.bouncycastle.crypto.digests
Message digest classes.
org.bouncycastle.crypto.params
Classes for parameter objects for ciphers and generators.
org.bouncycastle.pqc.crypto
Post-Quantum Cryptography implementations and algorithms.
org.bouncycastle.pqc.crypto.mlkem
This is a small portion of bouncycastle 1.80 for MLKEM, modified to reduce dependencies.
org.bouncycastle.pqc.crypto.util
Utility classes for Post-Quantum Cryptography operations.
org.bouncycastle.util
General purpose utility classes used throughout the APIs.
org.cybergarage
The cybergarage cyberlink UPnP library version 3.0, with minor mods for I2P.
org.cybergarage.http
HTTP protocol implementation and utilities.
org.cybergarage.net
Network interface and host management utilities.
org.cybergarage.soap
SOAP (Simple Object Access Protocol) implementation for UPnP.
org.cybergarage.upnp
Universal Plug and Play (UPnP) framework core components.
org.cybergarage.upnp.control
UPnP control and action invocation framework.
org.cybergarage.upnp.device
UPnP device implementation and management.
org.cybergarage.upnp.event
UPnP event notification and subscription management.
org.cybergarage.upnp.ssdp
Simple Service Discovery Protocol (SSDP) implementation for UPnP.
org.cybergarage.upnp.xml
XML parsing and data handling for UPnP device descriptions.
org.cybergarage.util
General utility classes and helper functions.
org.cybergarage.xml
XML parsing and manipulation utilities.
org.cybergarage.xml.parser
XML parser implementations and utilities.
org.freenetproject
Compatibility classes for integrating with CyberGarage UPnP library, imported from Freenet project.
org.xlattice.crypto.filters
Bloom filter implementation used by DecayingBloomFilter for efficient set membership testing.
Router Console 
Package Description
net.i2p.router.news
Classes to parse the I2P news format, which follows the Atom standard with additional metadata for the I2P update notification feature.
net.i2p.router.update
Classes to implement the router update process for checking and applying I2P router updates from the update manager.
net.i2p.router.web
The router console user interface, implemented in routerconsole.jar, with these classes supporting the webapp in routerconsole.war.
net.i2p.router.web.helpers
Helpers and handlers for the router console user interface, with these classes supporting the webapp in routerconsole.war.
net.i2p.router.web.servlets
Full servlets, mostly for static content.
Router Console Dependencies 
Package Description
com.vuze.plugins.mlab
Integration layer for running the M-Lab Network Diagnostic Tool (NDT) within the I2P router console.
com.vuze.plugins.mlab.tools.ndt.swingemu
Vuze/BiglyBT Swing stub layer for M-Lab Network Diagnostic Tool (NDT) Applet.
edu.internet2.ndt
The M-Lab Web100 Network Diagnostic Tool (NDT) Java Applet Version 3.7.0.2 (May 20, 2015) From: GitHub.
Streaming Library 
Package Description
net.i2p.client.streaming
API, interfaces, and factory for a TCP-like (reliable, authenticated, in order) set of sockets for communicating over IP-like (unreliable, unauthenticated, unordered) I2P messages.
net.i2p.client.streaming.impl
Implementation of a TCP-like (reliable, authenticated, in order) set of sockets for communicating over the IP-like (unreliable, unauthenticated, unordered) I2P messages.
Addressbook Application 
Package Description
net.i2p.addressbook
Address book application for fetching and maintaining I2P host databases from subscription sources.
net.i2p.router.naming
The default naming service implementation for the I2P router, using the BlockfileNamingService based on the Metanotion BlockFile Database.
net.metanotion
Metanotion BlockFile Database
net.metanotion.io
Input/output utilities for the address book application.
net.metanotion.io.block
Block-based storage and file system utilities.
net.metanotion.io.block.index
Indexing and search utilities for block-based storage.
net.metanotion.io.data
Data structures and serialization utilities.
net.metanotion.util.skiplist
Skip list data structure implementation.
Desktopgui Application 
Package Description
net.i2p.desktopgui
Desktop graphical interface for managing I2P router lifecycle from the system tray.
net.i2p.desktopgui.i18n
Internationalization (i18n) support for the Desktop GUI.
net.i2p.desktopgui.router
Router integration and communication for the Desktop GUI.
I2PControl Application 
Package Description
com.thetransactioncompany.jsonrpc2
Classes to represent, parse and serialise JSON-RPC 2.0 requests, notifications and responses.
com.thetransactioncompany.jsonrpc2.server
Simple server framework for processing JSON-RPC 2.0 requests and notifications.
com.thetransactioncompany.jsonrpc2.util
Utility classes for typed retrieval of JSON-RPC 2.0 request parameters on the server side.
net.i2p.i2pcontrol
I2P Control provides a JSON-RPC 2.0 interface for controlling and monitoring the I2P router.
net.i2p.i2pcontrol.security
Security components for I2P Control authentication and authorization.
net.i2p.i2pcontrol.servlets
HTTP servlets for handling I2P Control JSON-RPC 2.0 requests.
net.i2p.i2pcontrol.servlets.configuration
Configuration management for I2P Control settings and parameters.
net.i2p.i2pcontrol.servlets.jsonrpc2handlers
JSON-RPC 2.0 handlers for I2P Control API methods.
org.mindrot.jbcrypt
BCrypt implementation for password hashing and verification.
I2PSnark Application 
Package Description
org.klomp.snark
I2P version of the snark bittorrent client, imported in 2005 and heavily enhanced to add a web UI, DHT support, and other features.
org.klomp.snark.bencode
Bencode parsing and serialization for BitTorrent protocol.
org.klomp.snark.comments
Data structures to support ut_comment, since 0.9.31.
org.klomp.snark.dht
Distributed Hash Table (DHT) implementation for BitTorrent.
org.klomp.snark.standalone
Classes exclusively used in standalone I2PSnark installations, providing functionality not needed when running within the I2P router environment.
org.klomp.snark.web
The I2PSnark web user interface package, providing a complete web-based torrent management system implemented as a webapp in i2psnark.war.
I2PTunnel Application 
Package Description
net.i2p.i2ptunnel
Implementation of preconfigured tunnels for both clients and servers, with a comprehensive UI for tunnel management and configuration.
net.i2p.i2ptunnel.access
Definition-based incoming connection filter for I2PTunnel, allowing fine-grained access control for server tunnels.
net.i2p.i2ptunnel.irc
IRC-specific tunnel enhancements including protocol filters and DCC (Direct Client-to-Client) connection handlers for IRC client tunnels.
net.i2p.i2ptunnel.localServer
Lightweight HTTP server for serving static resources (CSS, images) used by I2PTunnel HTTP client proxy error pages.
net.i2p.i2ptunnel.socks
SOCKS protocol tunnel implementation for I2P, supporting SOCKS 4, 4a, and 5.
net.i2p.i2ptunnel.streamr
Special-purpose tunnels for streaming UDP clients and servers, optimized for audio and video streaming applications.
net.i2p.i2ptunnel.udp
Core API and interfaces used by UDP tunnel implementations.
net.i2p.i2ptunnel.udpTunnel
UDP tunnel implementation for I2PTunnel.
net.i2p.i2ptunnel.ui
Public API classes for programmatic tunnel configuration and management.
net.i2p.i2ptunnel.util
Internal HTTP utilities and helper classes for I2PTunnel operations.
net.i2p.i2ptunnel.web
Web-based user interface for managing I2PTunnel configurations, implemented as a webapp packaged in i2ptunnel.war.
Imagegen Application 
Package Description
com.docuverse.identicon
Identicon generation library for creating unique visual icons from I2P destinations and identifiers.
com.google.zxing
Subset of ZXing (Zebra Crossing) library containing QR code generation functionality for I2P destinations.
com.google.zxing.client.j2se
Java SE client-side implementation for ZXing barcode library.
com.google.zxing.common
Common utilities and classes for ZXing barcode and QR code processing.
com.google.zxing.common.reedsolomon
Reed-Solomon error correction algorithms for ZXing barcode library.
com.google.zxing.qrcode
QR code detection, decoding, and encoding for ZXing.
com.google.zxing.qrcode.decoder
QR code decoding implementation for ZXing.
com.google.zxing.qrcode.encoder
QR code encoding implementation for ZXing.
net.i2p.imagegen
Servlets and services for generating QR codes and identicon images for I2P destinations and identifiers.
Installer Utilities 
Package Description
net.i2p.installer
Helper utilities and support classes used by the I2P installer.
Jetty Utilities 
Package Description
net.i2p.jetty
I2P integration layer for the Jetty web server, providing embedded Jetty startup, configuration, and logging integration with the I2P router.
net.i2p.servlet
Servlet utility classes for I2P web applications, originally from susimail and moved to jetty-i2p.jar in 0.9.19 for shared use across all I2P webapps.
net.i2p.servlet.filters
Security filters for I2P web applications, providing XSS (Cross-Site Scripting) protection and other security measures.
net.i2p.servlet.util
Utility classes for servlet operations and HTTP request handling.
RRD4J Library (jrobin.jar) 
Package Description
com.tomgibara.crinch.hashing
Hashing utilities and interfaces for generating and managing hash values.
eu.bengreen.data.utility
Data utility classes for hashing and time-related algorithms.
org.rrd4j
RRD4J is a high performance data logging and graphing system for time series data, implementing RRDTool's functionality in Java.
org.rrd4j.core
core RRD4J implementation.
org.rrd4j.core.jrrd
This package provides read-only access to natives RRD file.
org.rrd4j.core.timespec
Time specification parsing and handling for JRobin RRD system.
org.rrd4j.data
RRD4J data management classes and interfaces.
Provides data sources, processors, aggregators, and utilities for Round Robin Database (RRD) operations and calculations.
org.rrd4j.graph
RRD4J graph capabilities.
SAM Bridge 
Package Description
net.i2p.sam
The SAM (Simple Anonymous Messaging) client API.
SAM Demos 
Package Description
net.i2p.sam.client
Demo and test client classes.
SusiDNS Application 
Package Description
i2p.susi.dns
The SusiDNS webapp, which is the user interface for the addressbook application and the local naming service (hosts database) implemented in net.i2p.client.naming.
net.i2p.addressbook.servlet
Servlet for starting and managing the address book DaemonThread.
SusiMail Application 
Package Description
i2p.susi.util
Utility classes for the SusiMail webmail client.
i2p.susi.webmail
The SusiMail webapp, which implements a webmail interface, POP3 and SMTP client-side protocols, and local caching of email.
i2p.susi.webmail.encoding
Character encoding and MIME handling for SusiMail.
i2p.susi.webmail.pop3
POP3 protocol implementation for SusiMail.
i2p.susi.webmail.smtp
SMTP protocol implementation for SusiMail.
Systray Application 
Package Description
net.i2p.apps.systray
System tray integration and URL launcher for the I2P router console.
Apache Commons 
Package Description
org.apache.commons.io
Provides classes for working with streams, readers, writers and files.
org.apache.commons.io.build
Provides classes to implement IO builders.
org.apache.commons.io.channels
Provides classes to work with java.nio.channels.
org.apache.commons.io.charset
Provides classes to work with code from java.nio.charset.
org.apache.commons.io.comparator
Provides various Comparator implementations for Files and Path.
org.apache.commons.io.file
Provides extensions in the realm of java.nio.file.
org.apache.commons.io.file.attribute
Provides help using java.nio.file.attribute types.
org.apache.commons.io.file.spi
Provides extensions in the realm of java.nio.file.spi.
org.apache.commons.io.filefilter
Provides the an interface IOFileFilter that combines both FileFilter and FilenameFilter.
org.apache.commons.io.function
Provides IO-only related functional interfaces for lambda expressions and method references.
org.apache.commons.io.input
Provides implementations of input classes, such as InputStream and Reader.
org.apache.commons.io.input.buffer
Provides implementations of buffered input classes, such as CircularBufferInputStream and PeekableInputStream.
org.apache.commons.io.monitor
Provides a component for monitoring file system events (directory and file create, update and delete events).
org.apache.commons.io.output
Provides implementations of output classes, such as OutputStream and Writer.
org.apache.commons.io.serialization
Provides a framework for controlling the deserialization of classes.
org.apache.commons.net
Common socket classes and protocol command utility classes
org.apache.commons.net.bsd
Classes for rcommand, rexec, rlogin
org.apache.commons.net.chargen
Chargen over TCP and UDP
org.apache.commons.net.daytime
Daytime over TCP and UDP
org.apache.commons.net.discard
Discard over TCP and UDP
org.apache.commons.net.echo
Echo over TCP and UDP
org.apache.commons.net.finger
Finger implementation
org.apache.commons.net.ftp
FTP and FTPS support classes
org.apache.commons.net.ftp.parser
FTP file listing parser classes
org.apache.commons.net.imap
Basic IMAP and IMAPS support classes
org.apache.commons.net.io
Utility classes for IO support.
org.apache.commons.net.nntp
NNTP - network news transfer protocol
org.apache.commons.net.ntp
NTP - network time protocol
org.apache.commons.net.pop3
POP3 and POP3S mail
org.apache.commons.net.smtp
SMTP and SMTPS mail
org.apache.commons.net.telnet
Telnet implementation
org.apache.commons.net.tftp
TFTP cliemt implementation
org.apache.commons.net.time
Time protocol (RFC 868) over TCP and UDP
org.apache.commons.net.util
Utility classes
org.apache.commons.net.whois
Whois client
Skip navigation links