当前位置 : 主页 > 编程语言 > java >

在SpringBoot中通过jasypt进行加密解密的方法

来源:互联网 收集:自由互联 发布时间:2021-07-07
1.用途 在SpringBoot中,通过jasypt可以进行加密解密. 这个是双向的, 且可以配置密钥. 2.使用: 2.1通过UT创建工具类,并认识jasypt import org.jasypt.util.text.BasicTextEncryptor;import org.junit.Test;public clas

1.用途

在SpringBoot中,通过jasypt可以进行加密解密. 这个是双向的, 且可以配置密钥.

2.使用:

2.1通过UT创建工具类,并认识jasypt

import org.jasypt.util.text.BasicTextEncryptor;
import org.junit.Test;
public class UtilTests {
  @Test
  public void jasyptTest() {
    BasicTextEncryptor encryptor = new BasicTextEncryptor();
    // application.properties, jasypt.encryptor.password
    encryptor.setPassword("abc");
    // encrypt root
    System.out.println(encryptor.encrypt("root"));
    System.out.println(encryptor.encrypt("root"));
    System.out.println(encryptor.encrypt("root"));
    // decrypt, the result is root
    System.out.println(encryptor.decrypt("UP/yojB7ie3apnh3mLTU7w=="));
    System.out.println(encryptor.decrypt("ik9FE3GiYLiHwchiyHg9QQ=="));
    System.out.println(encryptor.decrypt("9Obo/jq9EqmTE0QZaJFYrw=="));
  }
}

可以看出, 每次生成的密码是不一样的, 但是通过密钥,可以解密成一样的明文.

2.2在SpringBoot中配置jasypt

2.2.1配置密钥

jasypt.encryptor.password:abc

2.2.2使用

spring.datasource.url: jdbc:mysql://127.0.0.1:3306/tmp?useSSL=false&useUnicode=true&characterEncoding=utf-8

spring.datasource.username: ENC(ik9FE3GiYLiHwchiyHg9QQ==)

spring.datasource.password: ENC(ik9FE3GiYLiHwchiyHg9QQ==)

spring.datasource.driver-class-name: com.mysql.jdbc.Driver

2.2.3启动时配置密钥

java -jar -Djasypt.encryptor.password=abc xxx.jar

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对自由互联的支持。如果你想了解更多相关内容请查看下面相关链接

网友评论