数据脱敏
数据脱敏
why
在当今数据驱动的商业环境中,数据安全和隐私保护已经成为企业不可忽视的重要议题。
随着大数据分析和人工智能技术的广泛应用,企业需要确保在处理和分析数据的过程中,遵守相关的法律法规,保护个人隐私和敏感信息。
在这种背景下,数据脱敏作为一种有效的数据保护技术,越来越受到企业的重视。
数据脱敏是指对敏感信息进行处理,使其失去原有含义,从而保护个人隐私和敏感信息的安全。
数据脱敏技术主要是为了兼顾数据安全与数据使用,采用专业的数据脱敏算法。
数据脱敏的方法有很多种,包括数据掩码
、数据伪装
、数据加密
等。 这些方法可以在不同程度上保护数据的安全性,同时保持数据的可用性。
数据掩码
使用虚拟字符替换原始数据中的部分或全部内容。
例如,可以将姓名中的姓氏和名字的首字母保留,其余字母替换为“*”。这种处理方式可以在一定程度上保护个人隐私,同时保持数据的可读性。
数据伪装
对敏感信息进行伪装处理,即使用虚构的数据替换原始数据。这种方法可以更好地保护数据的安全性,但可能会影响数据的可用性。
因此,在使用数据伪装时,需要根据实际情况进行权衡。
数据加密
数据加密是通过对数据进行编码来保护数据,获取实际值的唯一方法是使用解密密钥解码数据。
通过加密算法将原始数据转换为密文,只有拥有密钥的人才能解密并查看原始数据。
这种方法可以提供更高级别的数据安全性,但可能会增加系统的复杂性和计算负担。
数据加密的优点就在于它的可逆性,敏感数据的实际值被转为垃圾值,可以通过解密还原出实际值;
缺点:
- 解密密钥存储位置、如何存储密钥以及访问权限等工作都会给整个安全工作增加成本、故障点、复杂性;
- 加密不能完全从技术上保证数据的安全,任何有权限访问用户数据的人员,均有可能导致数据泄露;
- 没有数据访问权限的人员,也可能存在对数据进行分析挖掘的需求,数据的访问约束会限制挖掘数据价值的范围;
实施方法可以是加密函数DES、MD5等等。
提示
在实际实践中,由于秘钥管理代价和加解密代价的考虑,一般是使用对称加密的做法(AES或者SM4,采用CTR 128的模式)。
对称加密最突出的特点是其过程简单。这种加密的简单性在于使用单个密钥进行加密和解密。因此,对称加密算法,他们比非对称加密快得多,需要更少的计算能力,并且不要降低互联网速度。
这意味着,当有大量数据需要加密时,对称加密被证明是一个不错的选择。
透明数据加密
- 在数据写入和读取的过程中,数据库内核会调用加密和解密函数来处理数据。这些操作通常在数据存储层和查询执行层之间进行。
- 密钥管理:数据库内核需要一个安全的密钥管理系统来存储和管理加密密钥,确保密钥的安全和有效性。具体的密钥管理实现包括不限于内部管理或者与外部密钥管理服务的集成(如 AWS KMS、Azure Key Vault 等)。
- 加密特定表/特定列/特定schema(加密表/加密列/加密库)
每次创建一个加密表时, 都会申请一个数据加密秘钥。
在秘钥体系中,根密钥加密主密钥,主密钥加密每个表的数据加密秘钥。
数据脱敏
优点:
数据脱敏能够在更好的保证数据的隐私性的同时保证数据的可用性;
缺点:
敏感数据的实际值被转换成虚构的、但看起来逼真的值,实际值被永久改变且无法恢复,过程是不可逆的;
实施方法:脱敏又分为静态脱敏和动态脱敏。
- 静态脱敏:对数据的搬移并仿真替换,按照用户指定或预定义的敏感数据特征,对数据进行自动识别,发现敏感数据,通过对数据的抽取,进行遮蔽、变形、替换等脱敏技术后下发给下游环节(供取用读写的数据库或目标文件中),脱敏后的数据与生产环境相隔离,做到既满足业务需求又保障生产数据库的安全;
- 动态脱敏:在访问敏感数据的同时会根据用户配置的脱敏策略对敏感数据进行实时脱敏屏蔽处理,从而防止数据泄露和恶意窥探。可以为不同角色、不同权限、不同数据类型执行不同的脱敏方案,从而确保返回的数据可用而安全;
动态脱敏会对数据进行多次脱敏,通过匹配用户IP或MAC地址等脱敏条件,根据用户权限,基于SQL语句解析技术,将包含敏感字段的查询语句进行改写,对敏感字段采用函数运算的方式,让数据库自行返回改写
后的不包含敏感信息的数据。
扩展:
数据动态脱敏经过多次迭代发展,目前也有混合模式动态脱敏,集结果集改写和sql语句改写,仍需要进一步学习研究,技术进步永远是数据安全进步的尺度。