|
JavaTM 2 Platform Std. Ed. v1.4.2 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object javax.crypto.EncryptedPrivateKeyInfo
This class implements the EncryptedPrivateKeyInfo
type
as defined in PKCS #8.
Its ASN.1 definition is as follows:
EncryptedPrivateKeyInfo ::= SEQUENCE { encryptionAlgorithm AlgorithmIdentifier, encryptedData OCTET STRING } AlgorithmIdentifier ::= SEQUENCE { algorithm OBJECT IDENTIFIER, parameters ANY DEFINED BY algorithm OPTIONAL }
PKCS8EncodedKeySpec
Constructor Summary | |
EncryptedPrivateKeyInfo(AlgorithmParameters algParams,
byte[] encryptedData)
Constructs an EncryptedPrivateKeyInfo from the
encryption algorithm parameters and the encrypted data. |
|
EncryptedPrivateKeyInfo(byte[] encoded)
Constructs (i.e., parses) an EncryptedPrivateKeyInfo from
its ASN.1 encoding. |
|
EncryptedPrivateKeyInfo(String algName,
byte[] encryptedData)
Constructs an EncryptedPrivateKeyInfo from the
encryption algorithm name and the encrypted data. |
Method Summary | |
String |
getAlgName()
Returns the encryption algorithm. |
AlgorithmParameters |
getAlgParameters()
Returns the algorithm parameters used by the encryption algorithm. |
byte[] |
getEncoded()
Returns the ASN.1 encoding of this object. |
byte[] |
getEncryptedData()
Returns a copy of the encrypted data. |
PKCS8EncodedKeySpec |
getKeySpec(Cipher c)
Extract the enclosed PKCS8EncodedKeySpec object from the encrypted data and return it. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public EncryptedPrivateKeyInfo(byte[] encoded) throws IOException
EncryptedPrivateKeyInfo
from
its ASN.1 encoding.
encoded
- the ASN.1 encoding of this object.
NullPointerException
- if the encoded
is null.
IOException
- if error occurs when parsing the ASN.1 encoding.public EncryptedPrivateKeyInfo(String algName, byte[] encryptedData) throws NoSuchAlgorithmException
EncryptedPrivateKeyInfo
from the
encryption algorithm name and the encrypted data.
Note: the encrypedData
is cloned when constructing
this object.
If encryption algorithm has associated parameters use the constructor
with AlgorithmParameters as the parameter.
algName
- algorithm name.encryptedData
- encrypted data.
NullPointerException
- if algName
or
encryptedData
is null.
IllegalArgumentException
- if encryptedData
is empty, i.e. 0-length.
NoSuchAlgorithmException
- if the specified algName is
not supported.public EncryptedPrivateKeyInfo(AlgorithmParameters algParams, byte[] encryptedData) throws NoSuchAlgorithmException
EncryptedPrivateKeyInfo
from the
encryption algorithm parameters and the encrypted data.
Note: the encrypedData
is cloned when constructing
this object.
algParams
- the algorithm parameters for the encryption
algorithm. algParams.getEncoded()
should return
the ASN.1 encoded bytes of the parameters
field
of the AlgorithmIdentifer
component of the
EncryptedPrivateKeyInfo
type.encryptedData
- encrypted data.
NullPointerException
- if algParams
or
encryptedData
is null.
IllegalArgumentException
- if encryptedData
is empty, i.e. 0-length.
NoSuchAlgorithmException
- if the specified algName of
the specified algParams
parameter is not supported.Method Detail |
public String getAlgName()
public AlgorithmParameters getAlgParameters()
public byte[] getEncryptedData()
public PKCS8EncodedKeySpec getKeySpec(Cipher c) throws InvalidKeySpecException
InvalidKeySpecException
- if the given cipher is
inappropriate for the encrypted data or the encrypted
data is corrupted and cannot be decrypted.public byte[] getEncoded() throws IOException
IOException
- if error occurs when constructing its
ASN.1 encoding.
|
JavaTM 2 Platform Std. Ed. v1.4.2 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright © 2003, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.