All Classes and Interfaces
Class
Description
Base decoder class for encoding schemes described in RFC 3548.
Base encoder class for encoding schemes described in RFC 3548.
Base class for all cipher beans that use block cipher.
Base class for all cipher beans.
Abstract base class for password-based encryption schemes based on salt data and iterated hashing as the basis of the
key derivation function.
Abstract base class for all hash beans.
Base class for all private key decoders.
AbstractWrappedDSAKey<T extends org.bouncycastle.crypto.params.DSAKeyParameters>
Base class for DSA wrapped keys.
AbstractWrappedECKey<T extends org.bouncycastle.crypto.params.ECKeyParameters>
Base class for wrapped EC keys.
AbstractWrappedKey<T extends org.bouncycastle.crypto.params.AsymmetricKeyParameter>
JCE/JDK key base class that wraps a BC native private key.
AbstractWrappedRSAKey<T extends org.bouncycastle.crypto.params.RSAKeyParameters>
Base class for RSA wrapped keys.
Adapts a
AEADBlockCipherAdapter
.Cipher bean that performs encryption with a block cipher in AEAD mode (e.g.
Describes an AEAD block cipher in terms of a (algorithm, mode) tuple and provides a facility to create a new instance
of the cipher via the
AEADBlockCipherSpec.newInstance()
method.Strategy interface for converting encoded ASN.1 bytes to an object.
Simple implementation of the X.501 AttributeTypeAndValue that makes up the RelativeDistinguishedName type described
in section 4.1.2.4 of RFC 2459.
Ordered list of
Attribute
s.Describes values of AttributeType that may appear in a RelativeDistinguishedName (RDN) as defined in section 2 of RFC
2253.
Base 32 encoder/decoder pair.
Stateful base 32 decoder with support for line breaks.
Stateful base 32 encoder with support for configurable line breaks.
Base 64 encoder/decoder pair.
Stateful base 64 decoder with support for line breaks.
Builder for base-64 decoders.
Stateful base 64 encoder with support for configurable line breaks.
Builder for base-64 encoders.
HashBean
implementation that uses the bcrypt algorithm for hashing.Handles encoding and decoding a bcrypt hash of the form
$2n$cost$xxxxxxxxxxxxxxxxxxxxxxxxyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
.Uses a
BigInteger
to back a counter in order to produce nonces of arbitrary length.Adapter for all block cipher types.
Block cipher specification.
Adapts a
BufferedBlockCipher
.Cipher bean that performs symmetric encryption/decryption using a standard block cipher in a standard mode (e.g.
Describes a block cipher in terms of a (algorithm, mode, padding) tuple and provides a facility to create a new
instance of the cipher via the
BufferedBlockCipherSpec.newInstance()
method.Utilities for working with bytes.
Utility class providing convenience methods for common operations on X.509 certificates.
Callback interface that supports arbitrary processing of data chunks read from an input stream.
Provides a consistent interface for cipher operations against dissimilar BC cipher types.
Bean that performs encryption/decryption using a symmetric cipher.
Deprecated.
Cleartext header prepended to ciphertext providing data required for decryption.
Utility class that performs encryption and decryption operations using a block cipher.
Resource that produces a
InputStream
from a classpath resource.Container for an encoder/decoder pair.
Describes a string-to-byte encoding provides a means to create a new instance of the coed via the
CodecSpec.newInstance()
method.Utility class for common encoding conversions.
Static factory with methods to convert from BC type to the corresponding JCE type.
Deterministic nonce generation strategy that uses a counter for the invocation field as described in NIST SP-800-38D, section 8.2.1.
Runtime error describing a generic cryptographic problem (e.g.
Describes a potentially stateful character-to-byte decoder.
Filters read bytes through a
Decoder
such that consumers obtain raw (decoded) bytes from read operations.Describes a message digest function by name and provides a means to create a new instance of the digest via the
DigestSpec.newInstance()
method.Extends
ByteArrayOutputStream
by allowing direct access to the internal byte buffer.Describes a potentially stateful byte-to-character encoder.
Runtime error describing an encoding problem of a cryptographic primitive (e.g.
Computes a hash in an encoded format, e.g.
Filters written bytes through an
Encoder
such that encoded data is written to the underlying output stream.Nonce generation strategy that produces a random value according to NIST
SP-800-38a, appendix C, method 1 (encrypted nonce), suitable for use with any block cipher mode described in that
standard except OFB.
Describes a password-based encryption scheme.
Reads X.509v3 extended properties from an
X509Certificate
object.Enumeration of X.509v3 extension fields defined in section 4.2 of RFC 2459.
Factory bean strategy interface.
Resource that produces a buffered
FileInputStream
from a file.Representation of the options in the CHOICE element describing various categories of the
GeneralName
type defined in section 4.2.1.7 of RFC 2459.Strategy interface to support beans that produce hash outputs in various formats, e.g.
Utility class for computing cryptographic hashes.
Hexadecimal encoder/decoder pair.
Stateful hexadecimal character-to-byte decoder.
Stateless hexadecimal byte-to-character encoder.
OTP generator component that implements the HOTP scheme described in
RFC 4226.
Generation strategy for random identifiers.
Describes a block cipher algorithm with a known key size.
Static factory that generates various types of asymmetric key pairs.
Utility methods for public/private key pairs used for asymmetric encryption.
Factory that produces either a
SecretKey
or PrivateKey
.Factory bean that produces a
KeyStore
from a file or URI.Representation of the bit meanings in the
KeyUsage
BIT STRING type defined in section 4.2.1.3 of RFC
2459.Produces a string representation of an X.500 distinguished name using the process described in section 2 of RFC 2253,
LADPv3 Distinguished Names.
Runtime exception that describes a condition where some fundamental limit imposed by the implementation or
specification of a generator has been exceeded.
Simple counter nonce that uses a long integer counter internally and produces 8-byte nonces.
Strategy pattern interface for producing a string representation of an X.500 distinguished name.
Reads X.509 subject and issuer DNs as a raw sequence of attributes to facilitate precise handling of name parsing.
Nonce generation strategy.
Utility class for generating secure nonce and initialization vectors.
Describes block ciphers allowed with the OpenSSL password-based encryption scheme.
Password-based encryption scheme used by OpenSSL for encrypting private keys.
Decrypts PEM-encoded OpenSSL "traditional" format private keys.
Password-based encryption algorithms defined in PKCS#5 for PBES1 scheme.
Implements the PBES1 encryption scheme defined in PKCS#5v2.
Supported password-based encryption algorithms for PKCS#5 PBES2 encryption scheme.
Implements the PBES2 encryption scheme defined in PKCS#5v2.
Factory for creating a public key from a PEM-encoded private key in any format supported by
KeyPairUtil.decodePrivateKey(byte[])
.Factory for creating a public key from a PEM-encoded string:
Utility class with helper methods for common PEM encoding operations.
Decodes PEM or DER-encoded PKCS#8 private keys.
Decodes public keys formatted in an X.509 SubjectPublicKeyInfo structure in either PEM or DER encoding.
Generates random identifiers with an alphanumeric character set by default.
Nonce generation strategy that produces a random value according to NIST
SP-800-38a, appendix C, method 2 (random number generator), suitable for use with any block cipher mode described
in that standard except OFB.
RBG-based nonce generation strategy that uses a RBG component to produce values for the invocation field as described
in NIST SP-800-38D, section 8.2.2.
Simple implementation of the X.501 RelativeDistinguishedName type described in section 4.1.2.4 of RFC 2459.
Simple implementation of the X.501 RDNSequence type described in section 4.1.2.4 of RFC 2459.
Reflection utilities.
Resource descriptor that provides a strategy to get an
InputStream
to read bytes.Factory for reading a private from a
Resource
containing data in any of the formats supported by KeyPairUtil.readPrivateKey(java.io.InputStream, char[])
.Factory for creating a public key from a
Resource
containing data in any of the formats supported by KeyPairUtil.readPublicKey(java.io.InputStream)
.Container for the output of a salted hash operation that includes both the digest output and salt value.
Factory class with static methods for generating
SecretKey
s.Computes a hash using an instance of
Digest
specified by AbstractHashBean.setDigestSpec(org.cryptacular.spec.Spec)
.Specification for a cryptographic primitive, e.g.
Describes the registered values of AttributeType that may appear in a RelativeDistinguishedName (RDN) as defined in
section 2 of RFC 2253.
Stream cipher specification.
Runtime exception thrown on stream IO errors.
Utility methods for stream handling.
OTP generator component that implements the TOTP scheme described in
RFC 6238.
Describes a non-standard AttributeType in dotted decimal form that may appear in a RelativeDistinguishedName (RDN) as
defined in section 2 of RFC 2253.
Describes a (presumably remote) resource accessible via URL.
JCE/JDK DSA private key that wraps the corresponding BC DSA private key type,
DSAPrivateKeyParameters
.JCE/JDK DSA public key that wraps the corresponding BC DSA public key type,
DSAPublicKeyParameters
.JCE/JDK EC private key that wraps the corresponding BC EC private key type,
ECPrivateKeyParameters
.JCE/JDK EC public key that wraps the corresponding BC EC public key type,
ECPublicKeyParameters
.JCE/JDK RSA private key that wraps the corresponding BC RSA private key type,
RSAPrivateCrtKeyParameters
.JCE/JDK RSA public key that wraps the corresponding BC RSA public key type,
RSAKeyParameters
.
CiphertextHeaderV2