These classes provide a number of low-level cryptographic routines.
These cryptographic routines include symmetric and asymmetric encryption and decryption, hashing, secure random number generation...
| Interface | Description |
|---|---|
| EntropyHarvester |
Allow various components with some entropy to feed that entropy back
into some PRNG.
|
| 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 |
Dummy wrapper for AES cipher operation.
|
| CertUtil |
Java X.509 certificate utilities, consolidated from various places.
|
| CryptixAESEngine |
Wrapper for AES cypher operation using Cryptix's Rijndael implementation.
|
| CryptixAESKeyCache |
Cache the objects used in CryptixRijndael_Algorithm.makeKey to reduce
memory churn.
|
| CryptixAESKeyCache.KeyCacheEntry |
all the data alloc'ed in a makeKey call
|
| CryptixRijndael_Algorithm |
Rijndael --pronounced Reindaal-- is a variable block-size (128-, 192- and
256-bit), variable key-size (128-, 192- and 256-bit) symmetric cipher.
|
| CryptoCheck |
Moved from CryptixAESEngine and net.i2p.router.tasks.CryptoChecker.
|
| CryptoConstants |
Prime for ElGamal from http://tools.ietf.org/html/rfc3526
Primes for DSA: Generated by TheCrypto http://article.gmane.org/gmane.comp.security.invisiblenet.iip.devel/343
See also: ECConstants, RSAConstants
|
| DirKeyRing |
Simple storage of each cert in a separate file in a directory.
|
| DSAEngine |
Sign and verify using DSA-SHA1 and other signature algorithms.
|
| ECConstants |
Constants for elliptic curves, from NIST FIPS 186-4 (2013) / ANSI X9.62
|
| ECUtil |
Used by KeyGenerator.getSigningPublicKey()
Modified from
http://stackoverflow.com/questions/15727147/scalar-multiplication-of-point-over-elliptic-curve
Apparently public domain.
|
| ElGamalAESEngine |
Handles the actual ElGamal+AES encryption and decryption scenarios using the
supplied keys and data.
|
| ElGamalEngine |
Wrapper for ElGamal encryption/signature schemes.
|
| Hash384 |
48 byte hash
|
| Hash512 |
64 byte hash
|
| HMAC256Generator |
Calculate the HMAC-SHA256 of a key+message.
|
| HMACGenerator |
Calculate the HMAC-MD5-128 of a key+message.
|
| KeyGenerator |
Define a way of generating asymmetrical key pairs as well as symmetrical keys
|
| 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 |
NOTE: As of 0.8.7, use getInstance() instead of new SHA1(), which will
return the JVM's MessageDigest if it is faster.
|
| SHA1Hash |
Because DSAEngine was abusing Hash for 20-byte hashes
|
| SHA256Generator |
Defines a wrapper for SHA-256 operation.
|
| SigUtil |
Utilities for Signing keys and Signatures
|
| SipHashInline |
SipHash implementation with hand inlining the SIPROUND.
|
| SU3File |
Succesor to the ".sud" format used in TrustedUpdate.
|
| TrustedUpdate |
Handles DSA signing and verification of update files.
|
| YKGenerator |
Precalculate the Y and K for ElGamal encryption operations.
|
| Enum | Description |
|---|---|
| EncAlgo |
PRELIMINARY - unused - subject to change
Base encryption algorithm type
|
| EncType |
PRELIMINARY - unused - subject to change
Defines the properties for various encryption types
that I2P supports or may someday support.
|
| SigAlgo |
Base signature algorithm type
|
| SigType |
Defines the properties for various signature types
that I2P supports or may someday support.
|