怎么在数据库存敏感数据?

2022-12-27 08:48:59 +08:00
 teli

需要在数据库存用户身份证号码和手机号码。 最简单的方式,配置或者代码里一个固定的的密钥,每次对称加解密,数据库存密文。问题是密钥泄露风险。

6716 次点击
所在节点    信息安全
36 条回复
mengzhuo
2022-12-27 10:51:05 +08:00
这是都没有学习过隐私保护么?这玩意 2021.11.1 都立法了……
身份证和手机号能不存就不存,哈希算是假名化,还是个人数据,需要加密处理(根密钥需要单独配置在配置中心、每个用户可以通过根密钥省成对应工作密钥),而且最好是单独找个库来放。

注:敏感数据哈希要用 pbkdf2 ,而不是简单的盐和算法。
realrojeralone
2022-12-27 10:51:13 +08:00
#10 是小白吗?没有任何安全意识,可能根本没有关注过漏洞报告,不知道啥叫 0day
ttimasdf
2022-12-27 11:19:34 +08:00
@realpg 哈哈我们就靠你们这种程序员吃饭呢。

#10 这个方案不错,建议立法,全国推广。
Morii
2022-12-27 11:19:43 +08:00
@samin #20

也是楼上说的方案,每个服务一组密钥,对外暴露的 API 只返回脱敏的数据,落地的数据均加密处理,需要解密获取原始数据时需要记录行为日志。
bthulu
2022-12-27 11:27:37 +08:00
BASE64 转一下就行了, 既满足法规, 又简单易懂, 至于数据泄露, 别想太多, 早点干完早点下班
qeqv
2022-12-27 13:14:23 +08:00
@mengzhuo 为啥哈希还要加密
dengji85
2022-12-27 13:22:27 +08:00
唉,楼上都是大厂的,向我这种底层螺丝工数据库就是明文,代码层简单脱敏
EminemW
2022-12-27 13:51:53 +08:00
@dengji85 #27 被人举报一下,相关部门就会来监督你改造数据库了🤪
liuidetmks
2022-12-27 14:20:56 +08:00
@realpg 有的公司有代码审计,尤其是你有上市这个需求
Maboroshii
2022-12-27 14:28:43 +08:00
法务要求你怎么存就怎么存,不要求就存明文。 毕竟这不是一个技术问题
xyjincan
2022-12-27 15:59:11 +08:00
号码存在独立的 redis 服务器上呢
armyHcz
2022-12-27 16:07:30 +08:00
@himarrin 天才啊
swulling
2022-12-27 16:19:47 +08:00
简单 aes 加密一下保存就行了,密钥放到配置里。

你说配置泄漏?满足法律要求就行,泄漏就泄漏呗。
nic0Y
2022-12-27 16:47:49 +08:00
@himarrin 手机号如果只限制在国内倒还好说,拿身份证如果是 2000 年以后出生的呢?
himarrin
2022-12-27 16:55:41 +08:00
@nic0Y 1 跟 2 还是还是可以通过后面几位判断的
ZSeptember
2022-12-27 16:56:27 +08:00
看过美团的一篇文章 https://tech.meituan.com/2022/09/22/token-pii.html
可以参考下,不过没说源信息如何存储,我理解也是数据库加密,然后有个解密服务

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/904868

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX