Interface PasswordEncoder
- All Known Implementing Classes:
Argon2IdPasswordEncoder,BCryptPasswordEncoder,MD5PasswordEncoder,MessageDigestPasswordEncoder,NoOpPasswordEncoder,PBKDF2PasswordEncoder,SHAMD5PasswordEncoder,SHAPasswordEncoder
public interface PasswordEncoder
Service interface for encoding passwords.
The preferred implementation is
BCryptPasswordEncoder.- Author:
- Titouan COMPIEGNE (titouan.compiegne at graviteesource.com), GraviteeSource Team
-
Method Summary
Modifier and TypeMethodDescriptionencode(CharSequence rawPassword) Encode the raw password.default Stringencode(CharSequence rawPassword, byte[] salt) Encode the raw password.booleanmatches(CharSequence rawPassword, String encodedPassword) Verify the encoded password obtained from storage matches the submitted raw password after it too is encoded.default booleanmatches(CharSequence rawPassword, String encodedPassword, byte[] salt) Verify the encoded password obtained from storage matches the submitted raw password after it too is encoded.default booleanmatches(CharSequence rawPassword, String encodedPassword, String salt) Verify the encoded password obtained from storage matches the submitted raw password after it too is encoded.
-
Method Details
-
encode
Encode the raw password. Generally, a good encoding algorithm applies a SHA-1 or greater hash combined with an 8-byte or greater randomly generated salt.- Parameters:
rawPassword- the raw password to encode
-
encode
Encode the raw password. Generally, a good encoding algorithm applies a SHA-1 or greater hash combined with an 8-byte or greater randomly generated salt.- Parameters:
rawPassword- the raw password to encodesalt- the salt use to encode the rawPassword
-
matches
Verify the encoded password obtained from storage matches the submitted raw password after it too is encoded. Returns true if the passwords match, false if they do not. The stored password itself is never decoded.- Parameters:
rawPassword- the raw password to encode and matchencodedPassword- the encoded password from storage to compare with- Returns:
- true if the raw password, after encoding, matches the encoded password from storage
-
matches
Verify the encoded password obtained from storage matches the submitted raw password after it too is encoded. Returns true if the passwords match, false if they do not. The stored password itself is never decoded.- Parameters:
rawPassword- the raw password to encode and matchencodedPassword- the encoded password from storage to compare withsalt- the salt use to compare the rawPassword and the encodedPassword- Returns:
-
matches
Verify the encoded password obtained from storage matches the submitted raw password after it too is encoded. Returns true if the passwords match, false if they do not. The stored password itself is never decoded.- Parameters:
rawPassword- the raw password to encode and matchencodedPassword- the encoded password from storage to compare withsalt- the salt use to compare the rawPassword and the encodedPassword- Returns:
-