| Package | Description |
|---|---|
| net.i2p.data.i2np | This package defines the low-level messages sent between routers,
called Invisible Internet Network Protocol (I2NP). |
| 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.message | Garlic message creation, parsing, and source routing for I2P communications. |
| net.i2p.router.networkdb.kademlia | Kademlia DHT implementation and floodfill router functionality for I2P. |
| Modifier and Type | Method and Description |
|---|---|
RatchetSessionTag | DatabaseLookupMessage.getRatchetReplyTag()The included session tag or null if unset |
| Modifier and Type | Method and Description |
|---|---|
void | DatabaseLookupMessage.setReplySession(SessionKey encryptKey,
RatchetSessionTag encryptTag)Ratchet |
| Modifier and Type | Field and Description |
|---|---|
RatchetSessionTag | RatchetEntry.tagThe session tag |
| Modifier and Type | Method and Description |
|---|---|
RatchetSessionTag | RatchetTagSet.consumeNext()Public for outbound only. |
| Modifier and Type | Method and Description |
|---|---|
(package private) Set<RatchetSessionTag> | RatchetTagSet.getRegisteredTags()Return the set of tags registered in the SKM's _inboundTagSets map. |
| Modifier and Type | Method and Description |
|---|---|
boolean | RatchetSKM.addTag(RatchetSessionTag tag,
RatchetTagSet ts)Map the tag to this tagset. |
boolean | SessionTagListener.addTag(RatchetSessionTag tag,
RatchetTagSet ts)Map the tag to this tagset. |
SessionKeyAndNonce | SingleTagSet.consume(RatchetSessionTag tag) |
SessionKeyAndNonce | RatchetTagSet.consume(RatchetSessionTag tag)inbound only |
SessionKeyAndNonce | RatchetSKM.consumeTag(RatchetSessionTag tag)Inbound. |
byte[] | ECIESAEADEngine.encrypt(CloveSet cloves,
SessionKey key,
RatchetSessionTag tag)Create an Existing Session Message to an anonymous target
using the given session key and tag, for netdb DSM/DSRM replies. |
void | RatchetSKM.expireTag(RatchetSessionTag tag,
RatchetTagSet ts)Remove the tag associated with this tagset. |
void | SessionTagListener.expireTag(RatchetSessionTag tag,
RatchetTagSet ts)Remove the tag associated with this tagset. |
void | RatchetSKM.tagsReceived(SessionKey key,
RatchetSessionTag tag,
long expire)One time session |
void | MuxedPQSKM.tagsReceived(SessionKey key,
RatchetSessionTag tag,
long expire)EC only. |
void | MuxedSKM.tagsReceived(SessionKey key,
RatchetSessionTag tag,
long expire)EC only
One time session |
| Constructor and Description |
|---|
RatchetEntry(RatchetSessionTag tag,
SessionKeyAndNonce key,
int keyID,
int pn)outbound - calculated key |
RatchetEntry(RatchetSessionTag tag,
SessionKeyAndNonce key,
int keyID,
int pn,
NextSessionKey nextFwdKey,
NextSessionKey nextRevKey,
List<Integer> acksToSend)Full constructor with optional next keys and pending ACKs. |
SingleTagSet(SessionTagListener lsnr,
SessionKey key,
RatchetSessionTag tag,
long date,
long timeout)For outbound Existing Session |
| Modifier and Type | Method and Description |
|---|---|
static GarlicMessage | GarlicMessageBuilder.buildMessage(RouterContext ctx,
GarlicConfig config,
SessionKey encryptKey,
RatchetSessionTag encryptTag)Ratchet only. |
| Modifier and Type | Field and Description |
|---|---|
RatchetSessionTag | MessageWrapper.OneTimeSession.rtagnon-null for ratchet |
| Modifier and Type | Method and Description |
|---|---|
static GarlicMessage | MessageWrapper.wrap(RouterContext ctx,
I2NPMessage m,
SessionKey encryptKey,
RatchetSessionTag encryptTag)Garlic wrap a message from nobody, destined for an unknown router,
to hide the contents from the IBGW. |
| Constructor and Description |
|---|
OneTimeSession(SessionKey key,
RatchetSessionTag tag)Creates a new one-time session with a ratchet tag. |