所谓数据脱敏也即避免隐私数据泄露,是指避免使用数据的人员(数据分析师,BI工程师等)将某行数据识别为某个人的信息。数据脱敏技术通过对数据进行脱敏,如移除识别列,转换半识别列等方式,使得数据使用人员在保证可对(转换后)半识别列、敏感信息列以及其他列进行数据分析的基础上,在一定程度上保证其无法根据数据反识别用户,达到保证数据安全与最大化挖掘数据价值的平衡。具体的数据脱敏方法,主要有以下6种[23][24]。
1.替代
指用伪装数据完全替换数据源中的敏感数据,一般替换用的数据都有不可逆性,以保证安全。替代是最常用的数据脱敏方法,具体操作上有常数替代(所有敏感数据都替换为唯一的常数值)、查表替代(从中间表中随机或按照特定算法选择数据进行替代)、参数化替代(以敏感数据作为输入,通过特定函数形成新的替代数据)等。具体选择的替代算法取决于效率、业务需求等因素间的平衡。替代方法能够彻底地脱敏单类数据,但往往也会使相关字段失去业务含义。对于查表替代而言,中间表的设计非常关键。
2.混洗
主要通过对敏感数据进行跨行随机互换来打破其与本行其他数据的关联关系,从而实现脱敏。混洗可以在相当大范围内保证部分业务数据(如有效数据范围、数据统计特征等)脱敏后看起来跟原数据一致,与此同时也牺牲了一定的安全性。一般混洗方法用于大数据集合,且需要保留待脱敏数据特定特征的场景;对于小数据集,混洗形成的目标数据有可能通过其他信息被还原,在使用的时候需要特别慎重。
3.数值变换
指对数值和日期类型的数据源,通过随机函数进行可控的调整(例如:对于数值类型数据,随机增减20%;对于日期数据,随机增减200天),以便在保持原始数据相关统计特征的同时,完成对具体数值的伪装。数值变换通过调整变动幅度可以有效控制目标数据的统计特征和真实度,是常用的脱敏方法。
4.加密
指对待脱敏数据进行加密处理,使外部用户只看到无意义的加密后数据,同时在特定场景下,可以提供解密能力,使具有密钥的相关方可以获得原数据。加密的方法存在一定的安全风险(密钥泄露或加密强度不够);加密本身需要一定的计算能力,对于大数据集来源会产生很大资源开销;一般加密后数据与原始数据格式差异较大,“真实性”较差。一般情况下,加密的数据脱敏方式应用不多。
5.遮挡(Mask Out)
指对敏感数据的部分内容用掩饰符号(如:“X、*”)进行统一替换,从而使得敏感数据保持部分内容公开,并且保证了信息的长度不变性。这种方法可以在很大程度上脱敏的同时,保持原有数据感观,使信息持有者更易辨别,也是一种广泛使用的方法。因此我们的建议脱敏规则为:
(1)【中文姓名】只显示第一个汉字,其他隐藏为2个星号,比如:李**。(www.xing528.com)
(2)【身份证号】显示最后四位,其他隐藏。共计18位或者15位,比如:**************1234。
(3)【固定电话】显示后四位,其他隐藏,比如:*******3241。
(4)【手机号码】前三位,后四位,其他隐藏,比如:135****6810。
(5)【地址】只显示到地区,不显示详细地址,比如:上海徐汇区漕河泾开发区***。
(6)【电子邮箱】邮箱前缀仅显示第一个字母,前缀其他隐藏,用星号代替,@及后面的地址显示,比如:d**@126.com。
(7)【银行卡号】前六位,后四位,其他用星号隐藏,每位1个星号,比如:622260**********1234。
(8)【密码】密码的全部字符都用*代替,比如:******。
6.空值插入/删除
指直接删除敏感数据或将其置为NULL值。在条件允许的情况下,这种方法最直接。
总体而言,数据脱敏的方法有以上6个类别。在具体应用时,可以根据业务需求,结合可用计算资源情况,进行灵活选择。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。