📌 问题描述
用户手机号和收货地址需加密存储。请说明入库加密方案(如AES-GCM),以及密钥的安全管理和定期轮换策略。
✅ 回答要点
加密方案:使用AES-GCM模式,它提供加密和完整性校验,防止篡改。每个用户数据使用不同的初始化向量(IV),IV与密文一起存储。密钥使用主密钥(KEK)衍生出数据加密密钥(DEK)。
密钥管理:主密钥存放在专门的密钥管理服务(KMS)中,如AWS KMS、Vault或硬件安全模块(HSM)。应用启动时从KMS获取密钥并缓存在内存中。
定期轮换:采用”双密钥期”策略,保留当前密钥和上一代密钥。新数据用新密钥加密;老数据在访问时用旧密钥解密后再用新密钥加密(懒重加密)。同时设置密钥有效期(如90天),到期自动生成新版本。
🔗 相关知识
- 数据加密与密钥管理 - 加密方案与密钥管理策略