Encrypt-Thanos (springboot,springcloud http传输加解密框架,灭霸特别版 jdk1.8+支持)
,增加请求参数排序加密
git地址
一.功能介绍
-
springboot,springcloud项目快速开启前后端数据传输加密
-
提供多种加密方式(对称,非对称),支持自定义加密方式
-
集成简单,一个@EnableEncrypt注解即可开启全局加密规则,并支持@SeparateEncrypt类级别或方法级别细粒度控制加密
-
yml配置简单,并且提供提示描述
-
该框架推荐用在暴露给第三方接口加密传输场景中,关于有人提到避免重放攻击,可在传输中添加时间戳,唯一码方式避免
-
@SortSignEncryptjoin请求参数排序加密
注意:目前仅支持对application/json数据提交方式解密;表单提交不进行解密!
二.集成方式
https://search.maven.org/artifact/com.github.785175323/Encrypt-Thanos/1.1/jar
引入依赖~
<dependency>
<groupId>com.github.785175323</groupId>
<artifactId>Encrypt-Thanos</artifactId>
<version>1.1</version>
</dependency>
1.开启加密功能
- 编写yml配置文件开启功能
encrypt:
type: rsa #支持base64编码,aes对称加密,rsa非对称加密,custom自定义加密方式
privateKey: #rsa私钥
publicKey: #rsa公钥
debug: false #debug模式为true不开启加密
order: 1 #加密过滤器顺序号,不填则为0
secret: #aes加密方式秘钥
- 开启全局加密(伪代码)
此项必写,后面开启局部加密也要写
@EnableEncrypt
@SpringBootApplication
public class Application {}
- 开启局部加密方式:
@RestController
@SeparateEncrypt
public class Web {}
@PostMappint
@SeparateEncrypt
public Result get(@RequestBody Body body){}