See: Description
| Interface | Description |
|---|---|
| EntropyHarvester | Allow various components with some entropy to feed that entropy back
into some PRNG. |
| KeyFactory | Factory interface for generating I2P cryptographic key pairs. |
| KeyRing | A backend for storing and retrieving SigningPublicKeys
to be used for verifying signatures. |
| TagSetHandle | An opaque handle to a TagSet returned by the SessionKeyManager,
so that OCMOSJ can report that the tags were later acked, or not. |
| Class | Description |
|---|---|
| AESEngine | Abstract base class for AES cipher operations in I2P. |
| Blinding | Utilities for Blinding EdDSA keys. |
| CertUtil | Java X.509 certificate utilities, consolidated from various places. |
| ChaCha20 | ChaCha20, wrapper around Noise ChaChaCore. |
| CryptixAESEngine | AES encryption engine using Cryptix's Rijndael implementation with CBC mode. |
| CryptixAESKeyCache | CryptixAESKeyCache. |
| CryptixAESKeyCache.KeyCacheEntry | Container for AES round keys generated during key schedule expansion. |
| CryptixRijndael_Algorithm | Rijndael AES algorithm implementation. |
| CryptoCheck | CryptoCheck. |
| CryptoConstants | CryptoConstants. |
| DirKeyRing | DirKeyRing Implements KeyRing. |
| DSAEngine | Digital signature algorithm engine supporting DSA, ECDSA, RSA, and EdDSA. |
| ECConstants | Constants for elliptic curves, from NIST FIPS 186-4 (2013) / ANSI X9.62 |
| ECUtil | Elliptic curve utility functions for cryptographic operations. |
| ElGamalEngine | ElGamal cryptographic engine for I2P encryption and signature operations. |
| Hash384 | SHA-384 secure hash algorithm implementation. |
| Hash512 | SHA-512 secure hash algorithm implementation. |
| HKDF | HMAC-based Key Derivation Function (HKDF) implementation using HMAC-SHA256. |
| HMAC256Generator | HMAC-SHA256 message authentication code generator for I2P cryptographic operations. |
| HMAC256Generator.HMACKey | Performance-optimized SecretKey implementation for HMAC operations. |
| 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. |
| KeyStoreUtil | Keystore utilities, consolidated from various places. |
| RSAConstants | Constants for RSA |
| RSASigningPrivateCrtKey | A SigningPrivateKey that retains the Chinese Remainder Theorem
parameters, so it can be converted back to a Java CRT key. |
| SelfSignedGenerator | Generate keys and a selfsigned certificate, suitable for
storing in a Keystore with KeyStoreUtil.storePrivateKey(). |
| SessionKeyManager | Manage the session keys and session tags used for encryption and decryption. |
| SHA1 | Implementation of the SHA-1 secure hash algorithm as specified in FIPS PUB 180-2. |
| SHA1Hash | I2P data structure for SHA-1 hash values. |
| SHA256Generator | Defines a wrapper for SHA-256 operation. |
| SigContext.SigContextSpec | Algorithm parameter specification for personalized hash contexts in digital signatures. |
| SigUtil | Comprehensive utility class for I2P signing keys and digital signatures. |
| SipHashInline | SipHash implementation with hand inlining the SIPROUND. |
| SU3File | I2P update file format handler for .su3 files. |
| TrustedUpdate | Handles signing and verification of I2P update files. |
| YKGenerator | Precalculate the Y and K for ElGamal encryption operations. |
| Enum | Description |
|---|---|
| EncAlgo | Base encryption algorithm type |
| EncType | Defines the properties for various encryption types
that I2P supports or may someday support. |
| SigAlgo | Base signature algorithm type |
| SigContext | Defines the context for signing with personalized hashes. |
| SigType | Defines the properties for various signature types
that I2P supports or may someday support. |
Core cryptographic primitives and algorithms used throughout I2P.
This package provides the fundamental cryptographic building blocks for I2P's security and privacy features, including:
All cryptographic operations are designed to provide strong security guarantees while maintaining performance suitable for high-throughput routing operations. The implementation follows established cryptographic standards and best practices.
Note: This package contains low-level cryptographic primitives. For higher-level I2P-specific cryptographic operations, see the net.i2p.crypto.eddsa and net.i2p.crypto.x25519 packages.