Module java.base
Package 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 algorithmspecific way, or in an algorithmindependent 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 DERencoded format, and X.509 public and private keys in DERencoded 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 Cryptography Specifications, Version 2.2 (RFC 8017)
 PKCS #8: PrivateKey Information Syntax Standard, Version 1.2, November 1993
 Federal Information Processing Standards Publication (FIPS PUB) 186: Digital Signature Standard (DSS)
Related Documentation
For documentation that includes information about algorithm parameter and key specifications, please see: Since:
 1.2

Interface Summary Interface Description 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. 
Class Summary Class Description DSAGenParameterSpec This immutable class specifies the set of parameters used for generating DSA parameters as specified in FIPS 1863 Digital Signature Standard (DSS).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.EdDSAParameterSpec A class used to specify EdDSA signature and verification parameters.EdECPoint An elliptic curve point used to specify keys as defined by RFC 8032: EdwardsCurve Digital Signature Algorithm (EdDSA).EdECPrivateKeySpec A class representing elliptic curve private keys as defined in RFC 8032: EdwardsCurve Digital Signature Algorithm (EdDSA), including the curve and other algorithm parameters.EdECPublicKeySpec A class representing elliptic curve public keys as defined in RFC 8032: EdwardsCurve Digital Signature Algorithm (EdDSA), including the curve and other algorithm 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 RSASSAPSS signature scheme, as defined in the PKCS#1 v2.2 standard.NamedParameterSpec This class is used to specify any algorithm parameters that are determined by a standard name.PKCS8EncodedKeySpec This class represents the ASN.1 encoding of a private key, encoded according to the ASN.1 typePrivateKeyInfo
.PSSParameterSpec This class specifies a parameter spec for RSASSAPSS signature scheme, as defined in the PKCS#1 v2.2 standard.RSAKeyGenParameterSpec This class specifies the set of parameters used to generate an RSA key pair.RSAMultiPrimePrivateCrtKeySpec This class specifies an RSA multiprime private key, as defined in the PKCS#1 v2.2 standard 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.2 standard.RSAPrivateCrtKeySpec This class specifies an RSA private key, as defined in the PKCS#1 v2.2 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 typeSubjectPublicKeyInfo
.XECPrivateKeySpec A class representing elliptic curve private keys as defined in RFC 7748, including the curve and other algorithm parameters.XECPublicKeySpec A class representing elliptic curve public keys as defined in RFC 7748, including the curve and other algorithm parameters. 
Exception Summary Exception Description InvalidKeySpecException This is the exception for invalid key specifications.InvalidParameterSpecException This is the exception for invalid parameter specifications.