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 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 Cryptography Specifications, Version 2.2 (RFC 8017)
  • PKCS #8: Private-Key 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 186-3 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.
    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 RSASSA-PSS 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 type PrivateKeyInfo.
    PSSParameterSpec
    This class specifies a parameter spec for RSASSA-PSS 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 multi-prime 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 type SubjectPublicKeyInfo.
    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.