美文网首页
SpringBoot—jasypt加解密库的使用方法

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

作者: Hughman | 来源:发表于2021-12-06 19:34 被阅读0次

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

    概述

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

    代码应用

    pom依赖

    在pom.xml中添加jasypt依赖

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

    命令行加解密

    在仓库位置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加解密库的使用方法

          本文链接:https://www.haomeiwen.com/subject/sqiyxrtx.html