public static class KeyStore.PasswordProtection extends Object implements KeyStore.ProtectionParameter, Destroyable
ProtectionParameter
.Constructor and Description |
---|
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.
|
Modifier and Type | Method and Description |
---|---|
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.
|
public PasswordProtection(char[] password)
The specified password
is cloned before it is stored
in the new PasswordProtection
object.
password
- the password, which may be null
public PasswordProtection(char[] password, String protectionAlgorithm, AlgorithmParameterSpec protectionParameters)
The specified password
is cloned before it is stored in the
new PasswordProtection
object.
password
- the password, which may be null
protectionAlgorithm
- the encryption algorithm name, for
example, PBEWithHmacSHA256AndAES_256
.
See the Cipher section in the
Java Cryptography Architecture Standard Algorithm Name
Documentation
for information about standard encryption algorithm names.protectionParameters
- the encryption algorithm parameter
specification, which may be null
NullPointerException
- if protectionAlgorithm
is
null
public String getProtectionAlgorithm()
'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.null
if none was setpublic AlgorithmParameterSpec getProtectionParameters()
null
,
if none was setpublic char[] getPassword()
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.
null
IllegalStateException
- if the password has
been cleared (destroyed)destroy()
public void destroy() throws DestroyFailedException
destroy
in interface Destroyable
DestroyFailedException
- if this method was unable
to clear the passwordpublic boolean isDestroyed()
isDestroyed
in interface Destroyable
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, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.