Package rs.baselib.crypto
Class BlowfishPasswordHasher
java.lang.Object
rs.baselib.crypto.BlowfishPasswordHasher
- All Implemented Interfaces:
ExtendedPasswordHasher
,PasswordHasher
Uses salted Blowfish hashes from BCrypt.
- Since:
- 1.2.9
- Author:
- ralph
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ExtendedPasswordHasher
A static instance of the Blowfish hasher -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetPasswordHash
(String plainPassword) Returns a hash of the given plain password.boolean
Returns whether the given hash string was produced using the implemented hashing algorithm.boolean
testPassword
(String plainPassword, String passwordHash) Tests a plain Password whether it is the same as a previously hashed password.
-
Field Details
-
INSTANCE
A static instance of the Blowfish hasher
-
-
Constructor Details
-
BlowfishPasswordHasher
public BlowfishPasswordHasher()Constructor.
-
-
Method Details
-
getPasswordHash
Returns a hash of the given plain password.- Specified by:
getPasswordHash
in interfacePasswordHasher
- Parameters:
plainPassword
- the password to be hashed- Returns:
- the hash of the password
-
testPassword
Tests a plain Password whether it is the same as a previously hashed password.- Specified by:
testPassword
in interfacePasswordHasher
- Parameters:
plainPassword
- the plain password to be checkedpasswordHash
- the hash of another password- Returns:
true
when both passwords match each other
-
isHash
Returns whether the given hash string was produced using the implemented hashing algorithm.- Specified by:
isHash
in interfaceExtendedPasswordHasher
- Parameters:
passwordHash
- the hash to be checked- Returns:
true
when this hash was produced by this password hasher (or using the same algorithm).
-