| 
 | Java™ Platform Standard Ed. 6 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjavax.crypto.EncryptedPrivateKeyInfo
public class 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 EncryptedPrivateKeyInfofrom the
 encryption algorithm parameters and the encrypted data. | |
| EncryptedPrivateKeyInfo(byte[] encoded)Constructs (i.e., parses) an EncryptedPrivateKeyInfofrom
 its ASN.1 encoding. | |
| EncryptedPrivateKeyInfo(String algName,
                        byte[] encryptedData)Constructs an EncryptedPrivateKeyInfofrom 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 the encrypted data. | 
|  PKCS8EncodedKeySpec | getKeySpec(Cipher cipher)Extract the enclosed PKCS8EncodedKeySpec object from the encrypted data and return it. | 
|  PKCS8EncodedKeySpec | getKeySpec(Key decryptKey)Extract the enclosed PKCS8EncodedKeySpec object from the encrypted data and return it. | 
|  PKCS8EncodedKeySpec | getKeySpec(Key decryptKey,
           Provider provider)Extract the enclosed PKCS8EncodedKeySpec object from the encrypted data and return it. | 
|  PKCS8EncodedKeySpec | getKeySpec(Key decryptKey,
           String providerName)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. 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.
public EncryptedPrivateKeyInfo(String algName,
                               byte[] encryptedData)
                        throws NoSuchAlgorithmException
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.
public EncryptedPrivateKeyInfo(AlgorithmParameters algParams,
                               byte[] encryptedData)
                        throws NoSuchAlgorithmException
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.| Method Detail | 
|---|
public String getAlgName()
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.
public AlgorithmParameters getAlgParameters()
public byte[] getEncryptedData()
public PKCS8EncodedKeySpec getKeySpec(Cipher cipher)
                               throws InvalidKeySpecException
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.
public PKCS8EncodedKeySpec getKeySpec(Key decryptKey)
                               throws NoSuchAlgorithmException,
                                      InvalidKeyException
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.
public PKCS8EncodedKeySpec getKeySpec(Key decryptKey,
                                      String providerName)
                               throws NoSuchProviderException,
                                      NoSuchAlgorithmException,
                                      InvalidKeyException
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.
public PKCS8EncodedKeySpec getKeySpec(Key decryptKey,
                                      Provider provider)
                               throws NoSuchAlgorithmException,
                                      InvalidKeyException
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.
public byte[] getEncoded()
                  throws IOException
IOException - if error occurs when constructing its
 ASN.1 encoding.| 
 | Java™ Platform Standard Ed. 6 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.