1.简介
jasypt(Java Simplified Encryption)是一个轻量级 Java 加密库,专为简化应用程序加密操作而设计,通过易用 API 帮助开发者无需深入密码学知识即可实现敏感数据保护。其核心特性包括:与 Spring Boot 深度集成实现配置属性的自动加解密(使用 ENC(密文) 格式即可自动解密);支持多种主流算法如 PBEWithMD5AndDES 和默认的 PBEWITHHMACSHA512ANDAES_256;采用分离式密钥管理机制,要求加密密钥必须通过环境变量或命令行动态注入,杜绝密钥泄露风险;提供完善的工具链如 Maven 插件支持命令行加密、配置文件动态解密代理及自定义盐生成器/IV 向量等参数配置。典型应用场景涵盖保护 Spring Boot 配置文件中的数据库密码/API 密钥、实现日志/数据库的 PII 信息脱敏,以及满足 GDPR/等保 2.0 等合规要求,其通过 AES-256 等标准算法结合随机盐与迭代哈希,在密钥妥善保管时可提供极高安全性保障。
2.加密敏感信息
2.1 引入 Maven 加密插件
在 pom.xml 中添加:
<build>
<plugins>
<plugin>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-maven-plugin</artifactId>
<version>3.0.5</version>
</plugin>
</plugins>
</build>
2.2 执行加密命令
在项目目录执行:
mvn jasypt:encrypt-value -Djasypt.encryptor.password="your-password" -Djasypt.plugin.value="原始敏感值"
控制台输出加密结果(如 ENC(In+7esX42WEldd+Wzr4FaI2H2w6d0jXMWfUM1m6HbR+43kV0J7Qq9uXYeGqQqJh6)),复制备用。
3.在 Spring Boot 中使用
3.1 添加依赖
<>
com.github.ulisesbocchio
jasypt-spring-boot-starter
3.0.5


