public final class PasswordUtil
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
DEFAULT_ALGORITHM |
static int |
DEFAULT_ITERATIONS |
static int |
DEFAULT_SALT_SIZE |
| Modifier and Type | Method and Description |
|---|---|
static java.lang.String |
buildPasswordHash(@NotNull java.lang.String password)
Generates a hash of the specified password with the default values
for algorithm, salt-size and number of iterations.
|
static java.lang.String |
buildPasswordHash(@NotNull java.lang.String password,
@NotNull ConfigurationParameters config)
Same as
buildPasswordHash(String, String, int, int) but retrieving
the parameters for hash generation from the specified configuration. |
static java.lang.String |
buildPasswordHash(@NotNull java.lang.String password,
@Nullable java.lang.String algorithm,
int saltSize,
int iterations)
Generates a hash of the specified password using the specified algorithm,
salt size and number of iterations into account.
|
static boolean |
isPlainTextPassword(@Nullable java.lang.String password)
Returns
true if the specified string doesn't start with a
valid algorithm name in curly brackets. |
static boolean |
isSame(@Nullable java.lang.String hashedPassword,
@NotNull char[] password)
Returns
true if hash of the specified password equals the
given hashed password. |
static boolean |
isSame(@Nullable java.lang.String hashedPassword,
@NotNull java.lang.String password)
Returns
true if hash of the specified password equals the
given hashed password. |
public static final java.lang.String DEFAULT_ALGORITHM
public static final int DEFAULT_SALT_SIZE
public static final int DEFAULT_ITERATIONS
public static java.lang.String buildPasswordHash(@NotNull
@NotNull java.lang.String password)
throws java.security.NoSuchAlgorithmException,
java.io.UnsupportedEncodingException
password - The password to be hashed.java.security.NoSuchAlgorithmException - If DEFAULT_ALGORITHM is not supported.java.io.UnsupportedEncodingException - If utf-8 is not supported.public static java.lang.String buildPasswordHash(@NotNull
@NotNull java.lang.String password,
@Nullable
@Nullable java.lang.String algorithm,
int saltSize,
int iterations)
throws java.security.NoSuchAlgorithmException,
java.io.UnsupportedEncodingException
password - The password to be hashed.algorithm - The desired hash algorithm. If the algorith is
null the DEFAULT_ALGORITHM will be used.saltSize - The desired salt size. If the specified integer is lower
that DEFAULT_SALT_SIZE the default is used.iterations - The desired number of iterations. If the specified
integer is lower than 1 the default value is used.java.security.NoSuchAlgorithmException - If the specified algorithm is not supported.java.io.UnsupportedEncodingException - If utf-8 is not supported.public static java.lang.String buildPasswordHash(@NotNull
@NotNull java.lang.String password,
@NotNull
@NotNull ConfigurationParameters config)
throws java.security.NoSuchAlgorithmException,
java.io.UnsupportedEncodingException
buildPasswordHash(String, String, int, int) but retrieving
the parameters for hash generation from the specified configuration.password - The password to be hashed.config - The configuration defining the details of the hash generation.java.security.NoSuchAlgorithmException - If the specified algorithm is not supported.java.io.UnsupportedEncodingException - If utf-8 is not supported.public static boolean isPlainTextPassword(@Nullable
@Nullable java.lang.String password)
true if the specified string doesn't start with a
valid algorithm name in curly brackets.password - The string to be tested.true if the specified string doesn't start with a
valid algorithm name in curly brackets.public static boolean isSame(@Nullable
@Nullable java.lang.String hashedPassword,
@NotNull
@NotNull char[] password)
true if hash of the specified password equals the
given hashed password.hashedPassword - Password hash.password - The password to compare.password equals
the given hashedPassword string.public static boolean isSame(@Nullable
@Nullable java.lang.String hashedPassword,
@NotNull
@NotNull java.lang.String password)
true if hash of the specified password equals the
given hashed password.hashedPassword - Password hash.password - The password to compare.password equals
the given hashedPassword string.Copyright © 2010 - 2023 Adobe. All Rights Reserved