KeyStore.PasswordProtection
  public
  static
  
  
  class
  KeyStore.PasswordProtection
  
    extends Object
  
  
  
  
  
      implements
      
        Destroyable, 
      
        KeyStore.ProtectionParameter
      
  
  
| java.lang.Object | |
| ↳ | java.security.KeyStore.PasswordProtection | 
A password-based implementation of ProtectionParameter.
Summary
| Public constructors | |
|---|---|
| 
      PasswordProtection(char[] password)
      Creates a password parameter. | |
| 
      PasswordProtection(char[] password, String protectionAlgorithm, AlgorithmParameterSpec protectionParameters)
      Creates a password parameter and specifies the protection algorithm and associated parameters to use when encrypting a keystore entry. | |
| Public methods | |
|---|---|
| 
        
        
        
        
        
        void | 
      destroy()
      Clears the password. | 
| 
        
        
        
        
        
        char[] | 
      getPassword()
      Gets the password. | 
| 
        
        
        
        
        
        String | 
      getProtectionAlgorithm()
      Gets the name of the protection algorithm. | 
| 
        
        
        
        
        
        AlgorithmParameterSpec | 
      getProtectionParameters()
      Gets the parameters supplied for the protection algorithm. | 
| 
        
        
        
        
        
        boolean | 
      isDestroyed()
      Determines if password has been cleared. | 
| Inherited methods | |
|---|---|
Public constructors
PasswordProtection
public PasswordProtection (char[] password)
Creates a password parameter.
 The specified password is cloned before it is stored
 in the new PasswordProtection object.
| Parameters | |
|---|---|
| password | char: the password, which may benull | 
PasswordProtection
public PasswordProtection (char[] password, 
                String protectionAlgorithm, 
                AlgorithmParameterSpec protectionParameters)Creates a password parameter and specifies the protection algorithm and associated parameters to use when encrypting a keystore entry.
 The specified password is cloned before it is stored in the
 new PasswordProtection object.
| Parameters | |
|---|---|
| password | char: the password, which may benull | 
| protectionAlgorithm | String: the encryption algorithm name, for
     example,PBEWithHmacSHA256AndAES_256.
     See the Cipher section in the 
 Java Security Standard Algorithm Names Specification
     for information about standard encryption algorithm names. | 
| protectionParameters | AlgorithmParameterSpec: the encryption algorithm parameter
     specification, which may benull | 
| Throws | |
|---|---|
| NullPointerException | if protectionAlgorithmisnull | 
Public methods
destroy
public void destroy ()
Clears the password.
| Throws | |
|---|---|
| DestroyFailedException | if this method was unable to clear the password | 
getPassword
public char[] getPassword ()
Gets the password.
Note that this method returns a reference to the password. If a clone of the array is created it is the caller's responsibility to zero out the password information after it is no longer needed.
| Returns | |
|---|---|
| char[] | the password, which may be null | 
| Throws | |
|---|---|
| IllegalStateException | if the password has been cleared (destroyed) | 
See also:
getProtectionAlgorithm
public String getProtectionAlgorithm ()
Gets the name of the protection algorithm.
 If none was set then the keystore provider will use its default
 protection algorithm. The name of the default protection algorithm
 for a given keystore type is set using the
 'keystore.<type>.keyProtectionAlgorithm' security property.
 For example, the
 keystore.PKCS12.keyProtectionAlgorithm property stores the
 name of the default key protection algorithm used for PKCS12
 keystores. If the security property is not set, an
 implementation-specific algorithm will be used.
| Returns | |
|---|---|
| String | the algorithm name, or nullif none was set | 
getProtectionParameters
public AlgorithmParameterSpec getProtectionParameters ()
Gets the parameters supplied for the protection algorithm.
| Returns | |
|---|---|
| AlgorithmParameterSpec | the algorithm parameter specification, or null,
     if none was set | 
isDestroyed
public boolean isDestroyed ()
Determines if password has been cleared.
| Returns | |
|---|---|
| boolean | true if the password has been cleared, false otherwise | 
