Packages that use ReplyCallback
Package
Description
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.
Uses of ReplyCallback in net.i2p.router.crypto.ratchet
Fields in net.i2p.router.crypto.ratchet declared as ReplyCallbackModifier and TypeFieldDescriptionprivate ReplyCallbackRatchetSKM.OutboundSession._NScallbackCallback for an NS reply.private ReplyCallbackRatchetSKM.OutboundSession._NSRcallbackCallback for an NSR reply.Fields in net.i2p.router.crypto.ratchet with type parameters of type ReplyCallbackModifier and TypeFieldDescriptionprivate final ConcurrentHashMap<Integer, ReplyCallback> RatchetSKM.OutboundSession._callbacksReply callbacks by tag id.Methods in net.i2p.router.crypto.ratchet with parameters of type ReplyCallbackModifier and TypeMethodDescription(package private) booleanRatchetSKM.createSession(PublicKey target, Destination d, HandshakeState state, ReplyCallback callback) Inbound or outbound.byte[]ECIESAEADEngine.encrypt(CloveSet cloves, PublicKey target, Destination to, PrivateKey priv, RatchetSKM keyManager, ReplyCallback callback) 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.private byte[]ECIESAEADEngine.encryptExistingSession(CloveSet cloves, PublicKey target, RatchetEntry re, ReplyCallback callback, RatchetSKM keyManager) Scenario 3: Existing Session Message.private byte[]ECIESAEADEngine.encryptNewSession(CloveSet cloves, PublicKey target, Destination to, PrivateKey priv, RatchetSKM keyManager, ReplyCallback callback) Scenario 1: New Session Messageprivate byte[]ECIESAEADEngine.encryptNewSessionReply(CloveSet cloves, PublicKey target, HandshakeState state, RatchetSessionTag currentTag, RatchetSKM keyManager, ReplyCallback callback) Scenario 2: New Session Reply MessagevoidRatchetSKM.OutboundSession.registerCallback(int id, int n, ReplyCallback callback) Register the callback to run when the ACK for one ratchet tag arrives; a live callback for the same tag is not replaced.(package private) voidRatchetSKM.registerCallback(PublicKey target, int id, int n, ReplyCallback callback) ACKS: Register a callback for an ACK.(package private) voidRatchetSKM.OutboundSession.updateSession(HandshakeState state, ReplyCallback callback, SplitKeys split) Inbound or outbound.(package private) booleanRatchetSKM.updateSession(PublicKey target, HandshakeState oldState, HandshakeState state, ReplyCallback callback, SplitKeys split) Inbound or outbound.private byte[]ECIESAEADEngine.x_encrypt(CloveSet cloves, PublicKey target, Destination to, PrivateKey priv, RatchetSKM keyManager, ReplyCallback callback) Encrypt the cloves to the target, selecting New Session, New Session Reply, or Existing Session encryption as appropriate.Constructors in net.i2p.router.crypto.ratchet with parameters of type ReplyCallbackModifierConstructorDescriptionOutboundSession(PublicKey target, Destination d, SessionKey key, HandshakeState state, ReplyCallback callback) Outbound session for the given target.Uses of ReplyCallback in net.i2p.router.message
Classes in net.i2p.router.message that implement ReplyCallbackModifier and TypeClassDescriptionprivate classFor ECIES only.Methods in net.i2p.router.message with parameters of type ReplyCallbackModifier and TypeMethodDescription(package private) static GarlicMessageGarlicMessageBuilder.buildECIESMessage(RouterContext ctx, GarlicConfig config, Hash from, Destination to, SessionKeyManager skm, ReplyCallback callback) ECIES_X25519 and PQ only.(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) Build a garlic message that will be delivered to the router on which the target is located.