Java 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;
  }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM