用户同步设计方案
用户同步数据是比较敏感的,传输中需要考虑安全性、性能和易用性。依据这三个特征采用非对称加密与对称加密结合方式,既能保存安全性,以能兼顾性能。
加密方案概述
- 采用 "非对称加密 + 对称加密" 的混合模式
- 服务端生成 RSA 密钥对,客户端持有公钥
- 客户端请求时生成 AES 随机密钥,用 RSA 公钥加密后发送
- 服务端用 RSA 私钥解密得到 AES 密钥,用此密钥加密返回数据
- 客户端用本地 AES 密钥解密获取数据
加密方案说明
安全性保障:
- 采用 RSA 2048 位和 AES 256 位加密算法,满足高安全性要求
- 每次通信使用随机生成的 AES 密钥,避免密钥重复使用风险
- 应用启动生成密钥对,不对密钥存储,每次启动重新生成
- 添加请求时间戳和签名机制,防止重放攻击
实现流程:
- 服务端启动时生成 RSA 密钥对,并提供公钥获取接口
- 客户端调用接口前获取首先获取服务端公钥
- 客户端请求数据时:
- 生成随机 AES 密钥
- 用 RSA 公钥加密 AES 密钥
- 发送加密的 AES 密钥和请求参数
- 服务端响应时:
- 用 RSA 私钥解密得到 AES 密钥
- 用 AES 密钥加密用户数据并返回
- 客户端用本地 AES 密钥解密获取数据
接口地址
测试环境:统一接口平台
