Package | Description |
---|---|
net.i2p.client.datagram |
Provides a standard way for reading and writing messages transferred over I2P
so that the recipient has an authenticated mechanism to reply to it.
|
net.i2p.client.naming |
Provides a standard way for querying the local naming service to resolve a
name into a
Destination (without the complexity of JNDI). |
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.i2ptunnel |
Implementation of preconfigured tunnels, both for clients and servers,
and a UI for adding more and editing the configuration.
|
net.i2p.router.startup |
The I2P startup package loads the configuration when I2P is started.
|
net.i2p.router.transport.udp |
The UDP transport (also known as 'SSU transport') allows passing I2P messages on top of UDP.
|
net.i2p.sam |
The SAM client API.
|
org.klomp.snark.dht |
Modifier and Type | Method and Description |
---|---|
void |
I2PDatagramDissector.loadI2PDatagram(byte[] dgram)
Load an I2P repliable datagram into the dissector.
|
Modifier and Type | Method and Description |
---|---|
static Properties |
BlockfileNamingService.readProperties(ByteArrayInputStream in)
Same as DataHelper.readProperties, UTF-8, unsorted,
except that values may up to 4K bytes.
|
Modifier and Type | Method and Description |
---|---|
byte[] |
ElGamalAESEngine.decrypt(byte[] data,
PrivateKey targetPrivateKey)
Deprecated.
specify the key manager!
|
byte[] |
ElGamalAESEngine.decrypt(byte[] data,
PrivateKey targetPrivateKey,
SessionKeyManager keyManager)
Decrypt the message using the given private key
and using tags from the specified key manager.
|
(package private) byte[] |
ElGamalAESEngine.decryptAESBlock(byte[] encrypted,
int offset,
int encryptedLen,
SessionKey key,
byte[] iv,
byte[] sentTag,
Set<SessionTag> foundTags,
SessionKey foundKey)
private byte[] decryptAESBlock(byte encrypted[], SessionKey key, byte iv[],
byte sentTag[], Set foundTags, SessionKey foundKey) throws DataFormatException {
return decryptAESBlock(encrypted, 0, encrypted.length, key, iv, sentTag, foundTags, foundKey);
}
|
void |
SHA1Hash.readBytes(InputStream in) |
Modifier and Type | Method and Description |
---|---|
static Certificate |
Certificate.create(byte[] data,
int off)
If null, P256 key, or Ed25519 key cert, return immutable static instance, else create new
|
static Destination |
Destination.create(InputStream in)
Pull from cache or return new
|
static Certificate |
Certificate.create(InputStream in)
If null, P256 key, or Ed25519 key cert, return immutable static instance, else create new
|
Destination |
PrivateKeyFile.createIfAbsent()
Create with the default signature type if nonexistent.
|
Destination |
PrivateKeyFile.createIfAbsent(SigType type)
Create with the specified signature type if nonexistent.
|
void |
SimpleDataStructure.fromBase64(String data)
Sets the data.
|
void |
DataStructure.fromBase64(String data)
Load the structure from the base 64 encoded data provided
Warning - many classes will throw IllegalStateException if data is already set.
|
void |
DataStructureImpl.fromBase64(String data) |
void |
TunnelId.fromByteArray(byte[] data)
Overridden for efficiency.
|
void |
DateAndFlags.fromByteArray(byte[] data)
Overridden for efficiency.
|
void |
SimpleDataStructure.fromByteArray(byte[] data)
Overridden for efficiency.
|
void |
DataStructure.fromByteArray(byte[] data)
Load the structure from the data provided
Warning - many classes will throw IllegalStateException if data is already set.
|
void |
DataStructureImpl.fromByteArray(byte[] data) |
static Date |
DataHelper.fromDate(byte[] src,
int offset) |
static int |
DataHelper.fromProperties(byte[] source,
int offset,
Properties target)
Reads the props from the byte array and puts them in the Properties target
See readProperties() for the format.
|
protected abstract byte[] |
DatabaseEntry.getBytes()
Returns the raw payload data, excluding the signature, to be signed by sign().
|
Destination |
PrivateKeyFile.getDestination()
If the destination is not set, read it in from the file.
|
static Boolean |
DataHelper.readBoolean(InputStream in)
Deprecated.
unused
|
int |
Destination.readBytes(byte[] source,
int offset)
deprecated was used only by Packet.java in streaming, now unused
Warning - used by i2p-bote.
|
int |
Certificate.readBytes(byte[] source,
int offset) |
void |
KeysAndCert.readBytes(InputStream in) |
void |
TunnelId.readBytes(InputStream in) |
void |
Lease.readBytes(InputStream in) |
void |
DateAndFlags.readBytes(InputStream in) |
void |
LeaseSet.readBytes(InputStream in)
This does NOT validate the signature
|
void |
SimpleDataStructure.readBytes(InputStream in)
Sets the data.
|
void |
Certificate.readBytes(InputStream in) |
void |
SessionTag.readBytes(InputStream in) |
void |
DataStructure.readBytes(InputStream in)
Load up the current object with data from the given stream.
|
void |
Hash.readBytes(InputStream in) |
void |
Payload.readBytes(InputStream in) |
static Date |
DataHelper.readDate(InputStream in)
Read in a date from the stream as specified by the I2P data structure spec.
|
static long |
DataHelper.readLong(InputStream rawStream,
int numBytes)
Read the stream for an integer as defined by the I2P data structure specification.
|
static Properties |
DataHelper.readProperties(InputStream rawStream)
Read a mapping from the stream, as defined by the I2P data structure spec,
and store it into a Properties object.
|
static Properties |
DataHelper.readProperties(InputStream rawStream,
Properties props)
Ditto, load into an existing properties
As of 0.9.18, throws DataFormatException on duplicate key
|
static String |
DataHelper.readString(InputStream in)
Read in a string from the stream as specified by the I2P data structure spec.
|
void |
DatabaseEntry.sign(SigningPrivateKey key)
Sign the structure using the supplied signing key
|
KeyCertificate |
Certificate.toKeyCertificate()
Up-convert this to a KeyCertificate
|
static int |
DataHelper.toProperties(byte[] target,
int offset,
Properties props)
Deprecated.
|
static byte[] |
DataHelper.toProperties(Properties opts)
Writes the props to returned byte array, not sorted
(unless the opts param is an OrderedProperties)
Strings will be UTF-8 encoded in the byte array.
|
void |
PrivateKeyFile.write()
Copied from I2PClientImpl.createDestination()
|
static void |
DataHelper.writeBoolean(OutputStream out,
Boolean bool)
Deprecated.
unused
|
void |
KeysAndCert.writeBytes(OutputStream out) |
void |
TunnelId.writeBytes(OutputStream out) |
void |
Lease.writeBytes(OutputStream out) |
void |
DateAndFlags.writeBytes(OutputStream out) |
void |
LeaseSet.writeBytes(OutputStream out)
This does NOT validate the signature
|
void |
SimpleDataStructure.writeBytes(OutputStream out) |
void |
Certificate.writeBytes(OutputStream out) |
void |
DataStructure.writeBytes(OutputStream out)
Write out the data structure to the stream, using the format defined in the
I2P data structure specification.
|
void |
Payload.writeBytes(OutputStream out) |
static void |
DataHelper.writeDate(OutputStream out,
Date date)
Write out a date to the stream as specified by the I2P data structure spec.
|
static void |
DataHelper.writeLong(OutputStream rawStream,
int numBytes,
long value)
Write an integer as defined by the I2P data structure specification to the stream.
|
static void |
DataHelper.writeProperties(OutputStream rawStream,
Properties props)
Write a mapping to the stream, as defined by the I2P data structure spec,
and store it into a Properties object.
|
static void |
DataHelper.writeProperties(OutputStream rawStream,
Properties props,
boolean utf8)
Writes the props to the stream, sorted by property name.
|
static void |
DataHelper.writeProperties(OutputStream rawStream,
Properties props,
boolean utf8,
boolean sort)
Writes the props to the stream, sorted by property name if sort == true or
if props is an OrderedProperties.
|
static void |
DataHelper.writeString(OutputStream out,
String string)
Write out a string to the stream as specified by the I2P data structure spec.
|
static void |
DataHelper.writeStringUTF8(OutputStream out,
String string)
Write out a string to the stream as specified by the I2P data structure spec.
|
void |
SigningPublicKey.writeTruncatedBytes(OutputStream out)
Write the data up to a max of 128 bytes.
|
Constructor and Description |
---|
Destination(String s)
alternative constructor which takes a base64 string representation
|
KeyCertificate(byte[] payload) |
KeyCertificate(Certificate cert)
Up-convert a cert to this class
|
PrivateKey(String base64Data)
constructs from base64
|
PublicKey(String base64Data)
constructs from base64
|
SigningPrivateKey(String base64Data)
constructs from base64
|
SigningPublicKey(String base64Data)
constructs from base64
|
VerifiedDestination(Destination d)
create from an existing Dest
|
VerifiedDestination(String s)
alternative constructor which takes a base64 string representation
|
Modifier and Type | Method and Description |
---|---|
void |
I2CPMessageImpl.readBytes(InputStream in) |
void |
AbuseReason.readBytes(InputStream in) |
void |
SessionId.readBytes(InputStream in) |
void |
SessionConfig.readBytes(InputStream rawConfig) |
void |
MessageId.readBytes(InputStream in) |
void |
AbuseSeverity.readBytes(InputStream in) |
void |
SessionConfig.signSessionConfig(SigningPrivateKey signingKey)
Sign the structure using the supplied private key
|
void |
I2CPMessageImpl.writeBytes(OutputStream out) |
void |
AbuseReason.writeBytes(OutputStream out) |
void |
SessionId.writeBytes(OutputStream out) |
void |
SessionConfig.writeBytes(OutputStream out) |
void |
MessageId.writeBytes(OutputStream out) |
void |
AbuseSeverity.writeBytes(OutputStream out) |
Modifier and Type | Method and Description |
---|---|
static DeliveryInstructions |
DeliveryInstructions.create(byte[] data,
int offset)
Returns immutable local instructions, or new
|
int |
DeliveryInstructions.readBytes(byte[] data,
int offset) |
int |
GarlicClove.readBytes(byte[] source,
int offset) |
void |
I2NPMessageImpl.readBytes(InputStream in)
Deprecated.
unused
|
void |
FastI2NPMessageImpl.readBytes(InputStream in)
Deprecated.
unused
|
void |
DeliveryInstructions.readBytes(InputStream in)
Deprecated.
unused
|
void |
GarlicClove.readBytes(InputStream in)
Deprecated.
unused, use byte array method to avoid copying
|
void |
I2NPMessageImpl.writeBytes(OutputStream out)
Deprecated.
unused
|
void |
FastI2NPMessageImpl.writeBytes(OutputStream out)
Deprecated.
unused
|
void |
DeliveryInstructions.writeBytes(OutputStream out)
Deprecated.
unused
|
void |
GarlicClove.writeBytes(OutputStream out)
Deprecated.
unused, use byte array method to avoid copying
|
Constructor and Description |
---|
BuildRequestRecord(I2PAppContext ctx,
PrivateKey ourKey,
EncryptedBuildRecord encryptedRecord)
Decrypt the data from the specified record, writing the decrypted record into this instance's
data buffer
Caller MUST check that first 16 bytes of our hash matches first 16 bytes of encryptedRecord
before calling this.
|
Modifier and Type | Method and Description |
---|---|
protected byte[] |
RouterInfo.getBytes()
Write out the raw payload of the routerInfo, excluding the signature.
|
RouterIdentity |
RouterPrivateKeyFile.getRouterIdentity()
Read it in from the file.
|
void |
RouterAddress.readBytes(InputStream in)
As of 0.9.3, expiration MUST be all zeros as it is ignored on
readin and the signature will fail.
|
void |
RouterInfo.readBytes(InputStream in)
This does NOT validate the signature
|
void |
RouterInfo.readBytes(InputStream in,
boolean verifySig)
If verifySig is true,
this validates the signature while reading in,
and throws a DataFormatException if the sig is invalid.
|
void |
RouterAddress.writeBytes(OutputStream out)
As of 0.9.3, expiration MUST be all zeros as it is ignored on
readin and the signature will fail.
|
void |
RouterInfo.writeBytes(OutputStream out)
This does NOT validate the signature
|
Modifier and Type | Method and Description |
---|---|
static Destination |
I2PTunnel.destFromName(String name)
Deprecated.
Don't use i2ptunnel for lookup! Use I2PAppContext.getGlobalContext().namingService().lookup(name) from i2p.jar
|
Modifier and Type | Method and Description |
---|---|
static LoadRouterInfoJob.KeyData |
LoadRouterInfoJob.readKeyData(File rkf1,
File rkf2) |
Modifier and Type | Method and Description |
---|---|
ACKBitfield[] |
UDPPacketReader.DataReader.readACKBitfields() |
int |
UDPPacketReader.DataReader.readFragmentCount() |
void |
UDPPacketReader.DataReader.readMessageFragment(int fragmentNum,
byte[] target,
int targetOffset) |
int |
UDPPacketReader.DataReader.readMessageFragmentNum(int fragmentNum) |
int |
UDPPacketReader.DataReader.readMessageFragmentSize(int fragmentNum) |
long |
UDPPacketReader.DataReader.readMessageId(int fragmentNum) |
boolean |
UDPPacketReader.DataReader.readMessageIsLast(int fragmentNum) |
boolean |
InboundMessageState.receiveFragment(UDPPacketReader.DataReader data,
int dataFragment)
Read in the data from the fragment.
|
void |
UDPPacketReader.DataReader.toRawString(StringBuilder buf) |
Constructor and Description |
---|
InboundMessageState(RouterContext ctx,
long messageId,
Hash from,
UDPPacketReader.DataReader data,
int dataFragment)
Create a new IMS and read in the data from the fragment.
|
Modifier and Type | Method and Description |
---|---|
boolean |
SAMv2StreamSession.connect(int id,
String dest,
Properties props)
Connect the SAM STREAM session to the specified Destination
|
boolean |
SAMStreamSession.connect(int id,
String dest,
Properties props)
Connect the SAM STREAM session to the specified Destination
|
void |
SAMv3StreamSession.connect(SAMv3Handler handler,
String dest,
Properties props)
Connect the SAM STREAM session to the specified Destination
for a single connection, using the socket stolen from the handler.
|
static Destination |
SAMUtils.getDest(String s)
Resolve the destination from a key or a hostname
|
(package private) SAMStreamSession |
SAMv2Handler.newSAMStreamSession(String destKeystream,
String direction,
Properties props) |
abstract boolean |
SAMMessageSession.sendBytes(String dest,
byte[] data,
int proto,
int fromPort,
int toPort)
Send bytes through a SAM message-based session.
|
boolean |
SAMMessageSess.sendBytes(String dest,
byte[] data,
int proto,
int fromPort,
int toPort)
Send bytes through a SAM message-based session.
|
boolean |
SAMDatagramSession.sendBytes(String dest,
byte[] data,
int proto,
int fromPort,
int toPort)
Send bytes through a SAM DATAGRAM session.
|
boolean |
SAMRawSession.sendBytes(String dest,
byte[] data,
int proto,
int fromPort,
int toPort)
Send bytes through a SAM RAW session.
|
boolean |
SAMMessageSess.sendBytes(String dest,
byte[] data,
int proto,
int fromPort,
int toPort,
boolean sendLeaseSet,
int sendTags,
int tagThreshold,
int expiration)
Send bytes through a SAM message-based session.
|
boolean |
SAMDatagramSession.sendBytes(String dest,
byte[] data,
int proto,
int fromPort,
int toPort,
boolean sendLeaseSet,
int sendTags,
int tagThreshold,
int expiration)
Send bytes through a SAM DATAGRAM session.
|
boolean |
SAMRawSession.sendBytes(String dest,
byte[] data,
int proto,
int fromPort,
int toPort,
boolean sendLeaseSet,
int sendTags,
int tagThreshold,
int expiration)
Send bytes through a SAM RAW session.
|
protected boolean |
SAMMessageSession.sendBytesThroughMessageSession(String dest,
byte[] data,
int proto,
int fromPort,
int toPort)
Actually send bytes through the SAM message-based session I2PSession
(er...).
|
protected boolean |
SAMMessageSession.sendBytesThroughMessageSession(String dest,
byte[] data,
int proto,
int fromPort,
int toPort,
boolean sendLeaseSet,
int sendTags,
int tagThreshold,
int expiration)
Actually send bytes through the SAM message-based session I2PSession,
using per-message extended options.
|
Constructor and Description |
---|
MasterSession(String nick,
SAMv3DatagramServer dgServer,
SAMv3Handler handler,
Properties props)
Build a Session according to information
registered with the given nickname.
|
SAMDatagramSession(I2PSession sess,
Properties props,
int listenPort,
SAMDatagramReceiver recv)
Create a new SAM DATAGRAM session on an existing I2P session.
|
SAMDatagramSession(InputStream destStream,
Properties props,
SAMDatagramReceiver recv)
Create a new SAM DATAGRAM session.
|
SAMDatagramSession(String dest,
Properties props,
SAMDatagramReceiver recv)
Create a new SAM DATAGRAM session.
|
SAMMessageSession(I2PSession sess,
int listenProtocol,
int listenPort)
Initialize a new SAM message-based session using an existing I2PSession.
|
SAMMessageSession(InputStream destStream,
Properties props)
Initialize a new SAM message-based session.
|
SAMMessageSession(String dest,
Properties props)
Initialize a new SAM message-based session.
|
SAMRawSession(I2PSession sess,
Properties props,
int listenProtocol,
int listenPort,
SAMRawReceiver recv)
Create a new SAM RAW session on an existing I2P session.
|
SAMRawSession(InputStream destStream,
Properties props,
SAMRawReceiver recv)
Create a new SAM RAW session.
|
SAMRawSession(String dest,
Properties props,
SAMRawReceiver recv)
Create a new SAM RAW session.
|
SAMStreamSession(I2PSocketManager mgr,
Properties props,
SAMStreamReceiver recv,
int listenport)
Create a new SAM STREAM session on an existing socket manager.
|
SAMStreamSession(InputStream destStream,
String dir,
Properties props,
SAMStreamReceiver recv)
Create a new SAM STREAM session.
|
SAMStreamSession(String dest,
String dir,
Properties props,
SAMStreamReceiver recv)
Create a new SAM STREAM session.
|
SAMv2StreamSession(InputStream destStream,
String dir,
Properties props,
SAMStreamReceiver recv)
Create a new SAM STREAM session.
|
SAMv2StreamSession(String dest,
String dir,
Properties props,
SAMStreamReceiver recv)
Create a new SAM STREAM session.
|
SAMv3DatagramSession(String nick,
Properties props,
SAMv3Handler handler,
I2PSession isess,
int listenPort,
SAMv3DatagramServer dgServer)
Build a Datagram Session on an existing i2p session
registered with the given nickname
Caller MUST call start().
|
SAMv3DatagramSession(String nick,
SAMv3DatagramServer dgServer)
build a DatagramSession according to informations registered
with the given nickname
Caller MUST call start().
|
SAMv3RawSession(String nick,
Properties props,
SAMv3Handler handler,
I2PSession isess,
int listenProtocol,
int listenPort,
SAMv3DatagramServer dgServer)
Build a Raw Session on an existing i2p session
registered with the given nickname
Caller MUST call start().
|
SAMv3RawSession(String nick,
SAMv3DatagramServer dgServer)
Build a Raw Datagram Session according to information
registered with the given nickname
Caller MUST call start().
|
SAMv3StreamSession(String login)
Create a new SAM STREAM session, according to information
registered with the given nickname
Caller MUST call start().
|
SAMv3StreamSession(String login,
Properties props,
SAMv3Handler handler,
I2PSocketManager mgr,
int listenPort)
Build a Stream Session on an existing I2P session
registered with the given nickname
Caller MUST call start().
|
Constructor and Description |
---|
NodeInfo(String s)
Create from persistent storage string.
|