数据安全-接口数据混合加密笔记

接口数据传输安全设计方案

采用非对称加密+对称加密混合方式,接口混合加、解密过程梳理:

  1. 后端准备sm2公钥和私钥
  2. 后端将SM2公钥传输到前端
  3. 前端生成SM4密钥
  4. 前端使用SM2公钥加密SM4秘钥,获得密文
  5. 使用SM4秘钥加密数据
  6. 将密文和加密数据传输至后端
  7. 后端使用SM2私钥解密密文,获得SM4秘钥
  8. 使用SM4秘钥解密加密数据,获取真实传输数据信息
  9. 其中、sm4秘钥由前端动态生成,可每个接口都动态生成回传,后端统一拦截解密, 后端响应也采用同一sm4加密回传(前端是知道其每次生成的sm4公钥的);
  10. 或者,同理采用请求发送的方式,后端也动态生成响应的sm4秘钥,由另一对中的公钥加密返回给前端私钥解密。那就需要两对公私钥,前、后端各保留一公一私钥(都仅成对中的一个)
  11. 后者更推荐,更灵活,要是由后端主动推送的情况下,前者无法满足;前者需要主动请求才会存在sm4对称加密的生成
  12. 采用RSA+AES混合加密替换亦可。

为啥采用混合加密方式

非对称加密+对称加密混合方式更不容易被破解。每次接口的对称密钥是动态生成,加密后放到请求头或响应头中回传,而非固定。

相关推荐
Access开发易登软件11 分钟前
Access开发导出PDF的N种姿势,你get了吗?
后端·低代码·pdf·excel·vba·access·access开发
蔗理苦44 分钟前
2025-09-05 CSS3——盒子模型
前端·css·css3
中国胖子风清扬1 小时前
Rust 序列化技术全解析:从基础到实战
开发语言·c++·spring boot·vscode·后端·中间件·rust
bobz9651 小时前
分析 docker.service 和 docker.socket 这两个服务各自的作用
后端
二川bro1 小时前
第25节:VR基础与WebXR API入门
前端·3d·vr·threejs
野犬寒鸦1 小时前
力扣hot100:旋转图像(48)(详细图解以及核心思路剖析)
java·数据结构·后端·算法·leetcode
上单带刀不带妹2 小时前
Node.js 的模块化规范是什么?CommonJS 和 ES6 模块有什么区别?
前端·node.js·es6·模块化
缘如风2 小时前
easyui 获取自定义的属性
前端·javascript·easyui
Suckerbin2 小时前
DarkHole: 2靶场渗透
笔记·安全·web安全·网络安全
诗书画唱2 小时前
【前端教程】JavaScript 实现图片鼠标悬停切换效果与==和=的区别
开发语言·前端·javascript