## Uses of Class
net.i2p.router.crypto.ratchet.RatchetSKM

- Packages that use RatchetSKM
  Package | Description
  --- | ---
  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.

- - ### Uses of RatchetSKM in net.i2p.router.crypto.ratchet

    Methods in net.i2p.router.crypto.ratchet that return RatchetSKM
    Modifier and Type | Method and Description
    --- | ---
    `RatchetSKM` | MuxedPQSKM.`getECSKM()`
    `RatchetSKM` | MuxedSKM.`getECSKM()`
    `RatchetSKM` | MuxedPQSKM.`getPQSKM()`

    Methods in net.i2p.router.crypto.ratchet with parameters of type RatchetSKM
    Modifier and Type | Method and Description
    --- | ---
    `CloveSet` | ECIESAEADEngine.`decrypt(byte[] data, PrivateKey targetPrivateKey, RatchetSKM keyManager)` Decrypt the message using the given private key and using tags from the specified key manager.
    `(package private) CloveSet` | ECIESAEADEngine.`decryptFast(byte[] data, PrivateKey targetPrivateKey, RatchetSKM keyManager)` NSR/ES only.
    `(package private) CloveSet` | ECIESAEADEngine.`decryptSlow(byte[] data, PrivateKey targetPrivateKey, RatchetSKM keyManager)` NS only.
    `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.

    Constructors in net.i2p.router.crypto.ratchet with parameters of type RatchetSKM
    Constructor and Description
    `MuxedPQSKM(RatchetSKM ec, RatchetSKM pq)`
    `MuxedSKM(TransientSessionKeyManager elg, RatchetSKM ec)`