Module java.base

Package java.security.spec


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
  • Related Packages
    Package
    Description
    Provides the classes and interfaces for the security framework.
    Provides classes and interfaces for parsing and managing certificates, certificate revocation lists (CRLs), and certification paths.
    Provides interfaces for generating RSA (Rivest, Shamir and Adleman AsymmetricCipher algorithm) keys as defined in the RSA Laboratory Technical Note PKCS#1, and DSA (Digital Signature Algorithm) keys as defined in NIST's FIPS-186.
  • Interface Summary
    Interface
    Description
    A (transparent) specification of cryptographic parameters.
    This interface represents an elliptic curve (EC) finite field.
    A (transparent) specification of the key material that constitutes a cryptographic key.
  • Class Summary
    Class
    Description
    This immutable class specifies the set of parameters used for generating DSA parameters as specified in FIPS 186-3 Digital Signature Standard (DSS).
    This class specifies the set of parameters used with the DSA algorithm.
    This class specifies a DSA private key with its associated parameters.
    This class specifies a DSA public key with its associated parameters.
    This immutable class defines an elliptic curve (EC) characteristic 2 finite field.
    This immutable class defines an elliptic curve (EC) prime finite field.
    This immutable class specifies the set of parameters used for generating elliptic curve (EC) domain parameters.
    This immutable class specifies the set of domain parameters used with elliptic curve cryptography (ECC).
    This immutable class represents a point on an elliptic curve (EC) in affine coordinates.
    This immutable class specifies an elliptic curve private key with its associated parameters.
    This immutable class specifies an elliptic curve public key with its associated parameters.
    A class used to specify EdDSA signature and verification parameters.
    An elliptic curve point used to specify keys as defined by RFC 8032: Edwards-Curve Digital Signature Algorithm (EdDSA).
    A class representing elliptic curve private keys as defined in RFC 8032: Edwards-Curve Digital Signature Algorithm (EdDSA), including the curve and other algorithm parameters.
    A class representing elliptic curve public keys as defined in RFC 8032: Edwards-Curve Digital Signature Algorithm (EdDSA), including the curve and other algorithm parameters.
    This immutable class holds the necessary values needed to represent an elliptic curve.
    This class represents a public or private key in encoded format.
    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.
    This class is used to specify any algorithm parameters that are determined by a standard name.
    This class represents the ASN.1 encoding of a private key, encoded according to the ASN.1 type PrivateKeyInfo.
    This class specifies a parameter spec for RSASSA-PSS signature scheme, as defined in the PKCS#1 v2.2 standard.
    This class specifies the set of parameters used to generate an RSA key pair.
    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.
    This class represents the triplet (prime, exponent, and coefficient) inside RSA's OtherPrimeInfo structure, as defined in the PKCS#1 v2.2 standard.
    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.
    This class specifies an RSA private key.
    This class specifies an RSA public key.
    This class represents the ASN.1 encoding of a public key, encoded according to the ASN.1 type SubjectPublicKeyInfo.
    A class representing elliptic curve private keys as defined in RFC 7748, including the curve and other algorithm parameters.
    A class representing elliptic curve public keys as defined in RFC 7748, including the curve and other algorithm parameters.
  • Exception Summary
    Exception
    Description
    This is the exception for invalid key specifications.
    This is the exception for invalid parameter specifications.