# Jasypt

# 介绍

Jasypt 是 Java 流行的加密库,使用 Jasypt-spring-boot-starter 可以和 springboot 整合

# 独立使用

# 配置依赖

    <dependency>
      <groupId>org.jasypt</groupId>
      <artifactId>jasypt</artifactId>
      <version>1.9.3</version>
    </dependency>

# 基本使用

public class Basic {

  public static void main(String[] args) {
    StandardPBEStringEncryptor encryptor = new StandardPBEStringEncryptor();
    // 配置加密解密的密码/salt值
    encryptor.setPassword("encrypt_password");
    // 对"raw_password"进行加密:S5kR+Y7CI8k7MaecZpde25yK8NKUnd6p
    String password = "raw_password";
    String encPwd = encryptor.encrypt(password);
    System.out.println(encPwd);
    // 再进行解密:raw_password
    String rawPwd = encryptor.decrypt(encPwd);
    System.out.println(rawPwd);
  }
}

# 整合 SpringBoot

# 配置依赖

		<dependency>
      <groupId>com.github.ulisesbocchio</groupId>
      <artifactId>jasypt-spring-boot-starter</artifactId>
      <version>3.0.2</version>
    </dependency>

# 基本使用

  • application.properties
jasypt.encryptor.password=encrypt_password
# 默认前缀后缀为ENC(),其中的内容会进行解密(原始密码为raw_password)
password=ENC(UhTCzia6QMJ/anHlLrIz4fdiMRhiYsvNIWfCpEHkcHNlZsJBsZHE7eN7zNKaDONC)
  • Controller.java
@RestController
public class Controller {

  // 自动解密为raw_password
  @Value("${password}")
  private String password;

  @GetMapping("/password")
  public String password() {
    return password;
  }
}
上次更新: 2/13/2025, 3:29:47 AM