# helint-encryption-starter **Repository Path**: hackerjj/helint-encryption-starter ## Basic Information - **Project Name**: helint-encryption-starter - **Description**: Helint-接口加解密-starter - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-01-25 - **Last Updated**: 2024-01-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

Helint-接口加解密-starter

Version 1.0.0 by junjunhuang

基于RSA CBC进行接口数据的加解密操作,目前支持POST/GET请求

## 说明 SpringBoot 通过Filter与AOP实现请求加密解密功能 > 对所有请求信息进行解密,解密之后传入Controller进行处理,Controller 处理完成之后返回结果信息在进行加密返回; > > **执行流程:** > > 前端请求(加密) -> Filter(解密) -> AOP -> Controller -> AOP(加密) -> Filter -> 前端(解密) ## 快速开始 1. 在所需要开启接口加密的工程模块中[pom.xml]中添加相关依赖,如下以maven为例: ```java com.helint.component.encryption helint-encryption-starter 1.0.0 ``` 2. 在配置中开启加密, 及配置RSA需要的加解密密钥 ```yaml rsa: encrypt: # 是否开启加密 true or false enable: false # RSA密钥 aesKey: G99YPUMGNO78FG8W04LKXKUHMO89AUQ0 # 接口URL白名单 ignore-urls: - "/error" - "/post2" ``` 3. 注意 - 本次GET与POST请求分开处理: GET 请求的加密参数需要使用:`encryptData`, POST 整个请求体都是加密参数. ``` GET请求示例: 前端: 请求URL: /get 请求参数:String userId 非加密请求传参为: /get?userId=123456 加密请求传参为: /get?encryptData=加密密文 加密密文格式:需要将传参转化为完整JSON字符串,在进行加密处理后传参,固定参数名为"encryptData", 如本例的需加密的完整字符串为:{"userId":"123456"},需要前端注意 ``` 完成上述操作, 即完成可使用了~ ## License [Apache License 2.0](./LICENSE)