PKCS8EncodedKeySpec
Stay organized with collections
Save and categorize content based on your preferences.
This class represents the ASN.1 encoding of a private key,
encoded according to the ASN.1 type PrivateKeyInfo
.
The PrivateKeyInfo
syntax 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
Public Constructor Summary
|
PKCS8EncodedKeySpec(byte[] encodedKey)
Creates a new PKCS8EncodedKeySpec with the given encoded key.
|
Public Method Summary
byte[]
|
getEncoded()
Returns the key bytes, encoded according to the PKCS #8 standard.
|
final
String
|
getFormat()
Returns the name of the encoding format associated with this
key specification.
|
Inherited Method Summary
From class
java.lang.Object
Object
|
clone()
Creates and returns a copy of this Object .
|
boolean
|
equals( Object obj)
Compares this instance with the specified object and indicates if they
are equal.
|
void
|
finalize()
Invoked when the garbage collector has detected that this instance is no longer reachable.
|
final
Class<?>
|
getClass()
Returns the unique instance of Class that represents this
object's class.
|
int
|
hashCode()
Returns an integer hash code for this object.
|
final
void
|
notify()
Causes a thread which is waiting on this object's monitor (by means of
calling one of the wait() methods) to be woken up.
|
final
void
|
notifyAll()
Causes all threads which are waiting on this object's monitor (by means
of calling one of the wait() methods) to be woken up.
|
String
|
toString()
Returns a string containing a concise, human-readable description of this
object.
|
final
void
|
wait(long timeout, int nanos)
Causes the calling thread to wait until another thread calls the notify() or notifyAll() method of this object or until the
specified timeout expires.
|
final
void
|
wait(long timeout)
Causes the calling thread to wait until another thread calls the notify() or notifyAll() method of this object or until the
specified timeout expires.
|
final
void
|
wait()
Causes the calling thread to wait until another thread calls the notify() or notifyAll() method of this object.
|
Public Constructors
public
PKCS8EncodedKeySpec
(byte[] encodedKey)
Creates a new PKCS8EncodedKeySpec with 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. |
Public Methods
public
byte[]
getEncoded
()
Returns the key bytes, encoded according to the PKCS #8 standard.
Returns
- the PKCS #8 encoding of the key. Returns a new array
each time this method is called.
Returns the name of the encoding format associated with this
key specification.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-07-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-07-10 UTC."],[[["\u003cp\u003e\u003ccode\u003ePKCS8EncodedKeySpec\u003c/code\u003e represents the ASN.1 encoding of a private key, based on the PKCS#8 standard's \u003ccode\u003ePrivateKeyInfo\u003c/code\u003e structure.\u003c/p\u003e\n"],["\u003cp\u003eIt provides access to the encoded key bytes and the encoding format, which is "PKCS#8".\u003c/p\u003e\n"],["\u003cp\u003eThis class is used in conjunction with \u003ccode\u003eKeyFactory\u003c/code\u003e to convert the encoded key into a usable private key object.\u003c/p\u003e\n"],["\u003cp\u003eA new \u003ccode\u003ePKCS8EncodedKeySpec\u003c/code\u003e is created using the encoded private key bytes, which are copied to ensure immutability.\u003c/p\u003e\n"]]],[],null,["# PKCS8EncodedKeySpec\n\npublic class **PKCS8EncodedKeySpec** extends [EncodedKeySpec](../../../../reference/java/security/spec/EncodedKeySpec.html) \nThis class represents the ASN.1 encoding of a private key,\nencoded according to the ASN.1 type `PrivateKeyInfo`.\nThe `PrivateKeyInfo` syntax is defined in the PKCS#8 standard\nas follows:\n\n```\n PrivateKeyInfo ::= SEQUENCE {\n version Version,\n privateKeyAlgorithm PrivateKeyAlgorithmIdentifier,\n privateKey PrivateKey,\n attributes [0] IMPLICIT Attributes OPTIONAL }\n\n Version ::= INTEGER\n\n PrivateKeyAlgorithmIdentifier ::= AlgorithmIdentifier\n\n PrivateKey ::= OCTET STRING\n\n Attributes ::= SET OF Attribute\n \n```\n\n\u003cbr /\u003e\n\n##### See Also\n\n- [Key](../../../../reference/java/security/Key.html)\n- [KeyFactory](../../../../reference/java/security/KeyFactory.html)\n- [KeySpec](../../../../reference/java/security/spec/KeySpec.html)\n- [EncodedKeySpec](../../../../reference/java/security/spec/EncodedKeySpec.html)\n- [X509EncodedKeySpec](../../../../reference/java/security/spec/X509EncodedKeySpec.html) \n\n### Public Constructor Summary\n\n|---|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| | [PKCS8EncodedKeySpec](../../../../reference/java/security/spec/PKCS8EncodedKeySpec.html#PKCS8EncodedKeySpec(byte[]))(byte\\[\\] encodedKey) Creates a new PKCS8EncodedKeySpec with the given encoded key. |\n\n### Public Method Summary\n\n|-------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| byte\\[\\] | [getEncoded](../../../../reference/java/security/spec/PKCS8EncodedKeySpec.html#getEncoded())() Returns the key bytes, encoded according to the PKCS #8 standard. |\n| final [String](../../../../reference/java/lang/String.html) | [getFormat](../../../../reference/java/security/spec/PKCS8EncodedKeySpec.html#getFormat())() Returns the name of the encoding format associated with this key specification. |\n\n### Inherited Method Summary\n\nFrom class [java.security.spec.EncodedKeySpec](../../../../reference/java/security/spec/EncodedKeySpec.html) \n\n|----------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| byte\\[\\] | [getEncoded](../../../../reference/java/security/spec/EncodedKeySpec.html#getEncoded())() Returns the encoded key. |\n| abstract [String](../../../../reference/java/lang/String.html) | [getFormat](../../../../reference/java/security/spec/EncodedKeySpec.html#getFormat())() Returns the name of the encoding format associated with this key specification. |\n\nFrom class [java.lang.Object](../../../../reference/java/lang/Object.html) \n\n|----------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [Object](../../../../reference/java/lang/Object.html) | [clone](../../../../reference/java/lang/Object.html#clone())() Creates and returns a copy of this `Object`. |\n| boolean | [equals](../../../../reference/java/lang/Object.html#equals(java.lang.Object))([Object](../../../../reference/java/lang/Object.html) obj) Compares this instance with the specified object and indicates if they are equal. |\n| void | [finalize](../../../../reference/java/lang/Object.html#finalize())() Invoked when the garbage collector has detected that this instance is no longer reachable. |\n| final [Class](../../../../reference/java/lang/Class.html)\\\u003c?\\\u003e | [getClass](../../../../reference/java/lang/Object.html#getClass())() Returns the unique instance of [Class](../../../../reference/java/lang/Class.html) that represents this object's class. |\n| int | [hashCode](../../../../reference/java/lang/Object.html#hashCode())() Returns an integer hash code for this object. |\n| final void | [notify](../../../../reference/java/lang/Object.html#notify())() Causes a thread which is waiting on this object's monitor (by means of calling one of the `wait()` methods) to be woken up. |\n| final void | [notifyAll](../../../../reference/java/lang/Object.html#notifyAll())() Causes all threads which are waiting on this object's monitor (by means of calling one of the `wait()` methods) to be woken up. |\n| [String](../../../../reference/java/lang/String.html) | [toString](../../../../reference/java/lang/Object.html#toString())() Returns a string containing a concise, human-readable description of this object. |\n| final void | [wait](../../../../reference/java/lang/Object.html#wait(long,%20int))(long timeout, int nanos) Causes the calling thread to wait until another thread calls the `notify()` or `notifyAll()` method of this object or until the specified timeout expires. |\n| final void | [wait](../../../../reference/java/lang/Object.html#wait(long))(long timeout) Causes the calling thread to wait until another thread calls the `notify()` or `notifyAll()` method of this object or until the specified timeout expires. |\n| final void | [wait](../../../../reference/java/lang/Object.html#wait())() Causes the calling thread to wait until another thread calls the `notify()` or `notifyAll()` method of this object. |\n\nPublic Constructors\n-------------------\n\n#### public\n**PKCS8EncodedKeySpec**\n(byte\\[\\] encodedKey)\n\nCreates a new PKCS8EncodedKeySpec with the given encoded key. \n\n##### Parameters\n\n| 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. |\n|------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------|\n\n##### Throws\n\n| [NullPointerException](../../../../reference/java/lang/NullPointerException.html) | if `encodedKey` is null. |\n|-----------------------------------------------------------------------------------|--------------------------|\n\nPublic Methods\n--------------\n\n#### public byte\\[\\]\n**getEncoded**\n()\n\nReturns the key bytes, encoded according to the PKCS #8 standard. \n\n##### Returns\n\n- the PKCS #8 encoding of the key. Returns a new array each time this method is called. \n\n#### public final [String](../../../../reference/java/lang/String.html)\n**getFormat**\n()\n\nReturns the name of the encoding format associated with this\nkey specification. \n\n##### Returns\n\n- the string `\"PKCS#8\"`."]]