
1) 【一句话结论】未加密存储用户数据易引发数据泄露风险,需立即实施全链路加密并完善合规机制以降低风险。
2) 【原理/概念讲解】数据加密是对数据应用算法(密钥)转换,使其在未授权情况下无法解读的技术。类比:给用户信息装“密码锁”,只有持有“钥匙”(密钥)的授权方才能打开。核心是保障“不可读性”和“不可篡改性”。
3) 【对比与适用场景】
| 对比维度 | 存储加密(如AES) | 传输加密(如TLS) |
|---|---|---|
| 定义 | 数据静态存储(数据库、文件)时的加密 | 数据网络传输过程中的加密 |
| 特性 | 静态防护,防物理/数据库泄露 | 动态防护,防中间人攻击 |
| 使用场景 | 数据库字段(密码、身份证号)、文件存储 | API接口、网络请求、用户登录 |
| 注意点 | 密钥管理复杂(需安全存储密钥) | 需证书验证,确保通信双方可信 |
4) 【示例】(存储加密伪代码)
from cryptography.fernet import Fernet
# 生成密钥(安全存储,如密钥管理系统)
key = Fernet.generate_key()
cipher_suite = Fernet(key)
# 加密用户密码
user_password = "123456"
encrypted_password = cipher_suite.encrypt(user_password.encode())
# 存储加密数据(数据库操作伪代码)
# db.execute("INSERT INTO users (username, encrypted_password) VALUES (?, ?)", "user1", encrypted_password)
# 仅授权解密
# decrypted = cipher_suite.decrypt(encrypted_password).decode()
# print(decrypted) # 输出: 123456
5) 【面试口播版答案】(约90秒)
“面试官您好,针对未加密存储用户数据的问题,我分析如下:首先,数据泄露风险方面,静态数据若未加密,一旦数据库被非法访问(如黑客入侵、内部人员滥用权限),用户敏感信息(如手机号、身份证号)会被直接窃取,造成个人隐私泄露和公司合规风险。其次,从合规角度,根据《个人信息保护法》《网络安全法》等法规,企业需对用户个人信息采取‘必要措施’保护,未加密存储属于合规缺失。改进建议包括:一是立即对存储的用户数据(如数据库字段、文件)实施全链路加密,优先选择AES等强加密算法;二是建立密钥管理系统,确保密钥安全存储(如硬件安全模块HSM),定期轮换密钥;三是完善访问控制,对存储数据的操作权限进行最小化授权,并记录操作日志;四是定期进行安全审计,验证加密措施的有效性,确保符合合规要求。”
6) 【追问清单】
7) 【常见坑/雷区】