# Package org.bouncycastle.crypto

Base classes for the lightweight API.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  AsymmetricCipherKeyPairGenerator | interface that a public/private key pair generator should conform to.
  CipherParameters | all parameter classes implement this.
  CryptoServiceProperties | Properties interface for cryptographic services.
  Digest | interface that a message digest conforms to.
  ExtendedDigest | Extended interface for message digests with additional functionality.
  SecretWithEncapsulation | Interface describing secret with encapsulation details.
  Xof | With FIPS PUB 202 a new kind of message digest was announced which supported extendable output, or variable digest sizes.

- Class Summary
  Class | Description
  --- | ---
  AsymmetricCipherKeyPair | a holding class for public/private parameter pairs.
  CryptoServicesRegistrar | Registry for cryptographic services and utilities.
  KeyGenerationParameters | The base class for parameters to key generators.

- Enum Summary
  Enum | Description
  --- | ---
  CryptoServicePurpose | Enumeration of cryptographic service purposes.

- Exception Summary
  Exception | Description
  --- | ---
  CryptoException | the foundation class for the hard exceptions thrown by the crypto packages.
  DataLengthException | this exception is thrown if a buffer that is meant to have output copied into it turns out to be too short, or if we've been given insufficient input.
  RuntimeCryptoException | the foundation class for the exceptions thrown by the crypto packages.

## Package org.bouncycastle.crypto Description

Base classes for the lightweight API.