Packages that use RatchetSessionTag
Package
Description
Low-level messages sent between routers - the Invisible Internet Network Protocol (I2NP).
The Double Ratchet with X25519 key agreement and ECIES hybrid encryption, used by the NTCP2 and SSU transports for session encryption.
Garlic message creation, parsing and handling, and the outbound message jobs: one-shot sends, source routing and delivery status handling.
The Kademlia distributed hash table (DHT) network database: lookup, store and explore jobs, the data store, the floodfill variants, and lookup throttling.
Tunnel pool management: pool lifecycle, peer selection, build scheduling and failure handling for client and exploratory tunnels.
Uses of RatchetSessionTag in net.i2p.data.i2np
Fields in net.i2p.data.i2np declared as RatchetSessionTagModifier and TypeFieldDescriptionprivate RatchetSessionTagDatabaseLookupMessage._ratchetReplyTagRatchet tag identifying the reply.Methods in net.i2p.data.i2np that return RatchetSessionTagModifier and TypeMethodDescriptionDatabaseLookupMessage.getRatchetReplyTag()The included session tag or null if unset.Methods in net.i2p.data.i2np with parameters of type RatchetSessionTagModifier and TypeMethodDescriptionvoidDatabaseLookupMessage.setReplySession(SessionKey encryptKey, RatchetSessionTag encryptTag) Sets the reply session for ratchet encryption; only once per message.Uses of RatchetSessionTag in net.i2p.router.crypto.ratchet
Fields in net.i2p.router.crypto.ratchet declared as RatchetSessionTagModifier and TypeFieldDescriptionprivate final RatchetSessionTagSingleTagSet._tagThe one tag this set holds.final RatchetSessionTagRatchetEntry.tagThe session tag.Fields in net.i2p.router.crypto.ratchet with type parameters of type RatchetSessionTagModifier and TypeFieldDescriptionprivate final ConcurrentHashMap<RatchetSessionTag, RatchetTagSet> RatchetSKM._inboundTagSetsMap allowing us to go from a SessionTag to the containing RatchetTagSet.private final Set<RatchetSessionTag> RatchetTagSet._registeredTagsTags registered in the SKM's _inboundTagSets map.private final SparseArray<RatchetSessionTag> RatchetTagSet._sessionTagsThe tags by index, resolved through this map.private final Map<RatchetSessionTag, Integer> RatchetTagSet._tagNumbersWhat each tag in _sessionTags is numbered by, so consume() can find a presented tag in constant time.Methods in net.i2p.router.crypto.ratchet that return RatchetSessionTagMethods in net.i2p.router.crypto.ratchet that return types with arguments of type RatchetSessionTagModifier and TypeMethodDescription(package private) Set<RatchetSessionTag> RatchetTagSet.getRegisteredTags()Return the set of tags registered in the SKM's _inboundTagSets map.Methods in net.i2p.router.crypto.ratchet with parameters of type RatchetSessionTagModifier and TypeMethodDescriptionbooleanRatchetSKM.addTag(RatchetSessionTag tag, RatchetTagSet ts) SessionTagListener: map the tag to this tagset.booleanSessionTagListener.addTag(RatchetSessionTag tag, RatchetTagSet ts) Map the tag to this tagset.RatchetTagSet.consume(RatchetSessionTag tag) Inbound only.SingleTagSet.consume(RatchetSessionTag tag) RatchetSKM.consumeTag(RatchetSessionTag tag) Determines whether a session key was received for the given session tag.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.private byte[]ECIESAEADEngine.encryptNewSessionReply(CloveSet cloves, PublicKey target, HandshakeState state, RatchetSessionTag currentTag, RatchetSKM keyManager, ReplyCallback callback) Scenario 2: New Session Reply MessagevoidRatchetSKM.expireTag(RatchetSessionTag tag, RatchetTagSet ts) Remove the tag associated with this tagset.voidSessionTagListener.expireTag(RatchetSessionTag tag, RatchetTagSet ts) Remove the tag associated with this tagset.voidMuxedPQSKM.tagsReceived(SessionKey key, RatchetSessionTag tag, long expire) EC only.voidMuxedSKM.tagsReceived(SessionKey key, RatchetSessionTag tag, long expire) EC only One time session.voidRatchetSKM.tagsReceived(SessionKey key, RatchetSessionTag tag, long expire) One time session.private CloveSetECIESAEADEngine.xx_decryptFast(byte[] tag, RatchetSessionTag st, SessionKeyAndNonce key, byte[] data, PrivateKey targetPrivateKey, RatchetSKM keyManager) NSR/ES only.Constructors in net.i2p.router.crypto.ratchet with parameters of type RatchetSessionTagModifierConstructorDescriptionRatchetEntry(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.Uses of RatchetSessionTag in net.i2p.router.message
Methods in net.i2p.router.message with parameters of type RatchetSessionTagModifier and TypeMethodDescriptionstatic GarlicMessageGarlicMessageBuilder.buildMessage(RouterContext ctx, GarlicConfig config, SessionKey encryptKey, RatchetSessionTag encryptTag) Ratchet only.Uses of RatchetSessionTag in net.i2p.router.networkdb.kademlia
Fields in net.i2p.router.networkdb.kademlia declared as RatchetSessionTagModifier and TypeFieldDescriptionfinal RatchetSessionTagMessageWrapper.OneTimeSession.rtagNon-null for ratchet.Methods in net.i2p.router.networkdb.kademlia with parameters of type RatchetSessionTagModifier and TypeMethodDescriptionstatic GarlicMessageMessageWrapper.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.Constructors in net.i2p.router.networkdb.kademlia with parameters of type RatchetSessionTagModifierConstructorDescriptionOneTimeSession(SessionKey key, RatchetSessionTag tag) Creates a new one-time session with a ratchet tag.Uses of RatchetSessionTag in net.i2p.router.tunnel.pool
Fields in net.i2p.router.tunnel.pool declared as RatchetSessionTagModifier and TypeFieldDescriptionprivate RatchetSessionTagTestJob._ratchetEncryptTagSession tag for the ratchet test message.