Obtener el mismo valor hash mientras usa BCryptPasswordEncoder

Estoy usando Spring Security usando BCryptPasswordEncoder. Ahora, para cambiar la contraseña, lo que debo hacer es comparar la contraseña existente proporcionada por el usuario con el valor de la base de datos.

Pero s, como la sal se genera dinámicamente porBCryptPasswordEncoder, cada vez que obtengo un valor hash diferente del método siguiente y no necesariamente coincidiría con mi valor DB.

public static String encodePassword(String password) {
    BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
    String hashedPassword = passwordEncoder.encode(password);
    return hashedPassword;
} 

¿Cuál es el remedio para este problema? ¿Puedo identificar la sal utilizada para mi campo DB y usar la misma sal en el método anterior?

Respuestas a la pregunta(2)

Su respuesta a la pregunta