# Uses of Package
net.i2p.crypto

- Packages that use net.i2p.crypto
  Package | Description
  --- | ---
  com.southernstorm.noise.protocol | Provides classes for communicating via the Noise protocol.
  net.i2p | Core I2P package providing fundamental interfaces, version information, and entry points to essential I2P services.
  net.i2p.client | Interfaces and factories for the base I2P SDK used to develop applications that communicate through I2P.
  net.i2p.client.impl | Internal implementation of the I2P client SDK, providing the client side of the I2CP protocol for applications communicating through I2P.
  net.i2p.crypto | Core cryptographic primitives and algorithms used throughout I2P.
  net.i2p.data | These classes define the common data structures used by the various I2P protocols.
  net.i2p.data.i2cp | The Invisible Internet Client Protocol (I2CP) allows applications simplified access to I2P network without requiring them to deal with the issues involved with the Invisible Internet Network Protocol (I2NP).
  net.i2p.i2ptunnel | Implementation of preconfigured tunnels for both clients and servers, with a comprehensive UI for tunnel management and configuration.
  net.i2p.router | The I2P router application handles I2P network communication.
  net.i2p.router.client | Router-side implementation of the I2CP (I2P Client Protocol) interface for application integration.
  net.i2p.router.crypto | Router-specific cryptographic operations and implementations for I2P security.
  net.i2p.router.crypto.pqc | Post-quantum cryptographic algorithms for I2P.
  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.
  net.i2p.router.dummy | Dummy implementations and stub classes for testing purposes.
  net.i2p.router.message | Garlic message creation, parsing, and source routing for I2P communications.
  net.i2p.router.networkdb.kademlia | Kademlia DHT implementation and floodfill router functionality for I2P.
  net.i2p.router.startup | The I2P startup package loads configuration when I2P is started.
  net.i2p.router.transport.crypto | Cryptographic operations for I2P transport protocols, including key exchange algorithms, session key management, and transport-layer encryption.
  net.i2p.router.web.helpers | Helpers and handlers for the router console user interface, with these classes supporting the webapp in routerconsole.war.
  net.i2p.sam | The SAM (Simple Anonymous Messaging) client API.
  net.i2p.util | Core utility classes and helper functions used throughout the I2P router and applications.
  org.klomp.snark.dht | Distributed Hash Table (DHT) implementation for BitTorrent.

- Classes in net.i2p.crypto used by com.southernstorm.noise.protocol
  Class and Description
  KeyFactory Factory interface for generating I2P cryptographic key pairs.

- Classes in net.i2p.crypto used by net.i2p
  Class and Description
  AESEngine Abstract base class for AES cipher operations in I2P.
  DSAEngine Digital signature algorithm engine supporting DSA, ECDSA, RSA, and EdDSA.
  ElGamalEngine Deprecated. Use modern encryption schemes such as ECIES when available
  HMAC256Generator HMAC-SHA256 message authentication code generator for I2P cryptographic operations.
  KeyGenerator Comprehensive key generation facility for I2P cryptographic operations.
  SessionKeyManager Manage the session keys and session tags used for encryption and decryption.
  SHA256Generator Defines a wrapper for SHA-256 operation.

- Classes in net.i2p.crypto used by net.i2p.client
  Class and Description
  SigType Defines the properties for various signature types that I2P supports or may someday support.

- Classes in net.i2p.crypto used by net.i2p.client.impl
  Class and Description
  SigType Defines the properties for various signature types that I2P supports or may someday support.

- Classes in net.i2p.crypto used by net.i2p.crypto
  Class and Description
  AESEngine Abstract base class for AES cipher operations in I2P.
  CryptixAESKeyCache.KeyCacheEntry Deprecated. This class is part of a deprecated caching mechanism. Keys are now cached directly in SessionKey objects for better performance.
  DSAEngine Digital signature algorithm engine supporting DSA, ECDSA, RSA, and EdDSA.
  EncAlgo Base encryption algorithm type
  EncType Defines the properties for various encryption types that I2P supports or may someday support.
  HMACGenerator Abstract base class for HMAC (Hash-based Message Authentication Code) operations.
  KeyGenerator Comprehensive key generation facility for I2P cryptographic operations.
  KeyPair A pair of I2P cryptographic keys consisting of a public key and corresponding private key.
  KeyRing A backend for storing and retrieving SigningPublicKeys to be used for verifying signatures.
  RSASigningPrivateCrtKey A SigningPrivateKey that retains the Chinese Remainder Theorem parameters, so it can be converted back to a Java CRT key.
  SHA1Hash I2P data structure for SHA-1 hash values.
  SHA256Generator Defines a wrapper for SHA-256 operation.
  SigAlgo Base signature algorithm type
  SigContext Defines the context for signing with personalized hashes.
  SigContext.SigContextSpec Algorithm parameter specification for personalized hash contexts in digital signatures.
  SigType Defines the properties for various signature types that I2P supports or may someday support.
  TagSetHandle An opaque handle to a TagSet returned by the SessionKeyManager, so that OCMOSJ can report that the tags were later acked, or not.

- Classes in net.i2p.crypto used by net.i2p.data
  Class and Description
  EncType Defines the properties for various encryption types that I2P supports or may someday support.
  SigType Defines the properties for various signature types that I2P supports or may someday support.

- Classes in net.i2p.crypto used by net.i2p.data.i2cp
  Class and Description
  SigType Defines the properties for various signature types that I2P supports or may someday support.

- Classes in net.i2p.crypto used by net.i2p.i2ptunnel
  Class and Description
  SigType Defines the properties for various signature types that I2P supports or may someday support.

- Classes in net.i2p.crypto used by net.i2p.router
  Class and Description
  EncType Defines the properties for various encryption types that I2P supports or may someday support.
  SessionKeyManager Manage the session keys and session tags used for encryption and decryption.

- Classes in net.i2p.crypto used by net.i2p.router.client
  Class and Description
  SessionKeyManager Manage the session keys and session tags used for encryption and decryption.

- Classes in net.i2p.crypto used by net.i2p.router.crypto
  Class and Description
  SessionKeyManager Manage the session keys and session tags used for encryption and decryption.
  TagSetHandle An opaque handle to a TagSet returned by the SessionKeyManager, so that OCMOSJ can report that the tags were later acked, or not.

- Classes in net.i2p.crypto used by net.i2p.router.crypto.pqc
  Class and Description
  EncType Defines the properties for various encryption types that I2P supports or may someday support.
  KeyFactory Factory interface for generating I2P cryptographic key pairs.
  KeyPair A pair of I2P cryptographic keys consisting of a public key and corresponding private key.

- Classes in net.i2p.crypto used by net.i2p.router.crypto.ratchet
  Class and Description
  EncType Defines the properties for various encryption types that I2P supports or may someday support.
  HKDF HMAC-based Key Derivation Function (HKDF) implementation using HMAC-SHA256.
  KeyFactory Factory interface for generating I2P cryptographic key pairs.
  KeyPair A pair of I2P cryptographic keys consisting of a public key and corresponding private key.
  SessionKeyManager Manage the session keys and session tags used for encryption and decryption.
  TagSetHandle An opaque handle to a TagSet returned by the SessionKeyManager, so that OCMOSJ can report that the tags were later acked, or not.

- Classes in net.i2p.crypto used by net.i2p.router.dummy
  Class and Description
  SessionKeyManager Manage the session keys and session tags used for encryption and decryption.

- Classes in net.i2p.crypto used by net.i2p.router.message
  Class and Description
  SessionKeyManager Manage the session keys and session tags used for encryption and decryption.

- Classes in net.i2p.crypto used by net.i2p.router.networkdb.kademlia
  Class and Description
  SessionKeyManager Manage the session keys and session tags used for encryption and decryption.
  SigType Defines the properties for various signature types that I2P supports or may someday support.
  TagSetHandle An opaque handle to a TagSet returned by the SessionKeyManager, so that OCMOSJ can report that the tags were later acked, or not.

- Classes in net.i2p.crypto used by net.i2p.router.startup
  Class and Description
  EncType Defines the properties for various encryption types that I2P supports or may someday support.
  SigType Defines the properties for various signature types that I2P supports or may someday support.

- Classes in net.i2p.crypto used by net.i2p.router.transport.crypto
  Class and Description
  KeyFactory Factory interface for generating I2P cryptographic key pairs.
  KeyPair A pair of I2P cryptographic keys consisting of a public key and corresponding private key.

- Classes in net.i2p.crypto used by net.i2p.router.web.helpers
  Class and Description
  EncType Defines the properties for various encryption types that I2P supports or may someday support.
  SigType Defines the properties for various signature types that I2P supports or may someday support.

- Classes in net.i2p.crypto used by net.i2p.sam
  Class and Description
  SigType Defines the properties for various signature types that I2P supports or may someday support.

- Classes in net.i2p.crypto used by net.i2p.util
  Class and Description
  EntropyHarvester Allow various components with some entropy to feed that entropy back into some PRNG.

- Classes in net.i2p.crypto used by org.klomp.snark.dht
  Class and Description
  SHA1Hash I2P data structure for SHA-1 hash values.