- java.lang.Object
-
- java.security.spec.EncodedKeySpec
-
- java.security.spec.X509EncodedKeySpec
-
- All Implemented Interfaces:
KeySpec
public class X509EncodedKeySpec extends EncodedKeySpec
This class represents the ASN.1 encoding of a public key, encoded according to the ASN.1 typeSubjectPublicKeyInfo
. TheSubjectPublicKeyInfo
syntax is defined in the X.509 standard as follows:SubjectPublicKeyInfo ::= SEQUENCE { algorithm AlgorithmIdentifier, subjectPublicKey BIT STRING }
- Since:
- 1.2
- See Also:
Key
,KeyFactory
,KeySpec
,EncodedKeySpec
,PKCS8EncodedKeySpec
-
-
Constructor Summary
Constructors Constructor Description X509EncodedKeySpec(byte[] encodedKey)
Creates a newX509EncodedKeySpec
with the given encoded key.X509EncodedKeySpec(byte[] encodedKey, String algorithm)
Creates a newX509EncodedKeySpec
with the given encoded key.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]
getEncoded()
Returns the key bytes, encoded according to the X.509 standard.String
getFormat()
Returns the name of the encoding format associated with this key specification.-
Methods inherited from class java.security.spec.EncodedKeySpec
getAlgorithm
-
-
-
-
Constructor Detail
-
X509EncodedKeySpec
public X509EncodedKeySpec(byte[] encodedKey)
Creates a newX509EncodedKeySpec
with the given encoded key.- Parameters:
encodedKey
- the key, which is assumed to be encoded according to the X.509 standard. The contents of the array are copied to protect against subsequent modification.- Throws:
NullPointerException
- ifencodedKey
is null.
-
X509EncodedKeySpec
public X509EncodedKeySpec(byte[] encodedKey, String algorithm)
Creates a newX509EncodedKeySpec
with the given encoded key. This constructor is useful when subsequent callers of theX509EncodedKeySpec
object might not know the algorithm of the key.- Parameters:
encodedKey
- the key, which is assumed to be encoded according to the X.509 standard. The contents of the array are copied to protect against subsequent modification.algorithm
- the algorithm name of the encoded public key See the KeyFactory section in the Java Security Standard Algorithm Names Specification for information about standard algorithm names.- Throws:
NullPointerException
- ifencodedKey
oralgorithm
is null.IllegalArgumentException
- ifalgorithm
is the empty string""
- Since:
- 9
-
-
Method Detail
-
getEncoded
public byte[] getEncoded()
Returns the key bytes, encoded according to the X.509 standard.- Overrides:
getEncoded
in classEncodedKeySpec
- Returns:
- the X.509 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:
getFormat
in classEncodedKeySpec
- Returns:
- the string
"X.509"
.
-
-