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)
Related Documentation
For documentation that includes information about algorithm parameter
and key specifications, please see:
@since 1.2
|
Java Source File Name | Type | Comment |
AlgorithmParameterSpec.java | Interface | A (transparent) specification of cryptographic parameters.
This interface contains no methods or constants. |
DSAParameterSpec.java | Class | This class specifies the set of parameters used with the DSA algorithm. |
DSAPrivateKeySpec.java | Class | This class specifies a DSA private key with its associated parameters. |
DSAPublicKeySpec.java | Class | This class specifies a DSA public key with its associated parameters. |
ECField.java | Interface | This interface represents an elliptic curve (EC) finite field. |
ECFieldF2m.java | Class | This immutable class defines an elliptic curve (EC)
characteristic 2 finite field. |
ECFieldFp.java | Class | This immutable class defines an elliptic curve (EC) prime
finite field. |
ECGenParameterSpec.java | Class | This immutable class specifies the set of parameters used for
generating elliptic curve (EC) domain parameters. |
ECParameterSpec.java | Class | This immutable class specifies the set of domain parameters
used with elliptic curve cryptography (ECC). |
ECPoint.java | Class | This immutable class represents a point on an elliptic curve (EC)
in affine coordinates. |
ECPrivateKeySpec.java | Class | This immutable class specifies an elliptic curve private key with
its associated parameters. |
ECPublicKeySpec.java | Class | This immutable class specifies an elliptic curve public key with
its associated parameters. |
EllipticCurve.java | Class | This immutable class holds the necessary values needed to represent
an elliptic curve. |
EncodedKeySpec.java | Class | This class represents a public or private key in encoded format. |
InvalidKeySpecException.java | Class | This is the exception for invalid key specifications. |
InvalidParameterSpecException.java | Class | This is the exception for invalid parameter specifications. |
KeySpec.java | Interface | A (transparent) specification of the key material
that constitutes a cryptographic key.
If the key is stored on a hardware device, its
specification may contain information that helps identify the key on the
device.
A key may be specified in an algorithm-specific way, or in an
algorithm-independent encoding format (such as ASN.1).
For example, a DSA private key may be specified by its components
x , p , q , and g
(see
DSAPrivateKeySpec ), or it may be
specified using its DER encoding
(see
PKCS8EncodedKeySpec ).
This interface contains no methods or constants. |
MGF1ParameterSpec.java | Class | 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.
Its ASN.1 definition in PKCS#1 standard is described below:
MGF1Parameters ::= OAEP-PSSDigestAlgorthms
where
OAEP-PSSDigestAlgorithms ALGORITHM-IDENTIFIER ::= {
{ OID id-sha1 PARAMETERS NULL }|
{ OID id-sha256 PARAMETERS NULL }|
{ OID id-sha384 PARAMETERS NULL }|
{ OID id-sha512 PARAMETERS NULL },
... |
PKCS8EncodedKeySpec.java | Class | This class represents the ASN.1 encoding of a private key,
encoded according to the ASN.1 type PrivateKeyInfo . |
PSSParameterSpec.java | Class | This class specifies a parameter spec for RSA-PSS signature scheme,
as defined in the
PKCS#1 v2.1
standard.
Its ASN.1 definition in PKCS#1 standard is described below:
RSASSA-PSS-params ::= SEQUENCE {
hashAlgorithm [0] OAEP-PSSDigestAlgorithms DEFAULT sha1,
maskGenAlgorithm [1] PKCS1MGFAlgorithms DEFAULT mgf1SHA1,
saltLength [2] INTEGER DEFAULT 20,
trailerField [3] INTEGER DEFAULT 1
}
where
OAEP-PSSDigestAlgorithms ALGORITHM-IDENTIFIER ::= {
{ OID id-sha1 PARAMETERS NULL }|
{ OID id-sha256 PARAMETERS NULL }|
{ OID id-sha384 PARAMETERS NULL }|
{ OID id-sha512 PARAMETERS NULL },
... |
RSAKeyGenParameterSpec.java | Class | This class specifies the set of parameters used to generate an RSA
key pair. |
RSAMultiPrimePrivateCrtKeySpec.java | Class | 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.java | Class | This class represents the triplet (prime, exponent, and coefficient)
inside RSA's OtherPrimeInfo structure, as defined in the PKCS#1 v2.1. |
RSAPrivateCrtKeySpec.java | Class | 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.java | Class | This class specifies an RSA private key. |
RSAPublicKeySpec.java | Class | This class specifies an RSA public key. |
X509EncodedKeySpec.java | Class | This class represents the ASN.1 encoding of a public key,
encoded according to the ASN.1 type SubjectPublicKeyInfo . |