Package net.i2p.router.crypto.ratchet
Implementation of ECIES-X25519-AEAD-Ratchet (proposal 144). Since 0.9.44. Subject to change, not a public API, not for external use.
-
Interface Summary Interface Description RatchetPayload.PayloadCallback For all callbacks, recommend throwing exceptions only from the handshake.ReplyCallback ECIES will call this back if an ack was requested and received.SessionTagListener Something that looks for SessionTags. -
Class Summary Class Description ACKTimer Send an empty message if the timer expires.ArrayUtils ArrayUtils contains some methods that you can call to find out the most efficient increments by which to grow arrays.ContainerHelpers ECIESAEADEngine Handles the actual ECIES+AEAD encryption and decryption scenarios using the supplied keys and data.Elg2KeyFactory Elligator2 for X25519 keys.Elg2KeyPair X25519 keys, with the public key Elligator2 encoding pre-calculatedElligator2 Elligator2 for X25519 keys.GrowingArrayUtils A helper class that aims to provide comparable growth performance to ArrayList, but on primitive arrays.MuxedEngine Handles the actual decryption using the supplied keys and data.MuxedSKM Both.NextSessionKey A X25519 key and key ID.RatchetEntry Simple object with outbound tag, key, and nonce, and an optional next keys.RatchetPayload Ratchet payload generation and parsingRatchetPayload.AckBlock RatchetPayload.AckRequestBlock RatchetPayload.Block Base class for blocks to be transmitted.RatchetPayload.DateTimeBlock RatchetPayload.GarlicBlock RatchetPayload.NextKeyBlock RatchetPayload.OptionsBlock RatchetPayload.PaddingBlock RatchetPayload.PNBlock RatchetPayload.TerminationBlock RatchetSessionTag 8 bytes of random data.RatchetSKM RatchetTagSet A tagset class for one direction, either inbound or outbound.SessionKeyAndNonce A session key is 32 bytes of data.SingleTagSet Inbound ES tagset with a single tag and key.SparseArray<E> SparseArray
maps integers to Objects and, unlike a normal array of Objects, its indices can contain gaps.SplitKeys Standard Noise split().