基于敏感数据的脱敏方法及系统与流程

文档序号:18554250发布日期:2019-08-30 22:22阅读:876来源:国知局
基于敏感数据的脱敏方法及系统与流程

本发明属于数据脱敏技术领域,具体涉及基于敏感数据的脱敏方法及系统。



背景技术:

目前,个人隐私保护问题己经引起了公众的广泛关注,不仅在我国,在欧盟和美国也有新增立法保护个人信息。由此可见,如果不能解决由于大数据发布或共享导致的个人隐私泄露的问题,将给相关数据发布和使用方带来严重的法律风险,进而阻碍大数据技术的应用和发展。

针对隐私保护问题,samarati和sweeney于1998年首次提出了匿名化的概念,为了在数据共享过程中实现匿名化,最初使用传统脱敏算法通过对数据直接进行乱序、掩盖、统一泛化等操作达到保护用户隐私的目的。

泛化是对数据中某个准标识属性,通过将具体值替换为描述属性的取值范围,来达到匿名化操作的方法。泛化操作包括值泛化和域泛化。域泛化又称全域重编码,以电话号码为例,一个88888888被泛化成8888888*,实现表达一个更大的范围。以此类推,再被泛化成888888**,直至********。某属性的值域经多次泛化形成的域泛化层次结构被称为域泛化。泛化层次越高,信息损失越大。值泛化又称局域重编码,指的是将原始属性域中的每个值直接泛化成一般域中的某一值。值泛化关系同样可以决定值泛化层。相比域泛化,值泛化拥有更高的灵活性,可以有效降低泛化带来的信息损失。

隐匿,可视为最高级别的泛化,是指用最一般化的值代替原始值。即为用固定属性值代替该列的所有属性值。在数据匿名化操作的过程中,如果一些元组无法满足匿名规则的要求,一般会采取隐匿操作。被隐匿的属性值所在记录可以直接从数据表中删除,或者相应属性值用统一属性代替,以保持统计特性。

但是现有的脱敏方法也难以满足大数据背景下的隐私保护需求。



技术实现要素:

针对现有技术中的缺陷,本发明提供一种基于敏感数据的脱敏方法及系统,可灵活配置、支持多数据源、多种数据脱敏算法。

第一方面,一种基于敏感数据的脱敏方法,

获取待脱敏数据;

当待脱敏数据的数据量满足k-means算法阈值时,采用k-means改进算法对待脱敏数据进行分组划分,并加入laplace噪声对划分后的待脱敏数据进行脱敏;

当待脱敏数据的数据量满足匹配替换阈值时,采用匹配替换方法对待脱敏数据进行脱敏;其中匹配替换方法包括根据预设的变量类型、以关键字为原则对待脱敏数据进行替换。

优选地,所述变量类型包括数值、字符串、时间和正则表达式。

优选地,当变量类型为数值时,所述匹配替换方法包括:

提取出所述待脱敏数据的数字符号;

计算所述数字符号的数值长度,并进行超限处理,以获得初始数值;

将所述初始数值转化为字符串;

根据所述数值长度和预设的数值脱敏范围,将字符串中指定字符转化为掩码;

将转化后的字符串进行数字化后,输出。

优选地,当变量类型为字符串时,所述匹配替换方法包括:

提取出所述待脱敏数据的字符串;

当所述字符串中存在部分内容属于预设的字符串脱敏范围时,把属于字符串脱敏范围的内容替换为掩码,输出。

优选地,当变量类型为时间时,所述匹配替换方法包括:

提取出所述待脱敏数据的时间信息;

如果时间信息是有效信息,将所述时间信息转化为预设的按秒计时格式,以获得初始时间信息;

当所述初始时间信息中存在部分内容属于预设的时间脱敏范围时,把属于时间脱敏范围的内容替换为0;

将替换后的时间信息转化为预设的标准时间后,输出。

优选地,当变量类型为正则表达式时,所述匹配替换方法包括:

从所述待脱敏数据的第一位数据开始识别,直至识别到所述待脱敏数据的最后一位数据;

当存在与所述正则表达式匹配的数据时,将该数据替换为预设的脱敏符号;

输出替换后的待脱敏数据。

优选地,所述采用k-means改进算法对待脱敏数据进行分组划分,并加入laplace噪声对划分后的待脱敏数据进行脱敏具体包括:

设置聚类中心;

获取包含统计分类结果的数据集,计算所述数据集的均值向量;

计算所述数据集中每个数据向量与均值向量之间的距离,定义为当前距离;

如果当前距离小于预设的最小距离时,更新最小距离为当前距离;

对所述待脱敏数据进行重新分组,保存新得到的均值向量,并统计均值向量个数;

根据每个分组添加laplace噪声,对该分组进行计算;

输出计算后的待脱敏数据。

第二方面,一种基于敏感数据的脱敏系统,包括:

采集单元:用于获取待脱敏数据;

k-means分析单元:用于当待脱敏数据的数据量满足k-means算法阈值时,采用k-means改进算法对待脱敏数据进行分组划分,并加入laplace噪声对划分后的待脱敏数据进行脱敏;

匹配替换单元:用于当待脱敏数据的数据量满足匹配替换阈值时,采用匹配替换方法对待脱敏数据进行脱敏;其中匹配替换方法包括根据预设的变量类型、以关键字为原则对待脱敏数据进行替换。

优选地,所述变量类型包括数值、字符串、时间和正则表达式;

所述匹配替换单元具体用于:

当变量类型为数值时,所述匹配替换方法包括:

提取出所述待脱敏数据的数字符号;

计算所述数字符号的数值长度,并进行超限处理,以获得初始数值;

将所述初始数值转化为字符串;

根据所述数值长度和预设的数值脱敏范围,将字符串中指定字符转化为掩码;

将转化后的字符串进行数字化后,输出;

当变量类型为字符串时,所述匹配替换方法包括:

提取出所述待脱敏数据的字符串;

当所述字符串中存在部分内容属于预设的字符串脱敏范围时,把属于字符串脱敏范围的内容替换为掩码,输出;

当变量类型为时间时,所述匹配替换方法包括:

提取出所述待脱敏数据的时间信息;

如果时间信息是有效信息,将所述时间信息转化为预设的按秒计时格式,以获得初始时间信息;

当所述初始时间信息中存在部分内容属于预设的时间脱敏范围时,把属于时间脱敏范围的内容替换为0;

将替换后的时间信息转化为预设的标准时间后,输出;

当变量类型为正则表达式时,所述匹配替换方法包括:

从所述待脱敏数据的第一位数据开始识别,直至识别到所述待脱敏数据的最后一位数据;

当存在与所述正则表达式匹配的数据时,将该数据替换为预设的脱敏符号;

输出替换后的待脱敏数据。

优选地,所述k-means分析单元具体用于:

设置聚类中心;

获取包含统计分类结果的数据集,计算所述数据集的均值向量;

计算所述数据集中每个数据向量与均值向量之间的距离,定义为当前距离;

如果当前距离小于预设的最小距离时,更新最小距离为当前距离;

对所述待脱敏数据进行重新分组,保存新得到的均值向量,并统计均值向量个数;

根据每个分组添加laplace噪声,对该分组进行计算;

输出计算后的待脱敏数据。

由上述技术方案可知,本发明提供的基于敏感数据的脱敏方法及系统,可灵活配置、支持多数据源、多种数据脱敏算法。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。

图1为本发明实施例一适用的脱敏框架。

图2为本发明实施例一提供的基于敏感数据的脱敏方法的方法流程图。

图3为本发明实施例二提供的针对数值的匹配替换方法流程图。

图4为本发明实施例二提供的针对字符串的匹配替换方法流程图。

图5为本发明实施例二提供的针对时间的匹配替换方法流程图。

图6为本发明实施例二提供的针对正则表达式的匹配替换方法流程图。

图7为本发明实施例三提供的采用k-means改进算法脱敏的方法流程图。

图8为本发明实施例四提供的基于敏感数据的脱敏系统的模块框图。

具体实施方式

下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。

本发明提供的脱敏方法适用于图1的、基于spark并行计算的脱敏框架。

实施例一:

一种基于敏感数据的脱敏方法,参见图2,

获取待脱敏数据;

当待脱敏数据的数据量满足k-means算法阈值时,采用k-means改进算法对待脱敏数据进行分组划分,并加入laplace噪声对划分后的待脱敏数据进行脱敏;

具体地,针对数据量较大的场景,使用匹配替换方式耗时和资源都不可控。因此采用基于spark框架采用k-means改进算法对数据分组后,加入laplace噪声的方式进行更加快速的脱敏。该方案会对各个属性进行统计分类以及脱敏两个部分。其中统计分类采用对属性进行分类统计的方式。而脱敏则是根据统计结果进行聚类、分组以及增加laplace噪声的处理方式。

当待脱敏数据的数据量满足匹配替换阈值时,采用匹配替换方法对待脱敏数据进行脱敏;其中匹配替换方法包括根据预设的变量类型、以关键字为原则对待脱敏数据进行替换。

具体地,匹配替换方法适合于数据量较小的数据脱敏时使用。其效果相对稳定且可控性强。匹配替换可以实现包括对固定数值、正则表达式进行脱敏的步骤。

该方法提出了图1的脱敏框架内部可以使用的脱敏算法:匹配替换算法配合k-means改进算法对分组进行划分后,加入laplace噪声共同配合的方式实现数据脱敏的功能。通过结合者两种方式,可灵活配置、支持多数据源、多种数据脱敏算法。

实施例二:

实施例二在实施例一的基础上,增加以下内容:

所述变量类型包括数值、字符串、时间和正则表达式。

参见图3,当变量类型为数值时,所述匹配替换方法包括:

提取出所述待脱敏数据的数字符号;

计算所述数字符号的数值长度,并进行超限处理,以获得初始数值;

将所述初始数值转化为字符串;

根据所述数值长度和预设的数值脱敏范围,将字符串中指定字符转化为掩码;

将转化后的字符串进行数字化后,输出。

具体地,针对数值类型,采用的方式是将数字符号提出后,根据数字符号的数值长度(即位数)和数值脱敏范围,将从中间开始的指定字符(即数字)转化为掩码字符的方式。

参见图4,当变量类型为字符串时,所述匹配替换方法包括:

提取出所述待脱敏数据的字符串;

当所述字符串中存在部分内容属于预设的字符串脱敏范围时,把属于字符串脱敏范围的内容替换为掩码,输出。

具体地,针对字符串方式,采用的方法是先与字符串脱敏范围匹配,当发现需要脱敏的关键字符时,将其进行替换。

参见图5,当变量类型为时间时,所述匹配替换方法包括:

提取出所述待脱敏数据的时间信息;

如果时间信息是有效信息,将所述时间信息转化为预设的按秒计时格式,以获得初始时间信息;

当所述初始时间信息中存在部分内容属于预设的时间脱敏范围时,把属于时间脱敏范围的内容替换为0;

将替换后的时间信息转化为预设的标准时间后,输出。

具体地,针对时间字符方式,首先将时间信息转化为系统标准的按秒计时,之后根据时间脱敏范围将其中的一部分数据替换为0,最后再通过系统相关函数转化为标准时间,以实现脱敏的效果。

参见图6,当变量类型为正则表达式时,所述匹配替换方法包括:

从所述待脱敏数据的第一位数据开始识别,直至识别到所述待脱敏数据的最后一位数据;

当存在与所述正则表达式匹配的数据时,将该数据替换为预设的脱敏符号;

输出替换后的待脱敏数据。

具体地,针对正则表达式的计算也是脱敏的一种,但由于其不是固定数值,需要根据正则表达式进行逐步匹配和替换。所以,在实现脱敏时,从待脱敏数据的头部开始识别,当遇到一位和正则规则匹配的数据时,开始替换。结束之后继续遍历后续的数据,直至识别到所述待脱敏数据的最后一位数据。

本发明实施例所提供的方法,为简要描述,实施例部分未提及之处,可参考前述方法实施例中相应内容。

实施例三:

实施例三在其他实施例的基础上增加以下内容:

参见图7,所述采用k-means改进算法对待脱敏数据进行分组划分,并加入laplace噪声对划分后的待脱敏数据进行脱敏具体包括:

设置聚类中心;例如调用kmeans.setmax(k)设置中心数k;

获取包含统计分类结果的数据集,计算所述数据集的均值向量uj;例如令sdata=kmeans.loaddata(hashmap)进行统计分类。

计算所述数据集中每个数据向量与均值向量之间的距离,定义为当前距离cj;

如果当前距离小于预设的最小距离时,更新最小距离为当前距离;

对所述待脱敏数据进行重新分组,保存新得到的均值向量,并统计均值向量个数;

根据每个分组添加laplace噪声,对该分组进行计算;

输出计算后的待脱敏数据。

具体地,该方法首先设定聚类中心,之后读取统计分类结果的数据集。在获取数据集后,计算每个数据集与均值向量之间的距离。在完成计算后更新均值向量、并对数据进行重新分组。将得到的组内均值以及组内均值个数进行保存,每个对应项称为一个记录条命。之后对每个记录条目进行计算,计算的方式为数据条目加入laplace噪声的方式。

本发明实施例所提供的方法,为简要描述,实施例部分未提及之处,可参考前述方法实施例中相应内容。

实施例四:

一种基于敏感数据的脱敏系统,参见图8,包括:

采集单元:用于获取待脱敏数据;

k-means分析单元:用于当待脱敏数据的数据量满足k-means算法阈值时,采用k-means改进算法对待脱敏数据进行分组划分,并加入laplace噪声对划分后的待脱敏数据进行脱敏;

匹配替换单元:用于当待脱敏数据的数据量满足匹配替换阈值时,采用匹配替换方法对待脱敏数据进行脱敏;其中匹配替换方法包括根据预设的变量类型、以关键字为原则对待脱敏数据进行替换。

优选地,所述变量类型包括数值、字符串、时间和正则表达式;

所述匹配替换单元具体用于:

当变量类型为数值时,所述匹配替换方法包括:

提取出所述待脱敏数据的数字符号;

计算所述数字符号的数值长度,并进行超限处理,以获得初始数值;

将所述初始数值转化为字符串;

根据所述数值长度和预设的数值脱敏范围,将字符串中指定字符转化为掩码;

将转化后的字符串进行数字化后,输出;

当变量类型为字符串时,所述匹配替换方法包括:

提取出所述待脱敏数据的字符串;

当所述字符串中存在部分内容属于预设的字符串脱敏范围时,把属于字符串脱敏范围的内容替换为掩码,输出;

当变量类型为时间时,所述匹配替换方法包括:

提取出所述待脱敏数据的时间信息;

如果时间信息是有效信息,将所述时间信息转化为预设的按秒计时格式,以获得初始时间信息;

当所述初始时间信息中存在部分内容属于预设的时间脱敏范围时,把属于时间脱敏范围的内容替换为0;

将替换后的时间信息转化为预设的标准时间后,输出;

当变量类型为正则表达式时,所述匹配替换方法包括:

从所述待脱敏数据的第一位数据开始识别,直至识别到所述待脱敏数据的最后一位数据;

当存在与所述正则表达式匹配的数据时,将该数据替换为预设的脱敏符号;

输出替换后的待脱敏数据。

优选地,所述k-means分析单元具体用于:

设置聚类中心;

获取包含统计分类结果的数据集,计算所述数据集的均值向量;

计算所述数据集中每个数据向量与均值向量之间的距离,定义为当前距离;

如果当前距离小于预设的最小距离时,更新最小距离为当前距离;

对所述待脱敏数据进行重新分组,保存新得到的均值向量,并统计均值向量个数;

根据每个分组添加laplace噪声,对该分组进行计算;

输出计算后的待脱敏数据。

该系统采用匹配替换算法配合k-means改进算法对分组进行划分后,加入laplace噪声共同配合的方式实现数据脱敏的功能。通过结合者两种方式,可灵活配置、支持多数据源、多种数据脱敏算法。

本发明实施例所提供的系统,为简要描述,实施例部分未提及之处,可参考前述方法实施例中相应内容。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1