jasypt 加密解密+自定义加密算法
1.引用jar包
gradle:
implementation group: 'com.github.ulisesbocchio', name: 'jasypt-spring-boot-starter', version: '3.0.3'maven:
<dependency><groupId>com.github.ulisesbocchio</groupId><artifactId>jasypt-spring-boot-starter</artifactId><version>3.0.3</version>
</dependency>
2.在application.yml文件中加入配置信息
#数据库配置文件加密
jasypt:encryptor:## 实现jasypt加密解密的类bean: desencrypt
对数据库密码加密,使用 ENC() 包裹起来,然后里面放置密文
###################################################
# 数据库配置 #
###################################################
# 数据库驱动
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
# 数据库链接
spring.datasource.url=jdbc:oracle:thin:@127.0.0.1:1521:orcl
# 数据库用户名
spring.datasource.username=NR
# 数据库密码
spring.datasource.password=ENC(TLI=)
# 数据源连接池中最大连接数
spring.datasource.hikari.maximum-pool-size=50
3.加密解密类
import gov.cnao.security.service.EncryptDecryptService;
import gov.cnao.security.service.impl.EncryptDecryptServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.jasypt.encryption.StringEncryptor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;@Component("desencrypt")
public class NrStringEncryptor implements StringEncryptor {private static Logger logger = LoggerFactory.getLogger(NrStringEncryptor.class);private EncryptDecryptService encryptDecryptService = new EncryptDecryptServiceImpl();@Overridepublic String encrypt(String message) {if (StringUtils.isNotBlank(message)){try {logger.info("加密前密码:"+message);message = encryptDecryptService.encrypt(message);logger.info("加密后密码:"+message);logger.info("配置信息加密成功!");} catch (Exception e) {logger.error("配置信息加密失败!");}}return message;}@Overridepublic String decrypt(String encryptedMessage) {if (StringUtils.isNotBlank(encryptedMessage)){try {logger.info("解密前密码:"+encryptedMessage);encryptedMessage = encryptDecryptService.decrypt(encryptedMessage);logger.info("解密后密码:"+encryptedMessage);logger.info("配置信息解密成功!");} catch (Exception e) {logger.error("配置信息解密失败!");}}return encryptedMessage;}
}
4. 自定义加密算法
jar包:算法包
jasypt 加密解密+自定义加密算法相关推荐
- jasypt加密解密
jasypt加密解密 1. 导入依赖 <!--jasypt--> <dependency><groupId>com.github.ulisesbocchio< ...
- Java 加密解密 对称加密算法 非对称加密算法 MD5 BASE64 AES RSA
[最简单的加密] 1.简单的概念 明文:加密前的信息 密文:机密后的信息 算法:加密或解密的算法 密钥:算法使用的钥匙(读作miyao,正确应该是miyue,但是大家都读miyao) 2.简单的例子 ...
- android图片资源加密解密,Android Glide实现图片加密解密 自定义格式
前言 Glide作为一个简单易用的库,平时我们使用基本上就是 Glide.with(this).load(data).into(view) 本文主要介绍,如何加载已加密的图片.围绕2种类型:File本 ...
- openssl_sign() 语法+RSA公私钥加密解密,非对称加密算法详解
其实有时候觉得写博客好烦,就个函数就开篇博客.很小的意见事情而已,知道的人看来多取一举,或者说没什么必要,浪费时间,不知道的人就会很郁闷.技术就是这样的,懂的人觉得真的很简单啊,不知道的人真的好难.. ...
- 使用jasypt加密解密
相关工具版本如下: Spring Boot 2.1.11.RELEASE Gradle 4.8 1.在build.gradle导入Jar implementation 'c ...
- MyBatis-Plus数据安全保护(加密解密)
项目创建 POM依赖 <dependency><!--MyBatis-Plus 企业级模块--><groupId>com.baomidou</groupId& ...
- SpringBoot使用jasypt加解密密码
在我们的服务中不可避免的需要使用到一些秘钥(数据库.redis等):使用过SpringBoot配置文件的朋友都知道,资源文件中的内容通常情况下是明文显示,安全性就比较低一些.打开application ...
- Java 加密 AES 对称加密算法
版权声明:本文为博主原创文章,未经博主允许不得转载. [AES] 一种对称加密算法,DES的取代者. 加密相关文章见:Java 加密解密 对称加密算法 非对称加密算法 MD5 BASE64 AES R ...
- Springboot之Jasypt配置文件加密/解密
Jasypt配置文件加密/机密 一.Jasypt介绍 二.Springboot整合Jasypt 2.1 环境配置 2.2 添加依赖 2.3 添加Jasypt配置 2.4 编写加/解密工具类 2.5 修 ...
最新文章
- rocketmq-flink
- 电脑有回声_电脑麦克属性调整(用于回声消除)
- ffmpeg拿AVPacket做缓冲队列时注意
- php smarty 时间,smarty的时间格式-详细 | 时刻需
- linux 修改文件名_Linux常用命令
- android+阴影+xml,Android 阴影视图 ShadowViewHelper
- 数据分析中的可视化-常见图形
- 关于iframe的一点发现与思考
- PXE+kickstart——实现网络批量装机
- JDBC14 ORM03 JavaBean封装
- 变分模态分解算法matlab程序,一种基于变分模态分解理论和K最近邻算法的心电信号分类方法与流程...
- 软件工程(需求分析)
- 新浪微博爬取笔记(4):数据清理
- 盛格塾丨品鉴《金石录后序》
- js 十六进制,八进制,二进制
- 射频开关:SPDT、级联、树形和矩阵开关
- linux vi 编辑器下经常会用到保存退出与不保存退出
- 【算法上车③】华为摄像头rpm签名校验并安装调试
- 人工智能行业,就业方向和研究领域的简单介绍
- iPhone SE3值得入手吗,如今首批用户的评价新鲜出炉