how to encrypt password in properties file in spring boot

To encrypt a password in a properties file in a Spring Boot application, you can follow these steps:

Step 1: Add Dependencies Add the necessary dependencies to your pom.xml file to use Spring Security and the required encryption libraries. For example, you can add the following dependencies:


Step 2: Configure Encryption Algorithm In your or application.yml file, configure the encryption algorithm to be used for password encryption. You can specify it like this:{bcrypt}$2a$10$yourBCryptHash

Replace {bcrypt}$2a$10$yourBCryptHash with the actual encrypted password. You can use a BCrypt encoder to generate this hash.

Step 3: Generate BCrypt Hash You can use a BCryptPasswordEncoder to generate a BCrypt hash for your password. You can do this in your Spring Boot application's configuration class. For example:

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

public class SecurityConfig {
    public BCryptPasswordEncoder passwordEncoder() {
        return new BCryptPasswordEncoder();

Step 4: Encrypt the Password Now, you can encrypt your plain text password using the BCryptPasswordEncoder bean you created in the previous step. For example:


public class PasswordEncryptionService {
    private final PasswordEncoder passwordEncoder;

    public PasswordEncryptionService(PasswordEncoder passwordEncoder) {
        this.passwordEncoder = passwordEncoder;

    public String encryptPassword(String plainTextPassword) {
        return passwordEncoder.encode(plainTextPassword);

Step 5: Use the Encrypted Password Finally, use the encrypted password in your or application.yml file as mentioned in Step 2.

That's it! You've configured password encryption for a Spring Boot application using BCrypt.