java.security.spec

Provides classes and interfaces for key specifications and algorithm parameter specifications.

A key specification is a transparent representation of the key material that constitutes a key. A key may be specified in an algorithm-specific way, or in an algorithm-independent encoding format (such as ASN.1). This package contains key specifications for DSA public and private keys, RSA public and private keys, PKCS #8 private keys in DER-encoded format, and X.509 public and private keys in DER-encoded format.

An algorithm parameter specification is a transparent representation of the sets of parameters used with an algorithm. This package contains an algorithm parameter specification for parameters used with the DSA algorithm.

Package Specification

  • PKCS #1: RSA Encryption Standard, Version 1.5, November 1993
  • PKCS #8: Private-Key Information Syntax Standard, Version 1.2, November 1993
  • Federal Information Processing Standards Publication (FIPS PUB) 186: Digital Signature Standard (DSS)
For documentation that includes information about algorithm parameter and key specifications, please see:

Interfaces

AlgorithmParameterSpec A (transparent) specification of cryptographic parameters. 
ECField This interface represents an elliptic curve (EC) finite field. 
KeySpec A (transparent) specification of the key material that constitutes a cryptographic key. 

Classes

DSAParameterSpec This class specifies the set of parameters used with the DSA algorithm. 
DSAPrivateKeySpec This class specifies a DSA private key with its associated parameters. 
DSAPublicKeySpec This class specifies a DSA public key with its associated parameters. 
ECFieldF2m This immutable class defines an elliptic curve (EC) characteristic 2 finite field. 
ECFieldFp This immutable class defines an elliptic curve (EC) prime finite field. 
ECGenParameterSpec This immutable class specifies the set of parameters used for generating elliptic curve (EC) domain parameters. 
ECParameterSpec This immutable class specifies the set of domain parameters used with elliptic curve cryptography (ECC). 
ECPoint This immutable class represents a point on an elliptic curve (EC) in affine coordinates. 
ECPrivateKeySpec This immutable class specifies an elliptic curve private key with its associated parameters. 
ECPublicKeySpec This immutable class specifies an elliptic curve public key with its associated parameters. 
EllipticCurve This immutable class holds the necessary values needed to represent an elliptic curve. 
EncodedKeySpec This class represents a public or private key in encoded format. 
MGF1ParameterSpec This class specifies the set of parameters used with mask generation function MGF1 in OAEP Padding and RSA-PSS signature scheme, as defined in the PKCS #1 v2.1 standard. 
PKCS8EncodedKeySpec This class represents the ASN.1 encoding of a private key, encoded according to the ASN.1 type PrivateKeyInfo
PSSParameterSpec This class specifies a parameter spec for RSA-PSS signature scheme, as defined in the PKCS#1 v2.1 standard. 
RSAKeyGenParameterSpec This class specifies the set of parameters used to generate an RSA key pair. 
RSAMultiPrimePrivateCrtKeySpec This class specifies an RSA multi-prime private key, as defined in the PKCS#1 v2.1, using the Chinese Remainder Theorem (CRT) information values for efficiency. 
RSAOtherPrimeInfo This class represents the triplet (prime, exponent, and coefficient) inside RSA's OtherPrimeInfo structure, as defined in the PKCS#1 v2.1. 
RSAPrivateCrtKeySpec This class specifies an RSA private key, as defined in the PKCS#1 standard, using the Chinese Remainder Theorem (CRT) information values for efficiency. 
RSAPrivateKeySpec This class specifies an RSA private key. 
RSAPublicKeySpec This class specifies an RSA public key. 
X509EncodedKeySpec This class represents the ASN.1 encoding of a public key, encoded according to the ASN.1 type SubjectPublicKeyInfo

Exceptions

InvalidKeySpecException This is the exception for invalid key specifications. 
InvalidParameterSpecException This is the exception for invalid parameter specifications.