接口的加密解密

接口加密

1.接口参数加密(基础加密)

2.接口参数加密+接口时效性验证(一般达到这个级别已经非常安全了)

3.接口参数加密+时效性验证+私钥(达到这个级别安全性固若金汤)

4.接口参数加密+时效性验证+私钥+Https(我把这个级别称之为金钟罩,世间最安全莫过于此)

加密算法(对称加密和非对称加密):

对称加密:加密数据用的密钥,跟解密数据用的密钥是一样的。

非对称加密:加密数据用的密钥(公钥),跟解密数据用的密钥(私钥)是不一样的。

1.AES加密算法

2.DES加密算法

3.RSA加密算法(非对称加密算法)

4.Base64加密算法

5.MD5加密算法

HTTPS请求过程

在使用HTTPS是需要保证服务端配置正确了对应的安全证书

1.客户端发送请求到服务端

2.服务端返回公钥和证书到客户端

3.客户端接收后会验证证书的安全性,如果通过则会随机生成一个随机数,用公钥对其加密,发送到服务端

4.服务端接受到这个加密后的随机数后会用私钥对其解密得到真正的随机数,随后用这个随机数当做私钥对需要发送的数据进行对称加密

5.客户端在接收到加密后的数据使用私钥(即生成的随机值)对数据进行解密并且解析数据呈现结果给客户

6.SSL加密建立

公钥如何获取?

通过CA证书获取

HTTP请求过程(三次握手)?

1.建立连接完毕以后客户端会发送响应给服务端

2.服务端接受请求并且做出响应发送给客户端

3.客户端收到响应并且解析响应响应给客户

TCP/IP参考模型分为四层:

应用层(Application Layer)、

传输层Transport Layer)、

网络层(Internet Layer)、

链路层(Link Layer)

在Spring Boot中,可以使用RequestBodyAdvice和ResponseBodyAdvice来实现接口的加密和解密逻辑。这两个接口可以在方法中使用@RequestBody和@ResponseBody注解时生效。具体的实现步骤如下: 1. 创建一个自动配置类,比如AppConfig,用于配置加密和解密的相关参数。在该类中,可以使用@Bean注解创建一个AES对象,用于进行加密和解密操作。可以参考\[3\]中的示例代码。 2. 在自动配置类中,可以使用@Configuration注解标记该类为配置类,并使用@Resource注解注入CryptConfig对象,该对象用于获取加密和解密的相关配置参数。 3. 在加密和解密的逻辑中,可以使用AES对象进行加密和解密操作。可以根据具体的需求选择合适的加密模式、填充方式、密钥和向量等参数。 4. 在接口方法中,使用@RequestBody注解标记需要加密的请求数据,在方法中进行解密操作。然后处理相应的业务逻辑,并使用@ResponseBody注解标记需要加密的返回数据,在返回之前进行加密操作。 通过以上步骤,可以将加密和解密的逻辑提取出来,使接口方法只关注业务逻辑的处理。具体的实现可以参考\[2\]中的项目结构示例代码。 总结起来,使用Spring Boot的RequestBodyAdvice和ResponseBodyAdvice可以很方便地实现接口的加密和解密逻辑,提高代码的可维护性和安全性。 #### 引用[.reference_title] - *1* [springboot中如何优雅的对接口数据进行加密解密](https://blog.youkuaiyun.com/xinghui_liu/article/details/121208804)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [SpringBoot 接口加密解密,新姿势!](https://blog.youkuaiyun.com/qq_42914528/article/details/128168527)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值