当前位置: 首页 > news >正文

点击下载app安装石家庄seo顾问

点击下载app安装,石家庄seo顾问,网站设计制作都有哪些,全部游戏免费(试玩)Springboot实现ENC加密 1、导入依赖2、配置加密秘钥&#xff08;盐&#xff09;3、获取并配置密文4、重启项目测试5、自定义前缀、后缀6、自定义加密方式 1、导入依赖 关于版本&#xff0c;需要根据spring-boot版本&#xff0c;自行修改 <dependency><groupId>co…

Springboot实现ENC加密

  • 1、导入依赖
  • 2、配置加密秘钥(盐)
  • 3、获取并配置密文
  • 4、重启项目测试
  • 5、自定义前缀、后缀
  • 6、自定义加密方式

1、导入依赖

关于版本,需要根据spring-boot版本,自行修改

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

2、配置加密秘钥(盐)

可以在配置文件中自定义一个加密秘钥(盐),

jasypt:encryptor:password: serfgsjf

3、获取并配置密文

在测试类中,对密码进行加密,获取密文

@SpringBootTest
@RunWith(SpringRunner.class)
public class myTest {@Resourceprivate StringEncryptor jasyptStringEncryptor;@Testpublic void encodeMysql() {System.out.println( "mysql密码加密密文:" + jasyptStringEncryptor.encrypt("123456") );System.out.println("解密密文:" + jasyptStringEncryptor.decrypt(jasyptStringEncryptor.encrypt("123456")));}
}

运行结果
在这里插入图片描述
配置密码
在这里插入图片描述

4、重启项目测试

在这里插入图片描述

5、自定义前缀、后缀

jasypt:encryptor:password: serfgsjfproperty:prefix: ABC(   # 自定义前缀suffix: )abc   # 自定义后缀

配置密码

spring:datasource:password: ABC(W6FAAdoHve471ySHYQ7C5g8i56FWbLsivDBpNMWaAsq5RfthfC616aOPA4j0LKUG)abc

6、自定义加密方式

如果不想使用默认的加密方式,支持自定义

新建配置类

package com.hyq.config;import org.jasypt.encryption.StringEncryptor;
import org.jasypt.encryption.pbe.PooledPBEStringEncryptor;
import org.jasypt.encryption.pbe.config.SimpleStringPBEConfig;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class MyEncryptorCfg {@Bean(name = "myStringEncryptor")public StringEncryptor myStringEncryptor() {PooledPBEStringEncryptor encryptor = new PooledPBEStringEncryptor();SimpleStringPBEConfig config = new SimpleStringPBEConfig();// 用于设置加密密钥。密钥是用于加密和解密字符串的关键信息。config.setPassword("serfgsjf");// 加密算法的名称。此处选择了PBEWithMD5AndDES算法,这是一种对称加密算法。config.setAlgorithm("PBEWITHHMACSHA512ANDAES_256");// 用于设置加密时迭代次数的数量,增加迭代次数可以使攻击者更难进行密码破解。config.setKeyObtentionIterations("1000");// 加密器池的大小。池是一组加密器实例,可确保加密操作的并发性。config.setPoolSize("1");// 用于设置JCE(Java Cryptography Extension)提供程序的名称。config.setProviderName("SunJCE");// 用于设置生成盐的类名称。在此配置中,我们使用了org.jasypt.salt.RandomSaltGenerator,表示使用随机生成的盐。config.setSaltGeneratorClassName("org.jasypt.salt.RandomSaltGenerator"); // 用于设置Jasypt使用的初始化向量(IV)生成器的类名。初始化向量是在加密过程中使用的一个固定长度的随机数,用于加密数据块,使每个数据块的加密结果都是唯一的。在此配置中,我们使用了org.jasypt.iv.RandomIvGenerator类,该类是一个随机生成器,用于生成实时随机IV的实例。这样可以确保每次加密的IV都是唯一的,从而增加加密强度。config.setIvGeneratorClassName("org.jasypt.iv.RandomIvGenerator");// 指定加密输出类型。在此配置中,我们选择了base64输出类型。config.setStringOutputType("base64"); encryptor.setConfig(config);return encryptor;}
}

使用自定义的方案生成密文

@SpringBootTest
@RunWith(SpringRunner.class)
public class myTest {@Autowiredprivate MyEncryptorCfg myEncryptorCfg;@Testpublic void encodePwd() {System.out.println("加密密文:" + myEncryptorCfg.myStringEncryptor().encrypt("123456"));System.out.println("解密明文:" + myEncryptorCfg.myStringEncryptor().decrypt(myEncryptorCfg.myStringEncryptor().encrypt("123456")));}}

运行结果
在这里插入图片描述
配置密码

spring:datasource:password: ABC(1PHEw/VIlntBkkQP9ZnyjcXeH2BinJYhoI/0e2jKxXb2W7C/Nj6R6Lcv6opWDBhu)abc

测试
在这里插入图片描述

http://www.dinnco.com/news/70532.html

相关文章:

  • 做外贸最好的网站seo关键词工具
  • 都匀经济开发区建设局网站微信营销怎么做
  • 网站工商标识做网站的公司负责阻断艾滋病的药有哪些
  • 做健身推广网站关键词是怎么排名的
  • wordpress更改上传下载目录轻松seo优化排名
  • 7万字短篇小说哪家网站做的好百度url提交
  • 政府门户网站建设经验百度网站优化软件
  • 品牌网站应该怎么做班级优化大师官网
  • java网站开发文档课程设计如何建立个人网站的步骤
  • php网站支付宝接口唐山百度seo公司
  • 个人网站备案名称填写长沙优化科技有限公司
  • 北京ui网页设计素材淘宝seo是什么意思啊
  • 微商城 网站制作百度网站收录链接提交
  • 提供网站建设公司今日搜索排行榜
  • 大望路做网站的公司宣传推广方案
  • 全国城乡建设证件查询长沙百度快速优化排名
  • 商品房交易网seo推广效果
  • 在菲律宾做网站推广怎么样智慧营销系统平台
  • php语言开发网站流程如何进行电子商务网站推广
  • 网站项目建设背景b2b网站大全
  • 福甭市建设局网站网站在线推广
  • 上海如何优化网站网站建设技术解决方案
  • seo网络推广员招聘网站优化课程
  • 网站怎么做三个页面网站关键词优化排名公司
  • 厦门 做网站品牌营销服务
  • 怎么利用wordpress做网站网络培训机构排名前十
  • 网站托管公司哪家好百度竞价推广是什么意思
  • 电子商务网站建设 教学大纲企业网络营销成功案例
  • wordpress 中文 模板下载北京seo招聘
  • 一般网站建设seo推广主要做什么