Package com.jgcomptech.tools
Class SecurityTools.PasswordHashes
- java.lang.Object
-
- com.jgcomptech.tools.SecurityTools.PasswordHashes
-
- Enclosing class:
- SecurityTools
public static final class SecurityTools.PasswordHashes extends java.lang.Object
Contains methods dealing with hashing passwords.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static boolean
checkBCryptHashesMatch(java.lang.String enteredPassword, java.lang.String databasePassword, java.lang.String databaseSalt)
Checks if login hashes match.static boolean
checkHashesMatch(java.lang.String enteredPassword, java.lang.String databasePassword, java.lang.String databaseSalt)
Checks if login hashes match.static java.lang.String
createBCryptHash(java.lang.String passwordToHash, java.lang.String salt)
Creates a BCrypt Hash.static java.lang.String
createBCryptSaltString(int size)
Creates a BCrypt salt to use for hashing.static java.lang.String
createHash(java.lang.String passwordToHash, byte[] salt)
Creates a SHA512 Hash.static java.lang.String
createHash(java.lang.String passwordToHash, java.lang.String salt)
Creates a SHA512 Hash.static byte[]
createSaltByte(int size)
Creates a Secure Random salt to use for hashing.static java.lang.String
createSaltString(int size)
Creates a Secure Random salt to use for hashing.static java.security.SecureRandom
createSecureRandom()
Creates a Secure Random number.
-
-
-
Method Detail
-
createBCryptSaltString
public static java.lang.String createBCryptSaltString(int size)
Creates a BCrypt salt to use for hashing.- Parameters:
size
- Size as int to use as length of salt- Returns:
- Salt as string
-
createSaltString
public static java.lang.String createSaltString(int size) throws java.security.GeneralSecurityException
Creates a Secure Random salt to use for hashing.- Parameters:
size
- Size as int to use as length of salt- Returns:
- Salt as string
- Throws:
java.security.GeneralSecurityException
- if error occurs
-
createSecureRandom
public static java.security.SecureRandom createSecureRandom() throws java.security.GeneralSecurityException
Creates a Secure Random number.- Returns:
- Secure random number as a SecureRandom object
- Throws:
java.security.GeneralSecurityException
- if error occurs
-
createSaltByte
public static byte[] createSaltByte(int size) throws java.security.GeneralSecurityException
Creates a Secure Random salt to use for hashing.- Parameters:
size
- Size as int to use as length of salt- Returns:
- Salt as byte array
- Throws:
java.security.GeneralSecurityException
- if error occurs
-
createBCryptHash
public static java.lang.String createBCryptHash(java.lang.String passwordToHash, java.lang.String salt)
Creates a BCrypt Hash.- Parameters:
passwordToHash
- Password to hashsalt
- Salt as string to use for hashing- Returns:
- Hashed password as string
-
createHash
public static java.lang.String createHash(java.lang.String passwordToHash, byte[] salt) throws java.security.GeneralSecurityException
Creates a SHA512 Hash.- Parameters:
passwordToHash
- Password to hashsalt
- Salt as byte array to use for hashing- Returns:
- Hashed password as string
- Throws:
java.security.GeneralSecurityException
- if error occurs
-
createHash
public static java.lang.String createHash(java.lang.String passwordToHash, java.lang.String salt) throws java.security.GeneralSecurityException
Creates a SHA512 Hash.- Parameters:
passwordToHash
- Password to hashsalt
- Salt as string to use for hashing- Returns:
- Hashed password as string
- Throws:
java.security.GeneralSecurityException
- if error occurs
-
checkBCryptHashesMatch
public static boolean checkBCryptHashesMatch(java.lang.String enteredPassword, java.lang.String databasePassword, java.lang.String databaseSalt)
Checks if login hashes match.- Parameters:
enteredPassword
- Password to validate.databasePassword
- Password from database to check against.databaseSalt
- Password salt from database.- Returns:
- True if hashes match.
-
checkHashesMatch
public static boolean checkHashesMatch(java.lang.String enteredPassword, java.lang.String databasePassword, java.lang.String databaseSalt) throws java.security.GeneralSecurityException
Checks if login hashes match.- Parameters:
enteredPassword
- Password to validate.databasePassword
- Password from database to check against.databaseSalt
- Password salt from database.- Returns:
- True if hashes match.
- Throws:
java.security.GeneralSecurityException
- if error occurs
-
-