api library

This is the API specification library for the Pointy Castle project.

It declares all abstract types used by the Pointy Castle library. In addition, it implements the factories mechanism that allows users to instantiate algorithms by their standard name.

Classes

AEADBlockCipher
A block cipher mode that includes authenticated encryption
AEADCipher
AEADParameters<UnderlyingCipherParameters extends CipherParameters>
Algorithm
All algorithms defined by Pointy Castle inherit from this class.
AsymmetricBlockCipher
Asymmetric block cipher engines are expected to conform to this interface.
AsymmetricKey
The interface that asymmetric (public and private) keys conform to.
AsymmetricKeyPair<B extends PublicKey, V extends PrivateKey>
A pair of public and private asymmetric keys.
AsymmetricKeyParameter<T extends AsymmetricKey>
Abstract CipherParameters to hold an asymmetric (public or private) key
BlockCipher
Block cipher engines are expected to conform to this interface.
CipherParameters
All cipher initialization parameters classes implement this.
DESedeParameters
DESParameters
Digest
The interface that a message digest conforms to.
KeyDerivator
The interface that a symmetric key derivator conforms to.
KeyGenerator
The interface that asymmetric key generators conform to.
KeyGeneratorParameters
Abstract CipherParameters to init an asymmetric key generator.
KeyParameter
CipherParameters consisting of just a key of arbitrary length.
Mac
The interface that a MAC (message authentication code) conforms to.
PaddedBlockCipher
All padded block ciphers conform to this interface.
PaddedBlockCipherParameters<UnderlyingCipherParameters extends CipherParameters?, PaddingCipherParameters extends CipherParameters?>
CipherParameters for PaddedBlockCiphers consisting of two underlying CipherParameters, one for the BlockCipher (of type UnderlyingCipherParameters) and the other for the Padding (of type PaddingCipherParameters).
Padding
The interface that a padding conforms to.
ParametersWithIV<UnderlyingParameters extends CipherParameters?>
CipherParameters consisting of an underlying CipherParameters (of type UnderlyingParameters) and an initialization vector of arbitrary length.
ParametersWithRandom<UnderlyingParameters extends CipherParameters>
CipherParameters consisting of an underlying CipherParameters (of type UnderlyingParameters) and an acompanying SecureRandom.
ParametersWithSalt<UnderlyingParameters extends CipherParameters>
CipherParameters consisting of an underlying CipherParameters (of type UnderlyingParameters) and an acompanying salt of type Uint8List.
ParametersWithSaltConfiguration<UnderlyingParameters extends CipherParameters>
CipherParameters consisting of an underlying CipherParameters (of type UnderlyingParameters), an acompanying SecureRandom, and salt length.
PBEParametersGenerator
PrivateKey
The interface that asymmetric private keys conform to.
PrivateKeyParameter<T extends PrivateKey>
A CipherParameters to hold an asymmetric private key
PublicKey
The interface that asymmetric public keys conform to.
PublicKeyParameter<T extends PublicKey>
A CipherParameters to hold an asymmetric public key
RC2Parameters
SecureRandom
A synchronous secure random number generator (RNG).
Signature
An interface for signatures created by a Signer
Signer
An interface for DSAs (digital signature algorithms)
SRPClient
SRPServer
Implements the server side SRP-6a protocol. Note that this class is stateful, and therefore NOT threadsafe. This implementation of SRP is based on the optimized message sequence put forth by Thomas Wu in the paper "SRP-6: Improvements and Refinements to the Secure Remote Password Protocol, 2002"
StreamCipher
The interface stream ciphers conform to.
Xof

Exceptions / Errors

InvalidCipherTextException
RegistryFactoryException
This kind of exception is thrown when a user tries to create an algorithm or domain parameters that were not correctly registered. This can be because the corresponding class was not imported, or because the algorithm does not exist.