Spring Password Encryption

Let’s have a look how we can encrypt the user’s password before inserting into the database. Spring provides the PasswordEncoder interface which has multiple implementation. For example let’s use StandardPasswordEncoder. 
A standard PasswordEncoder implementation that uses SHA-256 hashing with 1024 iterations and a random 8-byte random salt value. It uses an additional system-wide secret value to provide additional protection.

First of all we need to define the following bean in the applicationContext.xml

<bean id="passwordEncoder" 

After this we need to autowire the PasswordEncoder bean and do following:

public class UserService {

    private PasswordEncoder passwordEncoder;

     * @param password the password
     * @return the encoded password
    public String encodePassword(final String password) {
        return passwordEncoder.encode(password);