Package net.i2p.crypto

These classes provide a number of low-level cryptographic routines.

See:
          Description

Interface Summary
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 Summary
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.
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.
ElGamalParameterSpec Copied from org.bouncycastle.jce.spec This can't actually be passed to the BC provider, we would have to use reflection to create a "real" org.bouncycasle.jce.spec.ElGamalParameterSpec.
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
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
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 Summary
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.
 

Package net.i2p.crypto Description

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...