- 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 declared in 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"
.