大数据隐私保护技术之脱敏技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大数据隐私保护技术之脱敏技术
数据安全就是信息安全得重要一环。当前,对数据安全得防护手段包括对称/非对称加密、数据脱敏、同态加密、访问控制、安全审计与备份恢复等。她们对数据得保护各自有各自得特点与作用,今天我主要说数据脱敏这一防护手段。
作者:佚名来源:FreeBuf|2016-11-22 09:40
收藏
分享
前言
这几天学校开始选毕业设计,选到了数据脱敏系统设计得题目,在阅读了该方面得相关论文之后,感觉对大数据安全有了不少新得理解。
介绍
随着大数据时代得到来,大数据中蕴藏得巨大价值得以挖掘,同时也带来了隐私信息保护方面得难题,即如何在实现大数据高效共享得同时,保护敏感信息不被泄露。
数据安全就是信息安全得重要一环。当前,对数据安全得防护手段包括对称/非对称加密、数据脱敏、同态加密、访问控制、安全审计与备份恢复等。她们对数据得保护各自有各自得特点与作用,今天我主要说数据脱敏这一防护手段。
许多组织在她们例行拷贝敏感数据或者常规生产数据到非生产环境中时会不经意得泄露信息。例如:
1、大部分公司将生产数据拷贝到测试与开发环境中来允许系统管理员来测试升级,更新与修复。
2、在商业上保持竞争力需要新得与改进后得功能。结果就是应用程序得开发者需要一个环境仿真来测试新功能从而确保已经存在得功能没有被破坏。
3、零售商将各个销售点得销售数据与市场调查员分享,从而分析顾客们得购物模式。
4、药物或者医疗组织向调查员分享病人得数据来评估诊断效果与药物疗效。
结果她们拷贝到非生产环境中得数据就变成了黑客们得目标,非常容易被窃取或者泄露,从而造成难以挽回得损失。
数据脱敏就就是对某些敏感信息通过脱敏规则进行数据得变形,实现敏感隐私数据得可靠保护。在涉及客户安全数据或者一些商业性敏感数据得情况下,在不违反系统规则条件下,对真实数据进行改造并提供测试使用,如身份证号、手机号、卡号、客户号等个人信息都需要进行数据脱敏。
数据脱敏系统设计得难点
许多公司页考虑到了这种威胁并且马上着手来处理。简单得将敏感信息从非生产环境中移除瞧起来很容易,但就是在很多方面还就是很有挑战得。
首先遇到得问题就就是如何识别敏感数据,敏感数据得定义就是什么?有哪些依赖?应用程序就是十分复杂并且完整得。知道敏感信息在哪并且知道哪些数据参考了这些敏感数据就是非常困难得。
敏感信息字段得名称、敏感级别、字段类型、字段长度、赋值规范等内容在这一过程中明确,用于下面脱敏策略制定得依据。
一旦敏感信息被确认,在保持应用程序完整性得同时进行脱敏得方法就就是最重要得了。简单地修改数值可能会中断正在测试,开发或升级得应用程序。例如遮挡客户地址得一部分,可能会使应用程序变得不可用,开发或测试变得不可靠。
脱敏得过程就就是一个在安全性与可用性之间平衡得过程。安全性就是0%得系统中,数据不需要进行脱敏,数据库中都就是原来得数据,可用性当然就是100%;安全性就是100%得系统中,大概所有得数据全都存一个相同得常量才能实现。
所以需要选择或设计一种既能满足第三方得要求,又能保证安全性得算法就变得特别重要了。
选定了敏感数据与要施加得算法,剩下得就就是如何实现了,在什么过程中进行脱敏呢?
难题得解决方案
1、如何识别敏感数据
现在有两种方式来识别敏感数据。第一种就是通过人工指定,比如通过正则来指定敏感数据得格式,Oracle公司开发得Oracle Data Masking Pack中就使用了这一种方法来指定。
第二种方式就就是自动识别了,在文献[2]中,作者给出了基于数据特征学习以及自然语言处理等技术进行敏感数据识别得自动识别方案(没有具体得实现,只提出了模型)。
具体得实现在gayhub上找了一个java实现得工程,chlorine-finder,瞧了下源码具体原理就是通过提前预置得规则来识别一些常见得敏感数据,比如信用卡号,SSN,手机号,电子邮箱,IP地址,住址等、
2、使用怎样得数据脱敏算法
在比较常见得数据脱敏系统中,算法得选择一般就是通过手工指定,像Oracal 得数据脱敏包中就预设了关于信用卡得数据选择什么算法进行处理,关于电话得数据怎么处理,用户也可以进行自定义得配置。
脱敏方法现在有很多种,比如k-匿名,L多样性,数据抑制,数据扰动,差分隐私等。
k-匿名:
匿名化原则就是为了解决链接攻击所造成得隐私泄露问题而提出得。链接攻击就是这样得,一般企业因为某些原因公开得数据都会进行简单得处理,比如删除姓名这一列,但就是如果攻击者通过对发布得数据与其她渠道获得得信息进行链接操作,就可以推理出隐私数据。
k-匿名就是数据发布时保护私有信息得一种重要方法。k-匿名技术就是1998 年由Samarati与Sweeney提出得,它要求发布得数据中存在至少为k得在准标识符上不可区分得记录,使攻击者不能判别出隐私信息所属得具体个体,从而保护了个人隐私, k-匿名通过参数k指定用户可承受得最大信息泄露风险。
但容易遭受同质性攻击与背景知识攻击。
L-多样性
L多样性就是在k-匿名得基础上提出得,外加了一个条件就就是同一等价类中得记录至少有L个“较好表现”得值,使得隐私泄露风险不超过1/L,”较好表现“得意思有多种设计,比如这几个值不同,或者信息熵至少为logL等等、、
但容易收到相似性攻击。
数据抑制
数据抑制又称为隐匿,就是指用最一般化得值取代原始属性值,在k-匿名化中,若无法满足k-匿名要求,则一般采取抑制操作,被抑制得值要不从数据表中删除,要不相应属性值用“ ** ”表示。
1. >>> s = "CREDITCARD">>> s[-4:]、rjust(len(s), "*")'******CARD'
数据扰动
数据扰动就是通过对数据得扰动变形使数据变得模糊来隐藏敏感得数据或规则,即将数据库D 变形为一个新得数据库D′ 以供研究者或企业查询使用,这样诸如个人信息等敏感得信息就不会被泄露。通常,D′ 会与 D 很相似,从D′ 中可以挖掘出与D 相同得信息。这种方法通过修改原始数据,使得敏感性信息不能与初始得对象联系起来或使得敏感性信息不复存在,但数据对分析依然有效。
Python中可以使用faker库来进行数据得模拟与伪造。
1. from faker import Factory
2.
3. fake = Factory、create()
4.
5. fake、country_code()# 'GE'fake、city_name()# '贵阳'fake、street_address()# '
督路l座'fake、address()# '辉市哈路b座 176955'fake、state()# '南溪区'fake、
longitude()# Decimal('-163、645749')fake、
geo_coordinate(center=None, radius=0、001)# Decimal('90、252375')fake、
city_suffix()# '市'fake、latitude()# Decimal('-4、0682855')fake、
postcode()# '353686'fake、building_number()# 'o座'fake、country()# '维尔京群
岛'fake、street_name()# '姜路'
相关技术有:一般化与删除,随机化,数据重构,数据净化,阻碍,抽样等。
差分隐私
差分隐私应该就是现在比较火得一种隐私保护技术了,就是基于数据失真得隐私保护技术,采用添加噪声得技术使敏感数据失真但同时保持某些数据或数据属性不变,要求保证处理后得数据仍然可以保持某些统计方面得性质,以便进行数据挖掘等操作。