java.security

## Class KeyStore.PasswordProtection

- java.lang.Object
- - java.security.KeyStore.PasswordProtection

- All Implemented Interfaces:
    KeyStore.ProtectionParameter, Destroyable
  Enclosing class:
    KeyStore

      public static class KeyStore.PasswordProtection
      extends Object
      implements KeyStore.ProtectionParameter, Destroyable

  A password-based implementation of `ProtectionParameter`.
  Since:
    1.5

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `KeyStore.PasswordProtection(char[] password)` Creates a password parameter.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `destroy()` Clears the password.
    `char[]` | `getPassword()` Gets the password.
    `boolean` | `isDestroyed()` Determines if password has been cleared.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### KeyStore.PasswordProtection

          public KeyStore.PasswordProtection(char[] password)

      Creates a password parameter.

      The specified `password` is cloned before it is stored in the new `PasswordProtection` object.

      Parameters:
        `password` - the password, which may be `null`

  - ### Method Detail

    - #### 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:
        the password, which may be `null`
      Throws:
        `IllegalStateException` - if the password has been cleared (destroyed)
      See Also:
        `destroy()`

    - #### destroy

          public void destroy()
                       throws DestroyFailedException

      Clears the password.
      Specified by:
        `destroy` in interface `Destroyable`
      Throws:
        `DestroyFailedException` - if this method was unable to clear the password

    - #### isDestroyed

          public boolean isDestroyed()

      Determines if password has been cleared.
      Specified by:
        `isDestroyed` in interface `Destroyable`
      Returns:
        true if the password has been cleared, false otherwise

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2019, Oracle and/or its affiliates. All rights reserved.