javax.crypto
public class EncryptedPrivateKeyInfo extends Object
EncryptedPrivateKeyInfo
ASN.1
type as specified in PKCS #8 -
Private-Key Information Syntax Standard.
The ASN.1 type EncryptedPrivateKeyInfo
is:
EncryptedPrivateKeyInfo ::= SEQUENCE { encryptionAlgorithm EncryptionAlgorithmIdentifier, encryptedData EncryptedData } EncryptionAlgorithmIdentifier ::= AlgorithmIdentifier EncrytpedData ::= OCTET STRING AlgorithmIdentifier ::= SEQUENCE { algorithm OBJECT IDENTIFIER, parameters ANY DEFINED BY algorithm OPTIONAL }
PKCS8EncodedKeySpec
Constructor and Description |
---|
EncryptedPrivateKeyInfo(AlgorithmParameters params,
byte[] encryptedData)
Create a new
EncryptedPrivateKeyInfo object from raw
encrypted data and the parameters used for encryption. |
EncryptedPrivateKeyInfo(byte[] encoded)
Create a new
EncryptedPrivateKeyInfo from an encoded
representation, parsing the ASN.1 sequence. |
EncryptedPrivateKeyInfo(String algName,
byte[] encryptedData)
Create a new
EncryptedPrivateKeyInfo from the cipher
name and the encrytpedData. |
Modifier and Type | Method and Description |
---|---|
String |
getAlgName()
Return the name of the cipher used to encrypt this key.
|
AlgorithmParameters |
getAlgParameters() |
byte[] |
getEncoded() |
byte[] |
getEncryptedData() |
PKCS8EncodedKeySpec |
getKeySpec(Cipher cipher) |
public EncryptedPrivateKeyInfo(AlgorithmParameters params, byte[] encryptedData) throws IllegalArgumentException, NoSuchAlgorithmException
EncryptedPrivateKeyInfo
object from raw
encrypted data and the parameters used for encryption.
The encryptedData
array is cloned.
params
- The encryption algorithm parameters.encryptedData
- The encrypted key data.IllegalArgumentException
- If the
encryptedData
array is empty (zero-length).NoSuchAlgorithmException
- If the algorithm
specified in the parameters is not supported.NullPointerException
- If encryptedData
is null.public EncryptedPrivateKeyInfo(byte[] encoded) throws IOException
EncryptedPrivateKeyInfo
from an encoded
representation, parsing the ASN.1 sequence.encoded
- The encoded info.IOException
- If parsing the encoded data fails.NullPointerException
- If encoded
is
null.public EncryptedPrivateKeyInfo(String algName, byte[] encryptedData) throws IllegalArgumentException, NoSuchAlgorithmException, NullPointerException
EncryptedPrivateKeyInfo
from the cipher
name and the encrytpedData.
The encryptedData
array is cloned.
algName
- The name of the algorithm (as an object identifier).encryptedData
- The encrypted key data.IllegalArgumentException
- If the
encryptedData
array is empty (zero-length).NoSuchAlgorithmException
- If algName is not
the name of a supported algorithm.NullPointerException
- If encryptedData
is null.public String getAlgName()
public AlgorithmParameters getAlgParameters()
public byte[] getEncoded() throws IOException
IOException
public byte[] getEncryptedData()
public PKCS8EncodedKeySpec getKeySpec(Cipher cipher) throws InvalidKeySpecException
InvalidKeySpecException