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 }
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Constructs (i.e., parses) an
EncryptedPrivateKeyInfo from
its ASN.1 encoding. | |||||||||||
Constructs an
EncryptedPrivateKeyInfo from the
encryption algorithm name and the encrypted data. | |||||||||||
Constructs an
EncryptedPrivateKeyInfo from the
encryption algorithm parameters and the encrypted data. |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Returns the encryption algorithm.
| |||||||||||
Returns the algorithm parameters used by the encryption algorithm.
| |||||||||||
Returns the ASN.1 encoding of this object.
| |||||||||||
Returns the encrypted data.
| |||||||||||
Extract the enclosed PKCS8EncodedKeySpec object from the
encrypted data and return it.
| |||||||||||
Extract the enclosed PKCS8EncodedKeySpec object from the
encrypted data and return it.
| |||||||||||
Extract the enclosed PKCS8EncodedKeySpec object from the
encrypted data and return it.
| |||||||||||
Extract the enclosed PKCS8EncodedKeySpec object from the
encrypted data and return it.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() |
Constructs (i.e., parses) an EncryptedPrivateKeyInfo
from
its ASN.1 encoding.
encoded | the ASN.1 encoding of this object. The contents of the array are copied to protect against subsequent modification. |
---|
NullPointerException | if the encoded is null. |
---|---|
IOException | if error occurs when parsing the ASN.1 encoding. |
Constructs an EncryptedPrivateKeyInfo
from the
encryption algorithm name and the encrypted data.
Note: This constructor will use null as the value of the algorithm parameters. If the encryption algorithm has parameters whose value is not null, a different constructor, e.g. EncryptedPrivateKeyInfo(AlgorithmParameters, byte[]), should be used.
algName | encryption algorithm name. See Appendix A in the Java Cryptography Architecture Reference Guide for information about standard Cipher algorithm names. |
---|---|
encryptedData | encrypted data. The contents of
encrypedData are copied to protect against subsequent
modification when constructing this object. |
NullPointerException | if algName or
encryptedData is null. |
---|---|
IllegalArgumentException | if encryptedData
is empty, i.e. 0-length. |
NoSuchAlgorithmException | if the specified algName is not supported. |
Constructs an EncryptedPrivateKeyInfo
from the
encryption algorithm parameters and the encrypted data.
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. The contents of
encrypedData are copied to protect against
subsequent modification when constructing this object. |
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.
|
Returns the encryption algorithm.
Note: Standard name is returned instead of the specified one in the constructor when such mapping is available. See Appendix A in the Java Cryptography Architecture Reference Guide for information about standard Cipher algorithm names.
Returns the algorithm parameters used by the encryption algorithm.
Returns the ASN.1 encoding of this object.
IOException | if error occurs when constructing its ASN.1 encoding. |
---|
Returns the encrypted data.
Extract the enclosed PKCS8EncodedKeySpec object from the
encrypted data and return it.
Note: In order to successfully retrieve the enclosed
PKCS8EncodedKeySpec object, cipher
needs
to be initialized to either Cipher.DECRYPT_MODE or
Cipher.UNWRAP_MODE, with the same key and parameters used
for generating the encrypted data.
cipher | the initialized cipher object which will be used for decrypting the encrypted data. |
---|
NullPointerException | if cipher
is null. |
---|---|
InvalidKeySpecException | if the given cipher is inappropriate for the encrypted data or the encrypted data is corrupted and cannot be decrypted. |
Extract the enclosed PKCS8EncodedKeySpec object from the encrypted data and return it.
decryptKey | key used for decrypting the encrypted data. |
---|
NullPointerException | if decryptKey
is null. |
---|---|
NoSuchAlgorithmException | if cannot find appropriate cipher to decrypt the encrypted data. |
InvalidKeyException | if decryptKey
cannot be used to decrypt the encrypted data or the decryption
result is not a valid PKCS8KeySpec. |
Extract the enclosed PKCS8EncodedKeySpec object from the encrypted data and return it.
decryptKey | key used for decrypting the encrypted data. |
---|---|
providerName | the name of provider whose Cipher implementation will be used. |
NullPointerException | if decryptKey
or providerName is null. |
---|---|
NoSuchProviderException | if no provider
providerName is registered. |
NoSuchAlgorithmException | if cannot find appropriate cipher to decrypt the encrypted data. |
InvalidKeyException | if decryptKey
cannot be used to decrypt the encrypted data or the decryption
result is not a valid PKCS8KeySpec. |
Extract the enclosed PKCS8EncodedKeySpec object from the encrypted data and return it.
decryptKey | key used for decrypting the encrypted data. |
---|---|
provider | the name of provider whose Cipher implementation will be used. |
NullPointerException | if decryptKey
or provider is null. |
---|---|
NoSuchAlgorithmException | if cannot find appropriate
cipher to decrypt the encrypted data in provider . |
InvalidKeyException | if decryptKey
cannot be used to decrypt the encrypted data or the decryption
result is not a valid PKCS8KeySpec. |