首页 > 其他分享 >Jasypt工具类(jasypt-spring-boot-starter)

Jasypt工具类(jasypt-spring-boot-starter)

时间:2024-11-07 16:35:27浏览次数:4  
标签:String spring boot value jasypt Jasypt encryptor password config

import org.jasypt.encryption.pbe.PooledPBEStringEncryptor;
import org.jasypt.encryption.pbe.config.SimpleStringPBEConfig;

public class JasyptUtil {

/**
* Jasypt生成加密结果
* @param password 配置文件中设定的加密盐值
* @param value 加密值
* @return
*/
public static String encyptPwd(String password,String value){
PooledPBEStringEncryptor encryptor = new PooledPBEStringEncryptor();
encryptor.setConfig(cryptor(password));
String result = encryptor.encrypt(value);
return result;
}

/**
* 解密
* @param password 配置文件中设定的加密盐值
* @param value 解密密文
* @return
*/
public static String decyptPwd(String password,String value){
PooledPBEStringEncryptor encryptor = new PooledPBEStringEncryptor();
encryptor.setConfig(cryptor(password));
String result = encryptor.decrypt(value);
return result;
}

public static SimpleStringPBEConfig cryptor(String password){
SimpleStringPBEConfig config = new SimpleStringPBEConfig();
config.setPassword(password);
config.setAlgorithm("PBEWithMD5AndDES");
config.setKeyObtentionIterations("1000");
config.setPoolSize("1");
config.setProviderName("SunJCE");
config.setSaltGeneratorClassName("org.jasypt.salt.RandomSaltGenerator");
config.setStringOutputType("base64");
return config;
}


public static void main(String[] args) {
// 加密
String encPwd = encyptPwd("123456", "admin");
// 解密
String decPwd = decyptPwd("123456", "123456");
System.out.println(encPwd);
System.out.println(decPwd);
}
}

标签:String,spring,boot,value,jasypt,Jasypt,encryptor,password,config
From: https://www.cnblogs.com/wuxuemin/p/18533050

相关文章

  • Springboot 配置yml文件 ENC 加密及failed to bind properties under '********' to j
    1.添加依赖<dependency><groupId>com.github.ulisesbocchio</groupId><artifactId>jasypt-spring-boot-starter</artifactId><version>3.0.3</version></dependency>2.设置加密盐......
  • Springboot游戏网站322mj(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,游戏信息,游戏分类,拍卖行,卖家,装备购买,游戏周边,周边购买,点卡充值,充值信息,处罚公示,处罚申诉,商品分类开题报告内容一、研究背景与意义随着信息技术......
  • 【揭秘】Spring Boot配置文件与日志文件的神秘面纱!开发者必看!
    SpringBoot的配置文件与日志文件是应用程序配置和运行日志管理的关键组成部分。下面将详细介绍这两种文件:SpringBoot配置文件基本概述:SpringBoot支持多种配置文件格式,包括.properties、.yml和.yaml。.properties是传统的键值对形式,简单易懂,但当配置结构复杂时容易......
  • 【揭秘】Spring AOP:面向切面编程的神秘面纱!你也能成为编程高手
    SpringAOP(Aspect-OrientedProgramming,面向切面编程)是Spring框架中的一个重要特性,它允许开发者将横切关注点(如日志记录、事务管理、性能监控等)从业务逻辑代码中分离出来,通过定义切面(Aspect)来模块化这些横切关注点。1.SpringAOP基础1.1引入依赖首先,需要在项目中引入Sprin......
  • SpringBoot整合Thymeleaf详解
    文章目录SpringBoot整合Thymeleaf详解一、引言二、SpringBoot与Thymeleaf的整合1、配置Thymeleaf1.1、添加依赖1.2、配置属性2、创建Controller三、编写Thymeleaf模板四、总结SpringBoot整合Thymeleaf详解一、引言在现代JavaWeb开发中,SpringBoot因其简化配置和......
  • 这可能是最好的Spring教程!即便无基础也能看懂的入门Spring,仍在持续更新。
    开启这样一个系列的原因    这一段时间都在学spring,但是在学习的过程中一直都很难找到一个通俗易懂,又带了学习体系的文章教程,很多地方都不懂,需要自己去慢慢查询和理解,感觉学起来很耗时,所以我自己就像写一个这样能通俗易懂的Spring入门,让其他想我一样的小白也能速通入门。 ......
  • SpringBoot推荐图书阅读系统6c613 带论文文档1万字以上,文末可获取,
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统内容;用户,图书分类,图书信息开题报告内容一、课题背景与意义随着信息时代的到来,图书馆和在线阅读平台的书籍数量急剧增加,用户在寻找适合自己的阅读材料时......
  • SpringBoot外卖服务系统k83px 本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统内容:用户,商家,店铺信息,菜品分类,菜品信息,店铺公告开题报告内容一、研究背景与意义随着互联网技术的飞速发展,人们的生活方式正在发生深刻变革。在餐饮......
  • 基于SpringBoot的Java教学支持系统开发指南
    1系统概述1.1研究背景随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的管理显得特别重要。因此,使用计算机来管理教学辅助平台的相关信息成为必然。开发合适的教学辅助平台,可以方便管理人员对教学辅助平台......
  • SpringBoot Java教学辅助平台:构建高效学习环境
    1系统概述1.1研究背景随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的管理显得特别重要。因此,使用计算机来管理教学辅助平台的相关信息成为必然。开发合适的教学辅助平台,可以方便管理人员对教学辅助平台......