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

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

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

  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混合加密替换亦可。

为啥采用混合加密方式

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

相关推荐
程序员爱钓鱼11 分钟前
Rust Trait Object详解:dyn Trait与动态分发
后端·面试·rust
AI 编程助手GPT15 分钟前
VS Code 1.133 实战:Claude 可免 GitHub 登录,HTML 保存后自动刷新
前端·html·github
灯澜忆梦34 分钟前
【基于GO的Web开发3】gin框架_HTML渲染
前端·golang·gin
小徐_23337 小时前
wot-ui-cli 1.1.0 发布:支持 OpenCode、Antigravity,wot-ui 图标迁移不再靠猜
前端
To_OC8 小时前
Next.js + Redis 构建笔记系统:Redis Hash 实战与性能优化
redis·后端·next.js
__zRainy__8 小时前
Node.js Web 框架选型指南:从 Express 到 Hono 的全景对比
前端·node.js·express·koa·nestjs·egg·fastify
西瓜有点饿8 小时前
PostCSS 和 UnoCSS 的作用和区别
前端·postcss
伟大的兔神8 小时前
我做了一个本地优先的 AI 图片工作台:Loomora v1.0.0 正式发布
前端·javascript·vue.js
90后的晨仔9 小时前
uni-app项目 Vue3 状态管理 Pinia 完全指南:从概念到实战的深度解析
前端
90后的晨仔10 小时前
uni-app 在 iOS 平台跳转页面时移除底部安全区域的完整技术指南
前端