@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class PKCS8PrivateKey extends java.lang.Object implements java.io.Serializable
com.unboundid.asn1
package. The ASN.1 specification is as follows:
OneAsymmetricKey ::= SEQUENCE { version Version, privateKeyAlgorithm PrivateKeyAlgorithmIdentifier, privateKey PrivateKey, attributes [0] Attributes OPTIONAL, ..., [[2: publicKey [1] PublicKey OPTIONAL ]], ... } PrivateKeyInfo ::= OneAsymmetricKey -- PrivateKeyInfo is used by [P12]. If any items tagged as version -- 2 are used, the version must be v2, else the version should be -- v1. When v1, PrivateKeyInfo is the same as it was in [RFC5208]. Version ::= INTEGER { v1(0), v2(1) } (v1, ..., v2) PrivateKeyAlgorithmIdentifier ::= AlgorithmIdentifier { PUBLIC-KEY, { PrivateKeyAlgorithms } } PrivateKey ::= OCTET STRING -- Content varies based on type of key. The -- algorithm identifier dictates the format of -- the key. PublicKey ::= BIT STRING -- Content varies based on type of key. The -- algorithm identifier dictates the format of -- the key. Attributes ::= SET OF Attribute { { OneAsymmetricKeyAttributes } } OneAsymmetricKeyAttributes ATTRIBUTE ::= { ... -- For local profiles }
Constructor and Description |
---|
PKCS8PrivateKey(byte[] privateKeyBytes)
Decodes the contents of the provided byte array as a PKCS #8 private key.
|
Modifier and Type | Method and Description |
---|---|
ASN1Element |
getAttributesElement()
Retrieves an ASN.1 element containing an encoded set of private key
attributes, if available.
|
DecodedPrivateKey |
getDecodedPrivateKey()
Retrieves the decoded private key, if available.
|
ASN1OctetString |
getEncodedPrivateKey()
Retrieves the encoded private key data.
|
byte[] |
getPKCS8PrivateKeyBytes()
Retrieves the bytes that comprise the encoded representation of this
PKCS #8 private key.
|
java.lang.String |
getPrivateKeyAlgorithmName()
Retrieves the private key algorithm name, if available.
|
java.lang.String |
getPrivateKeyAlgorithmNameOrOID()
Retrieves the private key algorithm name, if available, or a string
representation of the OID if the name is not available.
|
OID |
getPrivateKeyAlgorithmOID()
Retrieves the private key algorithm OID.
|
ASN1Element |
getPrivateKeyAlgorithmParameters()
Retrieves the encoded private key algorithm parameters, if present.
|
ASN1BitString |
getPublicKey()
Retrieves the public key included in the private key, if available.
|
PKCS8PrivateKeyVersion |
getVersion()
Retrieves the private key version.
|
java.util.List<java.lang.String> |
toPEM()
Retrieves a list of the lines that comprise a PEM representation of this
certificate signing request.
|
java.lang.String |
toPEMString()
Retrieves a multi-line string containing a PEM representation of this
certificate signing request.
|
java.security.PrivateKey |
toPrivateKey()
Converts this PKCS #8 private key object to a Java
PrivateKey
object. |
java.lang.String |
toString()
Retrieves a string representation of the decoded X.509 certificate.
|
void |
toString(java.lang.StringBuilder buffer)
Appends a string representation of the decoded X.509 certificate to the
provided buffer.
|
public PKCS8PrivateKey(byte[] privateKeyBytes) throws CertException
privateKeyBytes
- The byte array containing the encoded PKCS #8
private key.CertException
- If the contents of the provided byte array could
not be decoded as a valid PKCS #8 private key.public byte[] getPKCS8PrivateKeyBytes()
public PKCS8PrivateKeyVersion getVersion()
public OID getPrivateKeyAlgorithmOID()
public java.lang.String getPrivateKeyAlgorithmName()
null
if private key
algorithm OID is not recognized.public java.lang.String getPrivateKeyAlgorithmNameOrOID()
public ASN1Element getPrivateKeyAlgorithmParameters()
null
if
there are no private key algorithm parameters.public ASN1OctetString getEncodedPrivateKey()
public DecodedPrivateKey getDecodedPrivateKey()
null
if the decoded key is
not available.public ASN1Element getAttributesElement()
null
if the private key does not have any
attributes.public ASN1BitString getPublicKey()
null
if the
private key does not include a public key.public java.security.PrivateKey toPrivateKey() throws java.security.GeneralSecurityException
PrivateKey
object.PrivateKey
object that corresponds to this
PKCS #8 private key.java.security.GeneralSecurityException
- If a problem is encountered while
performing the conversion.public java.lang.String toString()
toString
in class java.lang.Object
public void toString(java.lang.StringBuilder buffer)
buffer
- The buffer to which the information should be appended.public java.util.List<java.lang.String> toPEM()
public java.lang.String toPEMString()