Package | Description |
---|---|
net.i2p.client |
Interfaces and factories for
the base I2P SDK used to develop applications that communicate
through I2P.
|
net.i2p.crypto |
These classes provide a number of low-level cryptographic routines.
|
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
the 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 the Invisible Internet Network Protocol (I2NP).
|
net.i2p.data.router |
Classes formerly in net.i2p.data but moved here as they are only used by the router.
|
net.i2p.internal |
Interface and classes for a router and client
within the same JVM to directly pass I2CP messages using Queues
instead of serialized messages over socket streams.
|
net.i2p.router.networkdb.kademlia |
The network database, including implementation of floodfills.
|
org.klomp.snark.dht |
Modifier and Type | Class and Description |
---|---|
class |
SendMessageOptions
Advanced options attached to a single outgoing I2CP message.
|
Modifier and Type | Class and Description |
---|---|
class |
Hash384
48 byte hash
|
class |
Hash512
64 byte hash
|
class |
SHA1Hash
Because DSAEngine was abusing Hash for 20-byte hashes
|
Modifier and Type | Class and Description |
---|---|
class |
Certificate
Defines a certificate that can be attached to various I2P structures, such
as RouterIdentity and Destination, allowing routers and clients to help
manage denial of service attacks and the network utilization.
|
class |
DatabaseEntry
Base implementation of common methods for the two data structures
that are stored in the netDb, i.e.
|
class |
DataStructureImpl
Base implementation of all data structures
|
class |
DateAndFlags
A six-byte Date and 2 bytes of flags, since a Date won't encroach
on the top two bytes until the year 10889.
|
class |
Destination
Defines an end point in the I2P network.
|
class |
Hash
Defines the hash as defined by the I2P data structure spec.
|
class |
KeyCertificate
This certificate type gets its own class because it's going to be used a lot.
|
class |
KeysAndCert
KeysAndCert has a public key, a signing key, and a certificate.
|
class |
Lease
Defines the proof that a particular router / tunnel is allowed to receive
messages for a particular Destination during some period of time.
|
class |
LeaseSet
Defines the set of leases a destination currently has.
|
class |
Payload
Defines the actual payload of a message being delivered, including the
standard encryption wrapping, as defined by the I2P data structure spec.
|
class |
PrivateKey
Defines the PrivateKey as defined by the I2P data structure spec.
|
class |
PublicKey
Defines the PublicKey as defined by the I2P data structure spec.
|
class |
SessionKey
Defines the SessionKey as defined by the I2P data structure spec.
|
class |
SessionTag
32 bytes, usually of random data.
|
class |
Signature
Defines the signature as defined by the I2P data structure spec.
|
class |
SigningPrivateKey
Defines the SigningPrivateKey as defined by the I2P data structure spec.
|
class |
SigningPublicKey
Defines the SigningPublicKey as defined by the I2P data structure spec.
|
class |
SimpleDataStructure
A SimpleDataStructure contains only a single fixed-length byte array.
|
class |
TunnelId
Defines the tunnel ID that messages are passed through on a set of routers.
|
class |
VerifiedDestination
Extend Destination with methods to verify its Certificate.
|
Modifier and Type | Interface and Description |
---|---|
interface |
I2CPMessage
Defines the base functionality of API messages
|
Modifier and Type | Class and Description |
---|---|
class |
AbuseReason
Defines the structure for why abuse was reported either by the client to
the router or by the router to the client
|
class |
AbuseSeverity
Provides 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 |
BandwidthLimitsMessage
Tell the other side the limits
|
class |
CreateLeaseSetMessage
Defines the message a client sends to a router when authorizing
the LeaseSet
|
class |
CreateSessionMessage
Defines the message a client sends to a router when establishing a new
session.
|
class |
DestLookupMessage
Request the router look up the dest for a hash
|
class |
DestReplyMessage
Response to DestLookupMessage.
|
class |
DestroySessionMessage
Defines the message a client sends to a router when destroying
existing session.
|
class |
DisconnectMessage
Defines the message a client sends to a router when destroying
existing session.
|
class |
GetBandwidthLimitsMessage
Request the router tells us the current bw limits
|
class |
GetDateMessage
Request the other side to send us what they think the current time is.
|
class |
HostLookupMessage
Request the router look up the dest for a hash
or a host.
|
class |
HostReplyMessage
Response to HostLookupMessage.
|
class |
I2CPMessageImpl
Defines the base message implementation.
|
class |
MessageId
Defines the message ID of a message delivered between a router and a client
in a particular session.
|
class |
MessagePayloadMessage
Defines the payload message a router sends to the client
|
class |
MessageStatusMessage
Defines the message a router sends to a client about a single message.
|
class |
ReceiveMessageBeginMessage
Defines the message a client sends to a router when asking the
router to start sending a message to it.
|
class |
ReceiveMessageEndMessage
Defines the message a client sends to a router when asking the
router to start sending a message to it.
|
class |
ReconfigureSessionMessage
Defines the message a client sends to a router when
updating the config on an existing session.
|
class |
ReportAbuseMessage
Defines the message a client sends to a router when asking the
router what its address visibility is
|
class |
RequestLeaseSetMessage
Defines the message a router sends to a client to request that
a leaseset be created and signed.
|
class |
RequestVariableLeaseSetMessage
Defines the message a router sends to a client to request that
a leaseset be created and signed.
|
class |
SendMessageExpiresMessage
Same as SendMessageMessage, but with an expiration to be passed to the router
As of 0.8.4, retrofitted to use DateAndFlags.
|
class |
SendMessageMessage
Defines the message a client sends to a router to ask it to deliver
a new message
|
class |
SessionConfig
Defines the information a client must provide to create a session
|
class |
SessionId
Defines the token passed between the router and client to associate messages
with a particular session.
|
class |
SessionStatusMessage
Defines the message a router sends to a client indicating the
status of the session.
|
class |
SetDateMessage
Tell the other side what time it is.
|
Modifier and Type | Interface and Description |
---|---|
interface |
I2NPMessage
Base interface for all I2NP messages
|
Modifier and Type | Class and Description |
---|---|
class |
DatabaseLookupMessage
Defines the message a router sends to another router to search for a
key in the network database.
|
class |
DatabaseSearchReplyMessage
Defines the message a router sends to another router in response to a
search (DatabaseFindNearest or DatabaseLookup) when it doesn't have the value,
specifying what routers it would search.
|
class |
DatabaseStoreMessage
Defines the message a router sends to another router to test the network
database reachability, as well as the reply message sent back.
|
class |
DataMessage
Defines a message containing arbitrary bytes of data
This is what goes in a GarlicClove.
|
class |
DeliveryInstructions
Contains the delivery instructions for garlic cloves.
|
class |
DeliveryStatusMessage
Defines the message sent back in reply to a message when requested, containing
the private ack id.
|
class |
EncryptedBuildRecord
ElGamal-encrypted request or response.
|
class |
FastI2NPMessageImpl
Ignore, but save, the SHA-256 checksum in the full 16-byte header when read in.
|
class |
GarlicClove
Contains one deliverable message encrypted to a router along with instructions
and a certificate 'paying for' the delivery.
|
class |
GarlicMessage
Defines the wrapped garlic message
|
class |
I2NPMessageImpl
Defines the base message implementation.
|
class |
TunnelBuildMessage
The basic build message with 8 records.
|
class |
TunnelBuildMessageBase
Base for TBM, TBRM, VTBM, VTBRM
Retrofitted over them.
|
class |
TunnelBuildReplyMessage
The basic build reply message with 8 records.
|
class |
TunnelDataMessage
Defines the message sent between routers as part of the tunnel delivery
The tunnel ID is changed in-place by TunnelParticipant.send(), so
we can't reuse the checksum on output, but we still subclass
FastI2NPMessageImpl so we don't verify the checksum on input...
|
class |
TunnelGatewayMessage
Defines the message sent between one tunnel's endpoint and another's gateway.
|
class |
UnknownI2NPMessage
This is similar to DataMessage or GarlicMessage but with a variable message type.
|
class |
VariableTunnelBuildMessage
Variable number of records.
|
class |
VariableTunnelBuildReplyMessage
Transmitted from the new outbound endpoint to the creator through a
reply tunnel.
|
Modifier and Type | Class and Description |
---|---|
class |
RouterAddress
Defines a method of communicating with a router
For efficiency, the options methods and structures here are unsynchronized.
|
class |
RouterIdentity
Defines the unique identifier of a router, including any certificate or
public key.
|
class |
RouterInfo
Defines 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 |
---|---|
class |
PoisonI2CPMessage
For marking end-of-queues in a standard manner.
|
Modifier and Type | Class and Description |
---|---|
(package private) class |
LocalHash
Pull the caching used only by KBucketImpl out of Hash and put it here.
|
Modifier and Type | Class and Description |
---|---|
(package private) class |
InfoHash
A 20-byte SHA1 info hash
|
class |
NID
A 20-byte peer ID, used as a Map key in lots of places.
|
(package private) class |
NodeInfo |
(package private) class |
Peer
A single peer for a single torrent.
|
(package private) class |
TokenKey
Used to index incoming Tokens
|