Top Description Interfaces Classes Enums
[default module]

Package org.bouncycastle.crypto.general


Classes for general encryption algorithms and non-FIPS approved variants.

Interface Summary

Modifier and TypeInterface and Description
pack-priv interface
DRBG

Interface to SP800-90A/X9.31 deterministic random bit generators.

pack-priv interface
DsaKCalculator

Interface defining calculators of K values for DSA/ECDSA.

Class Summary

Modifier and TypeClass and Description
public class
AES

Source class for non-FIPS approved-mode implementations of AES based algorithms.

public class
ARC4

Source class for implementations of ARC4 based algorithms.

pack-priv class
public class
Blowfish

Source class for implementations of Blowfish based algorithms.

pack-priv class
BlowfishEngine

A class that provides Blowfish key encryption operations, such as encoding data and generating keys.

public class
Camellia

Source class for implementations of Camellia based algorithms.

pack-priv class
CamelliaEngine

Camellia - based on RFC 3713.

public class
CAST5

Source class for implementations of CAST5 based algorithms.

pack-priv class
CAST5Engine

A class that provides CAST key encryption operations, such as encoding data and generating keys.

public class
ChaCha20

Source class for implementations of ChaCha20 based algorithms.

pack-priv class
ChaCha7539Engine

Implementation of Daniel J.

pack-priv class
CipherKeyGenerator

The base class for symmetric, or secret, cipher key generators.

pack-priv class
pack-priv class
pack-priv class
public class
DES

Source class for implementations of DES based algorithms.

pack-priv class
DesEdeWrapEngine

Wrap keys according to RFC 3217.

pack-priv class
DesEngine

a class that provides a basic DES engine.

pack-priv class
public class
DSA

Source class for non-FIPS implementations of DSA based algorithms.

pack-priv class
DsaKeyPairGenerator

a DSA key pair generator.

pack-priv class
pack-priv class
pack-priv class
DsaParametersGenerator

Generate suitable parameters for DSA, in line with FIPS 186-2, or FIPS 186-3.

pack-priv class
DsaSigner

The Digital Signature Algorithm - as described in "Handbook of Applied Cryptography", pages 452 - 453.

pack-priv class
public class
DSTU4145

Source class for implementations of DSTU4145 based algorithms.

pack-priv class
pack-priv class
DSTU4145Signer

DSTU 4145-2002

National Ukrainian standard of digital signature based on elliptic curves (DSTU 4145-2002).

public class
EC

Source class for non-FIPS implementations of Elliptic Curve based algorithms.

pack-priv class
EcDsaSigner

EC-DSA as described in X9.62

public class
ECGOST3410

Source class for implementations of ECGOST3410 based algorithms.

pack-priv class
EcGost3410Signer

GOST R 34.10-2001 Signature Algorithm

pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
public class
EdEC

Source class for implementations of Edwards Elliptic Curve based algorithms.

public class
ElGamal

Source class for implementations of ElGamal based algorithms.

pack-priv class
ElGamalEngine

this does your basic ElGamal algorithm.

pack-priv class
pack-priv class
pack-priv class
pack-priv class
public class
FipsRegister

Local register that provides access to engines for FIPS algorithms for use with general/non-FIPS-approved modes of use.

public class
GeneralAlgorithm

Base class for the marker/algorithm ids for non-FIPS algorithms.

public abstract class
GeneralAuthParameters<
the actual parameters type that extends this class.
T extends GeneralAuthParameters
>

Base class for parameter classes for algorithms allow for authentication using MACs.

public class
GeneralDigestAlgorithm

Marker class for a digest algorithm

public class
GeneralParameters<
the algorithm associated with this parameter set (may actually be a FIPS one).
T extends Algorithm
>

The base class for parameter classes for non-FIPS algorithms.

public abstract class
GeneralParametersWithIV<
the actual parameters type that extends this class.
T extends GeneralParameters<T extends Algorithm>
>

Base class for parameter classes for algorithms that require an initialization vector or nonce.

public class
GeneralSecureRandom

Base class for DRBG/RNG SecureRandom implementations that use non-FIPS approved algorithms.

public class
GOST28147

Source class for implementations of GOST28147 based algorithms.

pack-priv class
GOST28147Engine

implementation of GOST 28147-89

pack-priv class
GOST28147Mac

implementation of GOST 28147-89 MAC

pack-priv class
public class
GOST3410

Source class for implementations of GOST3410 based algorithms.

pack-priv class
pack-priv class
Gost3410KeyPairGenerator

a GOST3410 key pair generator.

pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
Gost3410Signer

GOST R 34.10-94 Signature Algorithm

pack-priv class
GOST3411Digest

implementation of GOST R 34.11-94

pack-priv abstract class
pack-priv abstract class
pack-priv abstract class
pack-priv abstract class
pack-priv abstract class
pack-priv abstract class
pack-priv abstract class
pack-priv abstract class
pack-priv abstract class
pack-priv abstract class
pack-priv abstract class
pack-priv abstract class
pack-priv abstract class
pack-priv abstract class
pack-priv class
HMacDsaKCalculator

A deterministic K calculator based on the algorithm in section 3.2 of RFC 6979.

public class
IDEA

Source class for implementations of IDEA based algorithms.

pack-priv class
IDEAEngine

A class that provides a basic International Data Encryption Algorithm (IDEA) engine.

pack-priv class
pack-priv class
pack-priv class
ISO9797Alg3Mac

DES based CBC Block Cipher MAC according to ISO9797, algorithm 3 (ANSI X9.19 Retail MAC) This could as well be derived from CBCBlockCipherMac, but then the property mac in the base class must be changed to protected

public class
KDF

Source class for non-FIPS key derivation functions (KDF).

pack-priv class
MD5Digest

implementation of MD5 as outlined in "Handbook of Applied Cryptography", pages 346 - 347.

pack-priv class
pack-priv class
OpenSSLPBEParametersGenerator<T extends Parameters>

Generator for PBE derived keys and ivs as usd by OpenSSL.

public class
OperationError

Base error class for errors that occur in the general classes.

public class
PBKD

Source class for implementations of Password-Based Key Derivation Algorithms

pack-priv class
PKCS12ParametersGenerator<T extends Parameters>

Generator for PBE derived keys and ivs as defined by PKCS 12 V1.0.

pack-priv class
PKCS5S1ParametersGenerator<T extends Parameters>

Generator for PBE derived keys and ivs as defined by PKCS 5 V2.0 Scheme 1.

pack-priv class
PKCS5S2ParametersGenerator<T extends Parameters>

Generator for PBE derived keys and ivs as defined by PKCS 5 V2.0 Scheme 2.

public class
pack-priv class
Poly1305Impl

Poly1305 message authentication code, designed by D.

pack-priv class
Poly1305KeyGenerator

Generates keys for the Poly1305 MAC.

pack-priv class
pack-priv class
public class
RC2

Source class for implementations of RC2 based algorithms.

pack-priv class
RC2Engine

an implementation of RC2 as described in RFC 2268 "A Description of the RC2(r) Encryption Algorithm" R. Rivest.

pack-priv class
pack-priv class
RC2WrapEngine

Wrap keys according to RFC 3217 - RC2 mechanism

pack-priv class
pack-priv class
RFC3211WrapEngine

an implementation of the RFC 3211 Key Wrap Specification.

pack-priv class
RIPEMD128Digest

implementation of RIPEMD128

pack-priv class
RIPEMD160Digest

implementation of RIPEMD see, http://www.esat.kuleuven.ac.be/~bosselae/ripemd160.html

pack-priv class
RIPEMD256Digest

implementation of RIPEMD256.

pack-priv class
RIPEMD320Digest

implementation of RIPEMD 320.

public class
RSA

Source class for non-FIPS implementations of RSA based algorithms.

pack-priv class
pack-priv class
Salsa20Engine

Implementation of Daniel J.

pack-priv class
SCryptImpl

Implementation of the scrypt a password-based key derivation function.

public class
SecureHash

Source class for implementations of non-FIPS secure hash algorithms.

public class
SEED

The SEED encryption algorithm as described in RFC 4269.

pack-priv class
SEEDEngine

Implementation of the SEED algorithm as described in RFC 4009

pack-priv class
public class
Serpent

The Serpent encryption algorithm.

pack-priv class
SerpentEngine

Serpent is a 128-bit 32-round block cipher with variable key lengths, including 128, 192 and 256 bit keys conjectured to be at least as secure as three-key triple-DES.

pack-priv abstract class
public class
SHACAL2

The SHACAL-2 encryption algorithm.

pack-priv class
Shacal2Engine

Block cipher Shacal2, designed by Helena Handschuh and David Naccache, based on hash function SHA-256, using SHA-256-Initialization-Values as data and SHA-256-Data as key.

public class
SipHash

Source class for implementations of SipHash based algorithms

pack-priv class
SipHashEngine

Implementation of SipHash as specified in "SipHash: a fast short-input PRF", by Jean-Philippe Aumasson and Daniel J.

pack-priv class
public class
TripleDES

Source class for non-FIPS approved-mode implementations of TripleDES based algorithms.

public class
Twofish

Source class for implementations of Twofish based algorithms.

pack-priv class
TwofishEngine

A class that provides Twofish encryption operations.

pack-priv class
pack-priv abstract class
pack-priv class
WhirlpoolDigest

Implementation of WhirlpoolDigest, based on Java source published by Barreto and Rijmen.

pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
public class
X931PRNG

Source class for implementations of Pseudo Random Number Generator (PRNG) from X9.31

pack-priv class
pack-priv class
pack-priv class
X931Signer

X9.31-1998 - signing using a hash.

Enum Summary

Modifier and TypeEnum and Description
pack-priv enum
pack-priv enum