云账户的Go语言个人信息保护实践
如果无法正常显示,请先停止浏览器的去广告插件。
1. 云账户的 Go 语言
个人信息保护实践
云账户基础架构部 臧超
2. 目录
PART 01 个人信息保护必要性
PART 02 个人信息加密
PART 03 个人信息脱敏
PART 04 效果保障
W W W . Y U N Z H A N G H U . C O M
3. 01 个人信息保护必要性
1、个人信息保护是法律法规的要求
2、个人信息保护技术方案建议
W W W . Y U N Z H A N G H U . C O M
提供高质量灵活就业服务的新时代企业
01
4. 1.1
个人信息保护是法律法规的要求
法律法规要求:数据保护的“三驾马车”
n 《中华人民共和国网络安全法》
n 《中华人民共和国数据安全法》
n 《中华人民共和国个人信息保护法》
国家标准:
n 《GB/T 35273-2020 信息安全技术 个人信息安全规范》
W W W . Y U N Z H A N G H U . C O M
提供高质量灵活就业服务的新时代企业
02
5. 1.1
个人信息保护是法律法规的要求
个人信息: 个人敏感信息:
以电子或者其他方式记录的能够单独或者与其
他信息结合识别特定自然人身份或者反映特定
自然人活动情况的各种信息。 一旦泄露、非法提供或滥用可能危害人身和财
产安全,极易导致个人名誉、身心健康受到损
害或歧视性待遇等的个人信息。
举例: 举例:
n 个人基本资料:包括个人姓名、生日、性别、民族、
个人电话号码等
n 网络身份标识信息:个人信息主体账号、IP地址等
n 个人教育工作信息:个人职业、职位、工作单位等 n 个人财产信息:银行账户、鉴别信息(口令)等
n 个人生物识别信息:个人基因、指纹、声纹、掌纹
等
n 个人身份信息:身份证、军官证、护照、驾驶证等
——以上定义和举例摘自《GB/T 35273-2020 信息安全技术 个人信息安全规范》
03
6. 1.1
个人信息保护是法律法规的要求
采取相应的加密、去标识化
等安全技术措施
——摘自《中华人民共和国个人信息保护法》第五
章 个人信息处理者的义务
收集个人信息后,个人
信息控制者宜立即进行
去标识化处理
——摘自《信息安全技术 个人信息安全
规范》
04
7. 1.2
个人信息保护技术方案建议
用户输入个人信息
用户服务
KMS SDK
数据加密
数据库
数据脱敏服务
或SDK
输出脱敏后的个人信息到
客户端或文件
加解密密钥
密钥管理服务
(KMS)
以上重点呈现了个人信息加密、脱敏的技术方案。
关于数据安全建设,业界也有成熟的指导标准,《GB/T 37988-2019 信息安全技术 数据安全能力成
熟度模型》的配套文档《数据安全能力建设实施指南》给出了涵盖数据从采集到销毁全生命周期的方
案建议,可参照落地实施
05
8. 02 个人信息加密
1、数据加密整体方案
2、加解密实现
3、安全上线的要点:双写读明文、洗数据、读密文
4、最佳实践
W W W . Y U N Z H A N G H U . C O M
提供高质量灵活就业服务的新时代企业
06
9. 2.1
数据加密整体方案
访问层
Web端 KMS CLI OpenAPI
数据加解密 密钥版本管理 密码机管理引擎
配置加解密 密钥轮换 TLS认证
存储系统 权限管理 日志审计
KMS能力层
基础设施
07
10. 2.2
加解密实现-数据加密前后对比
姓名:
张三 //2CEYn......5vNYU=
411822199811112222 //2CETBja20+.....XZI5Yddkwzrj
身份证号:
个人电话号码:
13611112222
//2CEVw......MdAw84=
08
11. 2.2
加解密实现-加密算法选择
国际算法推荐使用支付卡行业数据安全标准(PCI DSS)规定的强效加密法,如
AES TDES和TDEA RSA
(128位和更高) (最少三倍长的密钥) (2048位和更高)
对数据进行加解密
PCI DSS是面向所有存储、处理或传输持卡人数据或敏感验证数据的所有实体的全球性安全标准,具有
较高权威性。
国密算法推荐使用国家密码管理局认可的SM系列算法,如SM2、SM3、SM4
09
12. 2.2
加解密实现-加密算法实现
明文
数据
AES-256加密
标记位
+
版本信息
+
密文
Base64编码
存储
10
13. 2.2
加解密实现-加密算法实现
11
14. 2.2
加解密实现-解密算法实现
明文
数据
AES-256解密
标记位
+
版本信息
+
密文
Base64解码
存储
12
15. 2.2
加解密实现-解密算法实现
13
16. 2.2
加解密实现-密文查询
14
17. 2.2
加解密实现-密文查询
15
18. 2.2
加解密实现-数据和密钥双重加密
16
19. 2.3
安全上线的要点:双写读明文、洗数据、读密文
Q:业务服务当前存储个人信息明文数据,如何保障业
务不中断的前提下,实现数据迁移成密文?
A:分三步走,双写读明文、洗数据、读密文,保障数
据安全迁移
17
20. 2.3
安全上线的要点:双写读明文、洗数据、读密文
双写读明文:
n 增加_ENCRYPT密文字段
n 新数据写入时双写明文
和密文字段
n 查询时只读取明文字段
的数据
用户输入个人信息
用户服务
数据同时写入明文字段和密文字段
MySQL
举例,如USER表中的个人信息字
段均增加_ENCRYPT作为密文字段:
NAME + NAME_ENCRYPT
ID_CARD + ID_CARD_ENCRYPT
PHONE + PHONE_ENCRYPT
18
21. 2.3
安全上线的要点:双写读明文、洗数据、读密文
执行数据清洗
洗数据:
对USER表的NAME、ID_CARD、PHONE数据进
行加密并把加密后的数据写到对应加密列
中,数据处理过程中进行反向解密验证
n 分批读取个人信息数据,
加密后更新对应加密字段
n 对所有加密字段的数据进
行解密验证是否与明文字
段的数据相同
用户服务
MySQL
19
22. 2.3
安全上线的要点:双写读明文、洗数据、读密文
读密文:
返回解密后的个人信息
用户服务
n 观察线上业务运行一段时间
(如一周)无异常后,代码
修改为读密文字段数据
n 观察线上业务运行一段时间
(如一周)无异常后,删除
线上个人信息明文数据
读取加密字段数据
MySQL
举例,如读取USER表的
NAME_ENCRYPT
、ID_CARD_ENCRYPT
、PHONE_ENCRYPT等字段的数据
20
23. 2.4
最佳实践
实现数据加密实践:
n 加密算法:基于AES-256等强效加密算法
n 安全上线:双写读明文、洗数据、读密文
业务使用实践:
n 考虑密文数据唯一性,业务逻辑切勿使用加密字段进行联表查询。若使用密
文字段查询,将会导致业务不中断前提下,数据加密密钥轮换工作开展困难
n 查询个人信息时,推荐使用用户的唯一标识符,如UUID
21
24. 03 数据脱敏实践
1、数据脱敏整体方案
2、常用脱敏算法
3、返回数据脱敏
4、日志脱敏
W W W . Y U N Z H A N G H U . C O M
提供高质量灵活就业服务的新时代企业
22
25. 3.1
数据脱敏整体方案
数据脱敏中间件 客户端展示
Kratos日志接口
自定义实现 日志输出
个人信息
明文数据
23
26. 3.1
数据脱敏整体方案
数据脱敏前后对比:
姓名:
张三 张*
411822199811112222 41**************22
身份证号:
个人电话号码:
13611112222
136******22
24
27. 3.2
常用脱敏算法
算法分类 描述 常用算法 适用场景
遮盖脱敏 通过特殊字符星号(*)或者井号
(#),对部分文字进行遮盖 遮盖前n后m
保留前n后m
... 个人敏感信息
哈希脱敏 适用哈希算法实现数据脱敏 SHA-256
... 口令、密钥等
替换脱敏 使用替换码表或随机区间进行替
换,实现数据整体或者部分内容
的脱敏 身份证映射替换
个人电话号码随机替换
... 个人敏感信息
企业敏感信息
25
28. 3.3
返回数据脱敏-接口定义与基本实现
26
29. 3.3
返回数据脱敏-接口定义与基本实现
27
30. 3.3
返回数据脱敏 -需要掩码的结构体定义举例
28
31. 3.3
返回数据脱敏 -自定义 Json扩 展
29
32. 3.3
返回数据脱敏- 自定义Encoder实现
30
33. 3.4 日 志 脱 敏 - 自 定 义 K r a t o s l o g . L o g g e r 接 口 实 现
31
34. 04 效果保障
1、个人信息扫描整体方案
2、数据库的个人信息扫描
3、日志的个人信息扫描
W W W . Y U N Z H A N G H U . C O M
提供高质量灵活就业服务的新时代企业
32
35. 4.1
个人信息扫描整体方案
日志
周期扫描全量/增量数据
个人信息扫
描服务
问题跟踪
任务管理平台
数据库
误报标记、白名单等反馈
33
36. 4.2
数据库的个人信息扫描
获取所有库表
信息,连接数
据库
对于每一个表
每个字段单独
扫描,抽取最
新、最早的和
随机采样数据
对于获取到的
数据进行个人
信息特征匹配
输出识别结果
34
37. 4.3 日 志 的 个 人 信 息 扫 描
获取所有日志
库信息,连接
日志库
当天扫描前一
天的数据,使
用ES语法直接
进行特征匹配
对于匹配到的
个人信息日志
详细获取上下
文,进行精准
匹配
输出识别结果
35
38. 5
总 结
个人信息保护必要性
个人信息加密
n 法律法规的要求 n 加密基于AES256等强效加密算法实现
n 避免客户和公司数据泄漏造成重大损失 n 安全上线:双写读明文、洗数据、读密文
个人信息脱敏 效果保障
n Kratos中间件 n 数据库扫描
n Kratos Log自定义实现 n 日志扫描
36
39. WWW.YUNZHANGHU.COM
云账户期待与您并肩同行
不忘初心、牢记使命
前行在高质量发展的新时代长征路上
400-6565-739 bd@yunzhanghu.com
(人工客服:7×24小时) (工作时段2小时内回复)
云账户官网
云账户微信公众号
云账户抖音号