SpringBoot—jasypt加解密库的使用方法

WX:CodingTechWork,一起工作学习总结。

概述

  在开发时,经常遇到数据库连接,不可避免需要使用密码,不管是开发还是测试环境,为了安全都不建议使用明文密码,我们都需要对明文密码进行加密使用,jasypt就是一个通用的加解密库。下面我们一起学习总结一下如何在代码和命令行中使用该工具库进行加解密。

代码应用

pom依赖

在pom.xml中添加jasypt依赖


    com.github.ulisesbocchio
    jasypt-spring-boot-starter
    1.14

命令行加解密

在仓库位置repository\org\jasypt\jasypt\1.9.2中找到jasypt-1.9.2.jar包,在linux或者windows命令行中执行

加密

格式

java -cp jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input='明文密码' password=自定义秘钥 algorithm=PBEWithMD5AndDES

示例

java -cp jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input='123456' password=SELFCODE algorithm=PBEWithMD5AndDES

----ENVIRONMENT-----------------

Runtime: Oracle Corporation Java HotSpot(TM) 64-Bit Server VM 25.65-b01 



----ARGUMENTS-------------------

algorithm: PBEWithMD5AndDES
input: 123456
password: SELFCODE



----OUTPUT----------------------

Fhp3CClYBcVoxsbHBI345A==

解密

格式

java -cp jasypt-1.9.2.jar  org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI input='明文加密值' password=自定义秘钥 algorithm=PBEWithMD5AndDES

示例

java -cp jasypt-1.9.2.jar  org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI input='Fhp3CClYBcVoxsbHBI345A==' password=SELFCODE algorithm=PBEWithMD5AndDES

----ENVIRONMENT-----------------

Runtime: Oracle Corporation Java HotSpot(TM) 64-Bit Server VM 25.65-b01 



----ARGUMENTS-------------------

algorithm: PBEWithMD5AndDES
input: Fhp3CClYBcVoxsbHBI345A==
password: SELFCODE



----OUTPUT----------------------

123456

配置文件

jasypt:
  encryptor:
    password: SELFCODE #加盐值
spring:
  datasource:
    url: jdbc:mysql:loadbalance://10.0.0.1:3306,10.0.0.2:3306,10.0.0.3:3306/db01?connectTimeout=1000&autoReconnect=true&roundRobinLoadBalance=true&loadBalancePingTimeout=1000&loadBalanceBlacklistTimeout=30000&useUnicode=true&characterEncoding=UTF-8&failOverReadOnly=false&useSSL=false
    username: root
    password: ENC(Fhp3CClYBcVoxsbHBI345A==)

你可能感兴趣的:(SpringBoot—jasypt加解密库的使用方法)