| Package | Description |
|---|---|
| net.i2p.client | Interfaces and factories for the base I2P SDK used to develop applications that communicate through I2P. |
| net.i2p.crypto | Core cryptographic primitives and algorithms used throughout I2P. |
| 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.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.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.networkdb.kademlia | Kademlia DHT implementation and floodfill router functionality for I2P. |
| org.klomp.snark.dht | Distributed Hash Table (DHT) implementation for BitTorrent. |
| Modifier and Type | Class and Description |
|---|---|
class | SendMessageOptionsAdvanced options attached to a single outgoing I2CP message. |
| Modifier and Type | Class and Description |
|---|---|
class | Hash384SHA-384 secure hash algorithm implementation. |
class | Hash512SHA-512 secure hash algorithm implementation. |
(package private) class | RSASigningPrivateCrtKeyA SigningPrivateKey that retains the Chinese Remainder Theorem
parameters, so it can be converted back to a Java CRT key. |
class | SHA1HashI2P data structure for SHA-1 hash values. |
| Modifier and Type | Class and Description |
|---|---|
class | CertificateExtensible certificate system for I2P structures providing metadata and capabilities. |
class | DatabaseEntryBase class for data structures stored in the I2P network database (NetDb). |
class | DataStructureImplBase implementation of all data structures |
class | DateAndFlagsA six-byte Date and 2 bytes of flags, since a Date won't encroach
on the top two bytes until the year 10889. |
class | DestinationDefines an endpoint in the I2P network that can receive messages. |
class | EncryptedLeaseSetImplementation of EncryptedLeaseSet as specified in
Proposal 123: New NetDb Entries. |
class | HashSHA-256 hash implementation for I2P data identification and integrity. |
class | KeyCertificateSpecialized certificate for defining cryptographic key types used in I2P identities. |
class | KeysAndCertContainer for cryptographic keys and certificate as used by I2P identities. |
class | LeaseAuthorization grant proving a router/tunnel may receive messages for a destination. |
class | Lease2Implementation of Lease2 as specified in
Proposal 123: New NetDb Entries. |
class | LeaseSetDefines the set of leases that a destination currently has available for routing messages. |
class | LeaseSet2Implementation of LeaseSet2 as specified in
Proposal 123: New NetDb Entries. |
class | MetaLeaseImplementation of MetaLease as specified in
Proposal 123: New NetDb Entries. |
class | MetaLeaseSetImplementation of MetaLeaseSet as specified in
Proposal 123: New NetDb Entries. |
class | PayloadMessage payload container for I2P communications with encryption support. |
class | PrivateKeyCryptographic private key for asymmetric encryption in I2P. |
class | PublicKeyCryptographic public key for asymmetric encryption in I2P. |
class | SessionKeyCryptographic session key for symmetric encryption in I2P. |
class | SignatureCryptographic signature implementation for I2P data structures and identity verification. |
class | SigningPrivateKeyCryptographic private key for digital signature generation in I2P. |
class | SigningPublicKeyCryptographic public key for digital signature verification in I2P. |
class | SimpleDataStructureBase class for I2P data structures containing a single fixed-length byte array. |
class | VerifiedDestinationExtend Destination with methods to verify its Certificate. |
| Modifier and Type | Class and Description |
|---|---|
class | AbuseReasonDefines the structure for why abuse was reported either by the client to
the router or by the router to the client |
class | AbuseSeverityProvides a severity level (larger numbers are more severe) in association with
a client reporting abusive behavior to the router or the router reporting it
to the client |
class | SessionConfigDefines the information a client must provide to create a session |
| Modifier and Type | Class and Description |
|---|---|
class | DeliveryInstructionsContains the delivery instructions for garlic cloves. |
class | EncryptedBuildRecordElGamal-encrypted request or response. |
class | GarlicCloveContains one deliverable message encrypted to a router along with instructions
and a certificate 'paying for' the delivery. |
class | ShortEncryptedBuildRecordSmall records. |
| Modifier and Type | Class and Description |
|---|---|
class | RouterAddressDefines a method of communicating with a router
For efficiency, the options methods and structures here are unsynchronized. |
class | RouterIdentityDefines the unique identifier of a router, including any certificate or
public key. |
class | RouterInfoDefines the data that a router either publishes to the global routing table or
provides to trusted peers. |
| Modifier and Type | Method and Description |
|---|---|
static <T extends DataStructure> | SortHelper.sortStructures(Collection<T> dataStructures)Sort based on the Hash of the DataStructure. |
| Modifier and Type | Method and Description |
|---|---|
(package private) static void | SortHelper.sortStructureList(List<? extends DataStructure> dataStructures)See above. |
| Modifier and Type | Class and Description |
|---|---|
(package private) class | NextSessionKeyX25519 public key with identifier for next session key exchange in ratchet protocol |
(package private) class | SessionKeyAndNonceSession key with nonce and optional handshake state for ratchet message encryption and decryption operations, supporting nonces up to 65535
This is what is returned from RatchetTagSet.consume(). |
| Modifier and Type | Class and Description |
|---|---|
(package private) class | LocalHashPull the caching used only by KBucketImpl out of Hash and put it here. |
| Modifier and Type | Class and Description |
|---|---|
(package private) class | InfoHashRepresents a BitTorrent info hash used for DHT operations. |
class | NIDNode Identifier (NID) for Kademlia DHT operations. |
(package private) class | NodeInfoComprehensive node information container for DHT operations. |
(package private) class | PeerRepresents a single peer participating in a specific torrent within the DHT tracker. |
(package private) class | TokenKeyIndexing key for DHT tokens based on node ID and info hash combination. |