- java.lang.Object
-
- java.security.spec.EncodedKeySpec
-
- java.security.spec.PKCS8EncodedKeySpec
-
- All Implemented Interfaces:
KeySpec
public class PKCS8EncodedKeySpec extends EncodedKeySpec
This class represents the ASN.1 encoding of a private key, encoded according to the ASN.1 typePrivateKeyInfo. ThePrivateKeyInfosyntax is defined in the PKCS#8 standard as follows:PrivateKeyInfo ::= SEQUENCE { version Version, privateKeyAlgorithm PrivateKeyAlgorithmIdentifier, privateKey PrivateKey, attributes [0] IMPLICIT Attributes OPTIONAL } Version ::= INTEGER PrivateKeyAlgorithmIdentifier ::= AlgorithmIdentifier PrivateKey ::= OCTET STRING Attributes ::= SET OF Attribute- Since:
- 1.2
- See Also:
Key,KeyFactory,KeySpec,EncodedKeySpec,X509EncodedKeySpec
-
-
Constructor Summary
Constructors Constructor Description PKCS8EncodedKeySpec(byte[] encodedKey)Creates a newPKCS8EncodedKeySpecwith the given encoded key.PKCS8EncodedKeySpec(byte[] encodedKey, String algorithm)Creates a newPKCS8EncodedKeySpecwith the given encoded key and algorithm.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]getEncoded()Returns the key bytes, encoded according to the PKCS #8 standard.StringgetFormat()Returns the name of the encoding format associated with this key specification.-
Methods declared in class java.security.spec.EncodedKeySpec
getAlgorithm
-
-
-
-
Constructor Detail
-
PKCS8EncodedKeySpec
public PKCS8EncodedKeySpec(byte[] encodedKey)
Creates a newPKCS8EncodedKeySpecwith the given encoded key.- Parameters:
encodedKey- the key, which is assumed to be encoded according to the PKCS #8 standard. The contents of the array are copied to protect against subsequent modification.- Throws:
NullPointerException- ifencodedKeyis null.
-
PKCS8EncodedKeySpec
public PKCS8EncodedKeySpec(byte[] encodedKey, String algorithm)Creates a newPKCS8EncodedKeySpecwith the given encoded key and algorithm. This constructor is useful when subsequent callers of thePKCS8EncodedKeySpecobject might not know the algorithm of the private key.- Parameters:
encodedKey- the key, which is assumed to be encoded according to the PKCS #8 standard. The contents of the array are copied to protect against subsequent modification.algorithm- the algorithm name of the encoded private key See the KeyFactory section in the Java Security Standard Algorithm Names Specification for information about standard algorithm names.- Throws:
NullPointerException- ifencodedKeyoralgorithmis null.IllegalArgumentException- ifalgorithmis the empty string""- Since:
- 9
-
-
Method Detail
-
getEncoded
public byte[] getEncoded()
Returns the key bytes, encoded according to the PKCS #8 standard.- Overrides:
getEncodedin classEncodedKeySpec- Returns:
- the PKCS #8 encoding of the key. Returns a new array each time this method is called.
-
getFormat
public final String getFormat()
Returns the name of the encoding format associated with this key specification.- Specified by:
getFormatin classEncodedKeySpec- Returns:
- the string
"PKCS#8".
-
-