Uses of Class
net.i2p.data.SessionTag
-
Packages that use SessionTag Package Description net.i2p.client Interfaces and factories for the base I2P SDK used to develop applications that communicate through I2P.net.i2p.client.impl Implements the base I2P SDK for developing applications that communicate through I2P.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.net.i2p.crypto These classes provide a number of low-level cryptographic routines.net.i2p.data.i2np This package defines the low-level messages sent between routers, called the Invisible Internet Network Protocol (I2NP).net.i2p.router.crypto Classes formerly in net.i2p.crypto but moved here as they are only used by the router.net.i2p.router.crypto.ratchet Implementation of ECIES-X25519-AEAD-Ratchet (proposal 144).net.i2p.router.message Creates and parses garlic messages.net.i2p.router.networkdb.kademlia The network database, including implementation of floodfills. -
-
Uses of SessionTag in net.i2p.client
Method parameters in net.i2p.client with type arguments of type SessionTag Modifier and Type Method Description booleanI2PSession. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent)End-to-End Crypto is disabled, tags and keys are ignored.booleanI2PSession. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, int proto, int fromPort, int toPort)See I2PSessionMuxedImpl for proto/port details.booleanI2PSession. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expire)End-to-End Crypto is disabled, tags and keys are ignored.booleanI2PSession. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expire, int proto, int fromPort, int toPort)See I2PSessionMuxedImpl for proto/port details.booleanI2PSession. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expire, int proto, int fromPort, int toPort, int flags)See I2PSessionMuxedImpl for proto/port details.booleanI2PSession. sendMessage(Destination dest, byte[] payload, SessionKey keyUsed, Set<SessionTag> tagsSent)End-to-End Crypto is disabled, tags and keys are ignored! Like sendMessage above, except the key used and the tags sent are exposed to the application. -
Uses of SessionTag in net.i2p.client.impl
Methods in net.i2p.client.impl with parameters of type SessionTag Modifier and Type Method Description voidI2CPMessageProducer. sendMessage(I2PSessionImpl session, Destination dest, long nonce, byte[] payload, SessionTag tag, SessionKey key, Set<SessionTag> tags, SessionKey newKey, long expires)Package up and send the payload to the router for deliveryMethod parameters in net.i2p.client.impl with type arguments of type SessionTag Modifier and Type Method Description protected booleanI2PSessionImpl2. sendBestEffort(Destination dest, byte[] payload, SessionKey keyUsed, Set<SessionTag> tagsSent, long expires)voidI2CPMessageProducer. sendMessage(I2PSessionImpl session, Destination dest, long nonce, byte[] payload, SessionTag tag, SessionKey key, Set<SessionTag> tags, SessionKey newKey, long expires)Package up and send the payload to the router for deliverybooleanI2PSessionImpl2. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent)booleanI2PSessionImpl2. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, int proto, int fromport, int toport)booleanI2PSessionImpl2. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expires)Unused? see MuxedImpl overridebooleanI2PSessionImpl2. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expire, int proto, int fromport, int toport)booleanI2PSessionImpl2. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expire, int proto, int fromport, int toport, int flags)booleanI2PSessionImpl2. sendMessage(Destination dest, byte[] payload, SessionKey keyUsed, Set<SessionTag> tagsSent)booleanI2PSessionMuxedImpl. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, int proto, int fromport, int toport)booleanI2PSessionMuxedImpl. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expires)booleanI2PSessionMuxedImpl. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expires, int proto, int fromPort, int toPort)booleanI2PSessionMuxedImpl. sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expires, int proto, int fromPort, int toPort, int flags) -
Uses of SessionTag in net.i2p.client.streaming.impl
Methods in net.i2p.client.streaming.impl that return types with arguments of type SessionTag Modifier and Type Method Description Set<SessionTag>PacketLocal. getTagsSent()Deprecated.should always return null or an empty setMethod parameters in net.i2p.client.streaming.impl with type arguments of type SessionTag Modifier and Type Method Description voidPacketLocal. setTagsSent(Set<SessionTag> tags)Deprecated.I2PSession throws out the tags -
Uses of SessionTag in net.i2p.crypto
Methods in net.i2p.crypto that return SessionTag Modifier and Type Method Description SessionTagSessionKeyManager. consumeNextAvailableTag(PublicKey target, SessionKey key)Retrieve the next available session tag for identifying the use of the given key when communicating with the target.Methods in net.i2p.crypto with parameters of type SessionTag Modifier and Type Method Description SessionKeySessionKeyManager. consumeTag(SessionTag tag)Determine if we have received a session key associated with the given session tag, and if so, discard it (but keep track for frequent dups) and return the decryption key it was received with (via tagsReceived(...)).Method parameters in net.i2p.crypto with type arguments of type SessionTag Modifier and Type Method Description TagSetHandleSessionKeyManager. tagsDelivered(PublicKey target, SessionKey key, Set<SessionTag> sessionTags)Take note of the fact that the given sessionTags associated with the key for encryption to the target have definitely been received at the target (aka call this method after receiving an ack to a message delivering them)voidSessionKeyManager. tagsReceived(SessionKey key, Set<SessionTag> sessionTags)Accept the given tags and associate them with the given key for decryption, with the default expiration.voidSessionKeyManager. tagsReceived(SessionKey key, Set<SessionTag> sessionTags, long expire)Accept the given tags and associate them with the given key for decryption, with specified expiration. -
Uses of SessionTag in net.i2p.data.i2np
Methods in net.i2p.data.i2np that return SessionTag Modifier and Type Method Description SessionTagDatabaseLookupMessage. getReplyTag()The included session tag or null if unsetMethods in net.i2p.data.i2np with parameters of type SessionTag Modifier and Type Method Description voidDatabaseLookupMessage. setReplySession(SessionKey encryptKey, SessionTag encryptTag)Only worthwhile if sending reply via tunnel -
Uses of SessionTag in net.i2p.router.crypto
Methods in net.i2p.router.crypto that return SessionTag Modifier and Type Method Description SessionTagTransientSessionKeyManager. consumeNextAvailableTag(PublicKey target, SessionKey key)Retrieve the next available session tag for identifying the use of the given key when communicating with the target.Methods in net.i2p.router.crypto with parameters of type SessionTag Modifier and Type Method Description SessionKeyTransientSessionKeyManager. consumeTag(SessionTag tag)Determine if we have received a session key associated with the given session tag, and if so, discard it (but keep track for frequent dups) and return the decryption key it was received with (via tagsReceived(...)).byte[]ElGamalAESEngine. encrypt(byte[] data, PublicKey target, SessionKey key, Set<SessionTag> tagsForDelivery, SessionTag currentTag, long paddedSize)Encrypt the data to the target using the given key and deliver the specified tags No new session key This is the one called from GarlicMessageBuilder and is the primary entry point.byte[]ElGamalAESEngine. encrypt(byte[] data, PublicKey target, SessionKey key, Set<SessionTag> tagsForDelivery, SessionTag currentTag, SessionKey newKey, long paddedSize)Encrypt the unencrypted data to the target.Method parameters in net.i2p.router.crypto with type arguments of type SessionTag Modifier and Type Method Description (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); }byte[]ElGamalAESEngine. encrypt(byte[] data, PublicKey target, SessionKey key, Set<SessionTag> tagsForDelivery, long paddedSize)Deprecated.unusedbyte[]ElGamalAESEngine. encrypt(byte[] data, PublicKey target, SessionKey key, Set<SessionTag> tagsForDelivery, SessionTag currentTag, long paddedSize)Encrypt the data to the target using the given key and deliver the specified tags No new session key This is the one called from GarlicMessageBuilder and is the primary entry point.byte[]ElGamalAESEngine. encrypt(byte[] data, PublicKey target, SessionKey key, Set<SessionTag> tagsForDelivery, SessionTag currentTag, SessionKey newKey, long paddedSize)Encrypt the unencrypted data to the target.(package private) byte[]ElGamalAESEngine. encryptAESBlock(byte[] data, SessionKey key, byte[] iv, Set<SessionTag> tagsForDelivery, SessionKey newKey, long paddedSize)For both scenarios, this method encrypts the AES area using the given key, iv and making sure the resulting data is at least as long as the paddedSize and also mod 16 bytes.TagSetHandleTransientSessionKeyManager. tagsDelivered(PublicKey target, SessionKey key, Set<SessionTag> sessionTags)Take note of the fact that the given sessionTags associated with the key for encryption to the target have been sent.voidTransientSessionKeyManager. tagsReceived(SessionKey key, Set<SessionTag> sessionTags)Accept the given tags and associate them with the given key for decryptionvoidTransientSessionKeyManager. tagsReceived(SessionKey key, Set<SessionTag> sessionTags, long expire)Accept the given tags and associate them with the given key for decryption -
Uses of SessionTag in net.i2p.router.crypto.ratchet
Methods in net.i2p.router.crypto.ratchet that return SessionTag Modifier and Type Method Description SessionTagMuxedSKM. consumeNextAvailableTag(PublicKey target, SessionKey key)ElG onlySessionTagRatchetSKM. consumeNextAvailableTag(PublicKey target, SessionKey key)Methods in net.i2p.router.crypto.ratchet with parameters of type SessionTag Modifier and Type Method Description SessionKeyMuxedSKM. consumeTag(SessionTag tag)SessionKeyRatchetSKM. consumeTag(SessionTag tag)Method parameters in net.i2p.router.crypto.ratchet with type arguments of type SessionTag Modifier and Type Method Description TagSetHandleMuxedSKM. tagsDelivered(PublicKey target, SessionKey key, Set<SessionTag> sessionTags)ElG onlyTagSetHandleRatchetSKM. tagsDelivered(PublicKey target, SessionKey key, Set<SessionTag> sessionTags)voidMuxedSKM. tagsReceived(SessionKey key, Set<SessionTag> sessionTags)ElG onlyvoidMuxedSKM. tagsReceived(SessionKey key, Set<SessionTag> sessionTags, long expire)ElG onlyvoidRatchetSKM. tagsReceived(SessionKey key, Set<SessionTag> sessionTags)voidRatchetSKM. tagsReceived(SessionKey key, Set<SessionTag> sessionTags, long expire) -
Uses of SessionTag in net.i2p.router.message
Methods in net.i2p.router.message with parameters of type SessionTag Modifier and Type Method Description static GarlicMessageGarlicMessageBuilder. buildMessage(RouterContext ctx, GarlicConfig config, Set<SessionTag> wrappedTags, PublicKey target, SessionKey encryptKey, SessionTag encryptTag)ELGAMAL_2048 only.Method parameters in net.i2p.router.message with type arguments of type SessionTag Modifier and Type Method Description static GarlicMessageGarlicMessageBuilder. buildMessage(RouterContext ctx, GarlicConfig config, Set<SessionTag> wrappedTags, PublicKey target, SessionKey encryptKey, SessionTag encryptTag)ELGAMAL_2048 only.static GarlicMessageGarlicMessageBuilder. buildMessage(RouterContext ctx, GarlicConfig config, SessionKey wrappedKey, Set<SessionTag> wrappedTags, int numTagsToDeliver, int lowTagsThreshold, SessionKeyManager skm)ELGAMAL_2048 only.static GarlicMessageGarlicMessageBuilder. buildMessage(RouterContext ctx, GarlicConfig config, SessionKey wrappedKey, Set<SessionTag> wrappedTags, int numTagsToDeliver, SessionKeyManager skm)ELGAMAL_2048 only.static GarlicMessageGarlicMessageBuilder. buildMessage(RouterContext ctx, GarlicConfig config, SessionKey wrappedKey, Set<SessionTag> wrappedTags, SessionKeyManager skm)Now unused, since we have to generate a reply token first in OCMOSJ but we don't know if tags are required yet.(package private) static GarlicMessageOutboundClientMessageJobHelper. createGarlicMessage(RouterContext ctx, long replyToken, long expiration, PublicKey recipientPK, PayloadGarlicConfig dataClove, Hash from, Destination dest, TunnelInfo replyTunnel, int tagsToSendOverride, int lowTagsOverride, SessionKey wrappedKey, Set<SessionTag> wrappedTags, boolean requireAck, LeaseSet bundledReplyLeaseSet, ReplyCallback callback)Allow the app to specify the data clove directly, which enables OutboundClientMessage to resend the same payload (including expiration and unique id) in different garlics (down different tunnels) This is called from OCMOSJ -
Uses of SessionTag in net.i2p.router.networkdb.kademlia
Fields in net.i2p.router.networkdb.kademlia declared as SessionTag Modifier and Type Field Description SessionTagMessageWrapper.OneTimeSession. tagnon-null for ElGMethods in net.i2p.router.networkdb.kademlia with parameters of type SessionTag Modifier and Type Method Description static GarlicMessageMessageWrapper. wrap(RouterContext ctx, I2NPMessage m, SessionKey encryptKey, SessionTag encryptTag)Garlic wrap a message from nobody, destined for an unknown router, to hide the contents from the IBGW.Constructors in net.i2p.router.networkdb.kademlia with parameters of type SessionTag Constructor Description OneTimeSession(SessionKey key, SessionTag tag)
-