org.springframework.security.crypto.password
Interface PasswordEncoder

All Known Implementing Classes:
BCryptPasswordEncoder, NoOpPasswordEncoder, StandardPasswordEncoder

public interface PasswordEncoder

Service interface for encoding passwords.


Method Summary
 String encode(CharSequence rawPassword)
          Encode the raw password.
 boolean matches(CharSequence rawPassword, String encodedPassword)
          Verify the encoded password obtained from storage matches the submitted raw password after it too is encoded.
 

Method Detail

encode

String encode(CharSequence rawPassword)
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.


matches

boolean matches(CharSequence rawPassword,
                String encodedPassword)
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 match
encodedPassword - the encoded password from storage to compare with
Returns:
true if the raw password, after encoding, matches the encoded password from storage