一种数据脱敏处理方法及装置与流程

文档序号:24046111发布日期:2021-02-23 18:49阅读:90来源:国知局
一种数据脱敏处理方法及装置与流程

[0001]
本公开属于数据处理技术领域,尤其涉及一种数据脱敏处理方法及装置。


背景技术:

[0002]
随着大数据的快速发展,各个企业无时无刻都在不断产生着包含大量数据的原始数据集,同时原始数据集中可能含有一些隐私数据,如用户身份证信息和银行信息等,原始数据集在未经处理的情况下应用于业务分析,开发测试甚至一些外包业务等场景中可能会导致隐私泄露。
[0003]
为了降低隐私泄露,针对原始数据集设置脱敏算法,通过脱敏算法对原始数据集进行脱敏处理,得到脱敏数据集,以利用脱敏数据集中的“假数据”来代替原始数据集中的真实数据,从而通过脱敏算法隐藏原始数据集中的隐私数据。但是目前针对某个原始数据集来说,采用为原始数据集定制的脱敏算法进行脱敏处理,使得对原始数据集的脱敏效果具有一定局限性。


技术实现要素:

[0004]
有鉴于此,本公开的目的在于提供一种数据脱敏处理方法及装置,用于从第一脱敏算法和第二脱敏算法中选择脱敏效果好的脱敏算法对原始数据集进行脱敏处理,提高原始数据集的脱敏效果。技术方案如下:
[0005]
一方面,本公开提供一种数据脱敏处理方法,所述方法包括:
[0006]
利用第一脱敏算法和第二脱敏算法分别对原始数据集进行脱敏处理,得到所述第一脱敏算法对应的第一脱敏数据集和所述第二脱敏算法对应的第二脱敏数据集;
[0007]
对所述原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中各条数据的属性进行事务映射,得到所述原始数据集对应的第一事务数据集、所述第一脱敏数据集对应的第二事务数据集和所述第二脱敏数据集对应的第三事务数据集;
[0008]
根据所述第一事务数据集和所述第二事务数据集确定所述第一脱敏算法的第一脱敏效果,根据所述第一事务数据集和所述第三事务数据集确定所述第二脱敏算法的第二脱敏效果;
[0009]
根据所述第一脱敏效果和所述第二脱敏效果,从所述第一脱敏算法和所述第二脱敏算法中确定目标脱敏算法,以后续利用所述目标脱敏算法对所述原始数据集进行脱敏处理。
[0010]
另一方面,本公开提供一种数据脱敏处理装置,所述装置包括:
[0011]
脱敏处理单元,用于利用第一脱敏算法和第二脱敏算法分别对原始数据集进行脱敏处理,得到所述第一脱敏算法对应的第一脱敏数据集和所述第二脱敏算法对应的第二脱敏数据集;
[0012]
事务映射单元,用于对所述原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中各条数据的属性进行事务映射,得到所述原始数据集对应的第一事务数据集、所述
第一脱敏数据集对应的第二事务数据集和所述第二脱敏数据集对应的第三事务数据集;
[0013]
第一确定单元,用于根据所述第一事务数据集和所述第二事务数据集确定所述第一脱敏算法的第一脱敏效果,根据所述第一事务数据集和所述第三事务数据集确定所述第二脱敏算法的第二脱敏效果;
[0014]
第二确定单元,用于根据所述第一脱敏效果和所述第二脱敏效果,从所述第一脱敏算法和所述第二脱敏算法中确定目标脱敏算法,以后续利用所述目标脱敏算法对所述原始数据集进行脱敏处理。
[0015]
再一方面,本公开提供一种电子设备,包括:
[0016]
处理器;
[0017]
用于存储所述处理器可执行指令的存储器;
[0018]
其中,所述处理器被配置为执行所述指令,以实现上述数据脱敏处理方法。
[0019]
再一方面,本公开提供一种计算机存储介质,当所述计算机存储介质中的程序由电子设备的处理器执行时,使得电子设备能够执行如上述数据脱敏处理方法。
[0020]
上述数据脱敏处理方法及装置,利用第一脱敏算法和第二脱敏算法分别对原始数据集进行脱敏处理,得到第一脱敏算法对应的第一脱敏数据集和第二脱敏算法对应的第二脱敏数据集;对原始数据集、第一脱敏数据集和第二脱敏数据集中各条数据的属性进行事务映射,得到原始数据集对应的第一事务数据集、第一脱敏数据集对应的第二事务数据集和第二脱敏数据集对应的第三事务数据集;根据第一事务数据集和第二事务数据集确定第一脱敏算法的第一脱敏效果,根据第一事务数据集和第三事务数据集确定第二脱敏算法的第二脱敏效果;根据第一脱敏效果和第二脱敏效果,从第一脱敏算法和第二脱敏算法中确定目标脱敏算法,以后续利用目标脱敏算法对原始数据集进行脱敏处理,这样对于任一原始数据集来说,不再关注脱敏算法的脱敏实现过程,转而从脱敏前后和事务映射处理后的数据出发确定第一脱敏算法和第二脱敏算法的脱敏效果,从而能够以黑盒方式对脱敏算法进行脱敏效果的评估,适用于应用于原始数据集的各脱敏算法,提高适用性。并且从脱敏前后和事务映射处理后的数据出发确定第一脱敏算法和第二脱敏算法的脱敏效果后,能够从第一脱敏算法和第二脱敏算法中确定出目标脱敏算法,如从第一脱敏算法和第二脱敏算法中确定脱敏效果好的目标脱敏算法,以再次获取到同一来源的原始数据集后利用目标脱敏算法对原始数据集进行脱敏处理,提高原始数据集的脱敏效果。
附图说明
[0021]
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
[0022]
图1是本公开实施例提供的一种数据脱敏处理方法的流程图;
[0023]
图2是本公开实施例提供的对逻辑意义型数据进行事务映射的示意图;
[0024]
图3是本公开实施例提供的确定脱敏效果的流程图;
[0025]
图4是本公开实施例提供的另一种数据脱敏处理方法的流程图;
[0026]
图5是本公开实施例提供的第一脱敏算法和第二脱敏算法中任一脱敏算法确定脱敏可用性的示意图;
[0027]
图6是本公开实施例提供的一种数据脱敏处理装置的结构示意图;
[0028]
图7是本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
[0029]
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
[0030]
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
[0031]
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
[0032]
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
[0033]
请参见图1,其示出了本公开实施例提供的一种数据脱敏处理方法的可选流程,可以包括以下步骤:
[0034]
101:利用第一脱敏算法和第二脱敏算法分别对原始数据集进行脱敏处理,得到第一脱敏算法对应的第一脱敏数据集和第二脱敏算法对应的第二脱敏数据集。
[0035]
原始数据集是各个企业在生产管理等过程中生成的原始数据所在集合,原始数据集中的各条数据可以视为是原始数据,即没有经过脱敏等处理的原始数据,因为原始数据集可以是但不限于是不同企业生成的,不同企业生成的原始数据集的存储方式不同,所以对于不同企业生成的原始数据集可采用不同的方式获取,例如对不同企业生成的原始数据集使用不同的i/o接口获取。
[0036]
例如对于txt、csv等原始数据集,使用pandas的文档读取函数获取原始数据集;针对mongo、mysql、hdfs等存储介质中的原始数据集,调用pymongo,mysql.connector,spark等相关i/o接口获取原始数据集。
[0037]
在获取到原始数据集之后,调用第一脱敏算法和第二脱敏算法各自对应的接口,以通过各自对应的接口调用第一脱敏算法和第二脱敏算法对原始数据集进行脱敏处理,其中第一脱敏算法和第二脱敏算法的脱敏实现过程本实施例不进行关注,也就是说第一脱敏算法和第二脱敏算法采用何种脱敏技术,本实施例不关系,其主要是要获取到脱敏处理后的第一脱敏数据集和第二脱敏数据集,以原始数据集、第一脱敏数据集和第二脱敏数据集为基础,实现对第一脱敏算法和第二脱敏算法的脱敏效果的评估。
[0038]
例如对于如表1所示的原始数据集,第一脱敏算法和第二脱敏算法中的至少一种脱敏算法使用的脱敏技术为对数据扰动,即对数值型数据添加噪声以脱敏。其中表1所示的原始数据集为csv的乳腺癌数据集。
[0039]
表1 csv的乳腺癌数据集
[0040][0041]
在这里需要说明的一点是:原始数据集中可能涉及到一些隐私信息,这些隐私信息在生产以及数据传输过程中可能禁止对外公开,那么在传输过程中需要对原始数据集进行加密传输,对于原始数据集采用何种方式传输,本实施例不进行限定。
[0042]
102:对原始数据集、第一脱敏数据集和第二脱敏数据集中各条数据的属性进行事务映射,得到原始数据集对应的第一事务数据集、第一脱敏数据集对应的第二事务数据集和第二脱敏数据集对应的第三事务数据集。
[0043]
事务映射是对原始数据集、第一脱敏数据集和第二脱敏数据集中的各条数据的映射,以弱化原始数据集、第一脱敏数据集和第二脱敏数据集中的各条数据的具体取值和表征内容,如通过类别标签形式表征原始数据集、第一脱敏数据集和第二脱敏数据集中的各条数据。
[0044]
例如原始数据集、第一脱敏数据集和第二脱敏数据集中的各条数据对应某个属性且记录该属性的属性值,则在进行事务映射过程中可以以但不限于以a、b、c、d、e、f

等代表原始数据集、第一脱敏数据集和第二脱敏数据集中的属性,可以以但不限于以1、2、3

等表示属性值所属区间,例如以a1,a2...等分别表示一个属性对应的各个属性值所属区间,以s1,s2

等分别表示另一个属性对应的各个属性值所属区间。
[0045]
针对上述表1所示的原始数据集在进行事务映射之后的结果如表2所示
[0046]
表2 csv的乳腺癌数据集的事务映射结果
[0047][0048]
在原始数据集、第一脱敏数据集和第二脱敏数据集中的数据对应不同类型属性,意味着原始数据集、第一脱敏数据集和第二脱敏数据集中存在不同类型数据,对于不同类型数据采用但不限于采用如下事务映射方式进行处理:
[0049]
对原始数据集、第一脱敏数据集和第二脱敏数据集中的数值型数据采用等分方式或一维聚类方式进行处理。数值型数据是一些单纯的数字,不具备逻辑含义,如病人血液指标中各种细胞或化学成分含量,银行信用卡用户信用指标、用户年龄等都属于数值型数据,如用户年龄可以是14、20等数字,其不具备逻辑含义,那么对于数值型数据来说,本实施例可以采用但不限于采用两种处理函数:等分方式(如n等分处理方式)以及一维聚类法中的任意一种进行处理。在实际处理过程中可根据数值型数据进行选择,例如,对于用户年龄这种数值型数据适用于均分法的数据,采用但不限于采用以十为单位的划分法,对其进行划分。但是等分方式不适于不符合等分规律的数值型数据,对于有独特分布规律且等分并不适用的数值型数据来说,可以采用一维聚类法对数据进行精准划分,聚类操作会将数值相近的记录归纳到一个簇中同时每次划分都会使得每个区间内的数据相对密集,可以更好的描述数值型数据对应的数值的分布情况。
[0050]
对原始数据集、第一脱敏数据集和第二脱敏数据集中的逻辑意义型数据进行字段拆分,得到逻辑意义型数据的各字段,并从逻辑意义型数据的各字段中筛选出表征逻辑意义型数据的关键信息的字段,对筛选出的字段进行事务映射。逻辑意义型数据是由多个有逻辑含义的字段组成的数据,逻辑意义型数据具有多段单独含义,且一些逻辑意义型数据具有校验位。目前常见的逻辑意义型数据包括但不限于:身份证号和银行卡号等,以身份证号为例进行说明,身份证号这种逻辑意义型数据包括身份证号的4个逻辑字段含义,分别是所属城市、出生日期、性别和校验码,对于逻辑意义型数据进行事务映射过程中可以按照具有逻辑意义的字段对逻辑意义型数据进行拆分,以将具有逻辑意义的字段从逻辑意义型数据中分离作为一个新的字段,然后对新的字段属性进行逐个筛选,以筛选出表征逻辑意义型数据的关键信息的字段,如身份证号来说所属城市和出生日期是关键信息的字段,则筛选出这两个字段进行保留,其他字段可以删除,从而能够在保留关键信息的同时减少数据量。对于逻辑意义型数据的处理过程图2所示,可以包括以下步骤:
[0051]
1)按照具有逻辑意义的字段对逻辑意义型数据进行拆分,以将具有逻辑意义的字段从逻辑意义型数据中分离作为一个新的字段,如图2中的字段1至字段n表示分离出的新的字段;2)判断分离出的字段是否表征关键信息,如果是保留表征关键信息的字段,如图2中筛选后的子字段1至(n-k),如果否删除;3)对筛选出的子字段进行事务映射,事务映射过
程可以是但不限于是:以a、b、c、d、e、f

等代表字段(也可以称为是属性),可以以但不限于以1、2、3

等表示字段值所属区间,例如a字段的字段值在[10,15)区间时事务映射为a1,a字段的字段值在[16,24)区间时事务映射为a2等等。
[0052]
对原始数据集、第一脱敏数据集和第二脱敏数据集中的分类型数据进行泛化处理。泛化处理是指把原始数据集中的取值精确的数据变为取值模糊、范围较大的数据,以模糊数据精度,将可区分的不同数据变得不可区分,提高发布数据的安全性,达到原始数据集满足对隐私信息的保密要求,且通过泛化处理后保证数据不会过度失真,保留一定的可用性。对分类型数据的泛化处理可采用但不限于已有泛化处理方式,对此本实施例不再详述。
[0053]
在对分类型数据进行泛化处理过程中,如果原始数据集、第一脱敏数据集和第二脱敏数据集中任一数据集中的分类型数据的数量大于预设数量,则对分类型数据的数量大于预设数量的数据集中的分类型数据进行泛化处理;如果分类型数据的数量小于或等于预设数量,则可以直接使用分类型数据。其中预设数量是用于限定对数据集中的分类型数据进行泛化处理的标注,在分类型数据的数量大于预设数量的情况下,通过泛化处理减少数据集中分类型数据的类别,便于分析,对于预设数量的取值本实施例不进行限定。
[0054]
在完成对原始数据集、第一脱敏数据集和第二脱敏数据集中各数值型数据、逻辑意义型数据和分类型数据的处理后,得到第一事务数据集、第二事务数据集和第三事务数据集。
[0055]
在本实施例中,针对原始数据集、第一脱敏数据集和第二脱敏数据集中各数值型数据、逻辑意义型数据和分类型数据的处理过程可嵌入到事务映射模块中(简称process模块),将任一数据集中的数据类型输入到process模块,通过process模块对数据进行事务映射,得到各数据对应的类别标签。
[0056]
如上述表1所示原始数据集中对应的数据类型为[

num’,’num’,’num’,’num’,’num’,’num’,’category’,’category’,’category’,’category’],其中num表示数值型数据,category表示分类型数据,原始数据集对应的数据类型可存在于工程conf目录下的data_class.py配置文件中,每种数据类型的数据的处理方式也处理函数表示,在对原始数据集中的各条数据进行处理时,通过process模块调用对应的处理函数进行事务映射,得到各数据对应的类别标签,如上述表2所示。
[0057]
103:根据第一事务数据集和第二事务数据集确定第一脱敏算法的第一脱敏效果,根据第一事务数据集和第三事务数据集确定第二脱敏算法的第二脱敏效果。
[0058]
对于不同企业来说,用于对原始数据集进行脱敏处理的脱敏算法属于个性化定制,且脱敏算法会受到保护不会对外界公开,因此从脱敏算法的角度评估脱敏算法的可用性与安全性虽然准确,但由于脱敏算法获取难度很大,且基于脱敏算法的评估仅适用于评估针对的脱敏算法使得基于脱敏算法的评估具有难度大和适用性低的问题。为此本实施例放弃从脱敏算法的角度入手,转而从数据这一角度切入问题,通过与第一脱敏算法和第二脱敏算法各自对应的数据集中的数据比对,以黑盒方式对第一脱敏算法和第二脱敏算法的脱敏效果进行评估。因为对第一脱敏算法和第二脱敏算法的脱敏效果进行评估不关注脱敏实现过程,只关注脱敏最终结果(即数据集中的数据),使得对脱敏算法的评估适用于各类型的脱敏算法。
[0059]
其中第一脱敏算法和第二脱敏算法的脱敏效果可以根据但不限于根据脱敏损失
率、脱敏算法覆盖率和脱敏成功率中的至少一种确定,脱敏损失率用于指示原始数据集经过脱敏后受到脱敏过程影响造成的数据集蕴含信息损失的程度,目前脱敏处理的目的是在保证脱敏安全性的情况下,减少脱敏算法对原始数据集反映出的知识样模的影响,使得脱敏后的数据集尽可能保留原始数据集具有的包括统计特征在内的有价值特征,因此脱敏损失率是是评估脱敏算法的脱敏指标中最为重要的一个指标,直接反应脱敏算法的好坏。
[0060]
脱敏算法覆盖率用于描述脱敏算法对应脱敏数据的覆盖程度,也就是脱敏算法对各种不同数据的适用范围或兼容程度,可以直观的反映出脱敏算法是否有处理各种典型数据的能力;脱敏成功率用于表征脱敏算法对数据集中的数据成功脱敏的记录,脱敏成功率越高脱敏效果也越好。
[0061]
基于上述脱敏损失率、脱敏算法覆盖率和脱敏成功率中的至少一种脱敏指标,本实施例确定第一脱敏算法的第一脱敏效果和第二脱敏算法的第二脱敏效果的过程如图3所示,图3所示流程以第一事务数据集为脱敏前数据集,以第二事务数据集和第三事务数据集中的任一数据集为脱敏后数据集,示出确定对应脱敏算法的脱敏效果的过程,如以第二事务数据集为脱敏后数据集,图3示出了确定第一脱敏算法的第一脱敏效果的过程,同样的图3适用于确定第二脱敏算法的第二脱敏效果,可以包括以下步骤:
[0062]
201:根据脱敏前数据集和脱敏后数据集,确定对应的脱敏算法的脱敏指标。202:根据脱敏指标,确定对应的脱敏算法的脱敏效果。
[0063]
脱敏指标包括但不限于脱敏损失率、脱敏算法覆盖率和脱敏成功率中的至少一种,其中脱敏损失率、脱敏算法覆盖率和脱敏成功率的获得过程如下:
[0064]
方式一、获得脱敏损失率:确定脱敏前数据集中各条数据之间的关联关系,确定脱敏后数据集中各条数据之间的关联关系;利用最小支持度阈值和最小可信度阈值,从脱敏后数据集中各条数据之间的关联关系中筛选出目标关联关系;根据脱敏前数据集中各条数据之间的关联关系的第一数量和目标关联关系的第二数量,得到脱敏损失率。
[0065]
关联关系是反映一个事物与其他事物之间的相互依存性和关联性,是数据挖掘的一个重要技术,通过关联关系能够挖掘出脱敏前数据集和脱敏后数据集中各条数据之间的联系。关联关系的一般表现为蕴含式规则x

y,其中x和y是两个不相交的项集即x称为关联关系的前提或先导条件,y称为关联关系的结果或后继;上述蕴含是的意义为x会导致y。
[0066]
在本实施例中,脱敏前数据集和脱敏后数据集可以输入到关联关系挖掘模块(简称associate_rule.py模块)中,该associate_rule.py模块可以利用但不限于利用apriori算法以及fp-growth算法中的任意一种关联关系挖掘算法进行关联关系的挖掘。由于脱敏算法对数据中有价值信息造成信息损失,脱敏前数据集和脱敏后数据集在经过关联关系挖掘算法处理后得到两组相似但是又不完全相同的关联关系集合,以通过关联关系集合示出脱敏后的信息损失(如不完全相同的关联关系数量),以通过信息损失进行脱敏损失率的确定。对于apriori算法以及fp-growth算法,本实施例不在进行阐述。
[0067]
对上述数据集对应的脱敏前数据集和脱敏后数据集使用apriori算法进行关联关系挖掘,挖掘出的关联关系集合存在着些许的差异,如表3所示:
[0068]
表3关联关系集合
[0069][0070]
脱敏前数据集和脱敏后数据集中各条数据之间的关联关系的生成情况与最小支持度阈值与最小可信度阈值有密切的关系,利用最小支持度阈值和最小可信度阈值,从脱敏后数据集中各条数据之间的关联关系中筛选出目标关联关系,以通过目标关联关系来获得脱敏损失率。
[0071]
脱敏损失率=目标关联关系的数量/脱敏前数据集中关联关系的数量,如针对上述原始数据集来说,通过改变数据扰动添加的高斯噪声的方差来模拟脱敏算法的不同脱敏等级,结果如表4所示,示出不同脱敏等级下的脱敏损失率。
[0072]
表4不同脱敏等级下的脱敏损失率
[0073] 脱敏前规则数脱敏后规则数规则保留数幽灵规则数脱敏损失率variance=025232300.08variance=0.0525211920.24variance=0.1025181800.28variance=0.1525151500.4variance=0.2025141400.44
[0074]
因为数据集中数据类型不同、数据记录数和数据的分布特征中至少一种不同,在实际应用中可根据数据集中的数据类型、数据记录数和数据的分布特征中的至少一种调整最小支持度阈值与最小可信度阈值,从而筛选出相对有用且数量足够的目标关联关系,以有效地获得脱敏损失率。
[0075]
方式二、获得脱敏算法覆盖率:根据脱敏前数据集和脱敏后数据集,确定对脱敏前数据集中已脱敏的属性数量。根据已脱敏的属性数量和脱敏前数据集对应的目标脱敏属性数量,得到脱敏算法覆盖率。
[0076]
脱敏算法覆盖率=已脱敏的属性数量/目标脱敏属性数量,对于不同原始数据集来说,存在数据基数庞大,数据维度很高且属性有差异等问题,通过脱敏算法覆盖率能够检验脱敏算法是否全面地对数据集中的数据进行脱敏的关键指标。目标脱敏属性数量可根据脱敏前数据集中的数据而定,一般是覆盖脱敏前数据集中的所有属性,已脱敏的属性数量则是脱敏后数据集相对于脱敏前数据集来说,实际已经被脱敏的属性的数量,可根据实际脱敏结果而定。
[0077]
方式三、获得脱敏成功率:对脱敏前数据集和脱敏后数据集中每条数据的字段进行验证,以确定脱敏后数据集中的字段是否成功脱敏,得到脱敏后数据集对应的脱敏成功数,脱敏成功数为脱敏后数据集中成功脱敏的字段的数量。根据脱敏成功数和脱敏处理总字段数,得到脱敏成功率。
[0078]
如脱敏成功率=脱敏成功数/脱敏处理总字段数,对脱敏前数据集和脱敏后数据集中每条数据的字段验证过程包括但不限于如下过程:
[0079]
对脱敏后数据集中的每条数据进行字段长度检测,以确定每条数据中的字段的长度是否与该种字段的预设长度一致,如果一致确定成功脱敏,如果不一致确定脱敏失败,例如对于身份证号来说,脱敏后数据集中表征身份证号的数据中每个字段的长度分别与各自的预设长度一致,如身份证号中的出生日期是4位,则脱敏后数据集中表征身份证号的数据中出生日期也应该是4位,如果不是4位确定脱敏失败;
[0080]
检测脱敏后数据集中的数据中每个字段的字段值与脱敏前数据集中该条数据匹配的数据中每个字段的字段值是否相同,如果相同确定脱敏失败,如果不同确定成功脱敏;
[0081]
检测脱敏后数据集的数据中具有校验规则的字段是否符合校验规则,若不符合校验规则确定脱敏失败,如果符合校验规则确定成功脱敏。不同字段对应的校验规则可能不同,如身份证号和银行卡号等对应的校验规则不同,本实施例不再对校验规则进行一一列举。
[0082]
在经过上述方式对脱敏前数据集和脱敏后数据集进行检测后,获得脱敏成功数,然后参照脱敏成功率=脱敏成功数/脱敏处理总字段数,得到脱敏成功率。
[0083]
上述脱敏算法覆盖率和脱敏成功率以字段为基础进行量化评估,在实际使用过程中可以涵盖各行业的通用字段,并通过量化数字形式(脱敏算法覆盖率和脱敏成功率是视为是量化数字)精准且直观地描述出脱敏后数据集的可用程度,客观反映脱敏效果,具有普适性。
[0084]
在得到上述脱敏损失率、脱敏算法覆盖率和脱敏成功率中的至少一种脱敏指标后,根据脱敏指标确定对应的脱敏算法的脱敏效果的方式包括但不限于:
[0085]
如果脱敏指标包括上述脱敏损失率、脱敏算法覆盖率和脱敏成功率中的任意一种,可将脱敏指标作为脱敏效果,例如脱敏损失率越低脱敏效果越好,对于脱敏算法覆盖率和脱敏成功率则是取值越高脱敏效果越好。
[0086]
如果脱敏指标包括上述脱敏损失率、脱敏算法覆盖率和脱敏成功率中的至少两种,可以设置脱敏指标中每个参数的优先级,将每个参数的优先级和每个参数的参数值确定为脱敏效果,在这种方式下如果第一脱敏算法的脱敏效果中优先级最高的参数的参数值大于第二脱敏算法的脱敏效果中优先级最高的参数的参数值,则第一脱敏算法的脱敏效果好于第二脱敏算法的脱敏效果,反之第二脱敏算法的脱敏效果好于第一脱敏算法的脱敏效果;如果第一脱敏算法和第二脱敏算法的脱敏效果中优先级最高的参数的参数值,则对优先级次高的参数的参数值进行比对,如果相同,则继续下一个优先级比对,直至获取到具有相同优先级但参数值不同的参数,以根据具有相同优先级但参数值不同的参数确定第一脱敏算法和第二脱敏算法中脱敏效果好的脱敏算法;当然还按照加权方式对脱敏指标中的参数进行处理,以得到表征脱敏效果的数值,这种方式下数值越高脱敏效果越好。
[0087]
104:根据第一脱敏效果和第二脱敏效果,从第一脱敏算法和第二脱敏算法中确定
目标脱敏算法,以后续利用目标脱敏算法对原始数据集进行脱敏处理。
[0088]
上述数据脱敏处理方法,利用第一脱敏算法和第二脱敏算法分别对原始数据集进行脱敏处理,得到第一脱敏算法对应的第一脱敏数据集和第二脱敏算法对应的第二脱敏数据集;对原始数据集、第一脱敏数据集和第二脱敏数据集中各条数据的属性进行事务映射,得到原始数据集对应的第一事务数据集、第一脱敏数据集对应的第二事务数据集和第二脱敏数据集对应的第三事务数据集;根据第一事务数据集和第二事务数据集确定第一脱敏算法的第一脱敏效果,根据第一事务数据集和第三事务数据集确定第二脱敏算法的第二脱敏效果;根据第一脱敏效果和第二脱敏效果,从第一脱敏算法和第二脱敏算法中确定目标脱敏算法,以后续利用目标脱敏算法对原始数据集进行脱敏处理,这样对于任一原始数据集来说,不再关注脱敏算法的脱敏实现过程,转而从脱敏前后和事务映射处理后的数据出发确定第一脱敏算法和第二脱敏算法的脱敏效果,从而能够以黑盒方式对脱敏算法进行脱敏效果的评估,适用于应用于原始数据集的各脱敏算法,提高适用性。并且从脱敏前后和事务映射处理后的数据出发确定第一脱敏算法和第二脱敏算法的脱敏效果后,能够从第一脱敏算法和第二脱敏算法中确定出目标脱敏算法,如从第一脱敏算法和第二脱敏算法中确定脱敏效果好的目标脱敏算法,以再次获取到同一来源的原始数据集后利用目标脱敏算法对原始数据集进行脱敏处理,提高原始数据集的脱敏效果。
[0089]
请参见图4,其示出了本公开实施例提供的另一种数据脱敏处理方法的流程图,可以包括以下步骤:
[0090]
301:对原始数据集进行随机抽样,得到原始数据集对应的多组测评数据集;利用第一脱敏算法和第二脱敏算法分别对各组测评数据集进行脱敏处理,得到各组测评数据集的第一脱敏数据集和各组测评数据集的第二脱敏数据集。
[0091]
其中随机抽样可以是但不限于是随机从原始数据集中获取数据,以将原始数据集中的数据划分成多组测评数据集,每组测评数据集中数据的数量、测评数据集中数据的数据类型以及测评数据集中数据的数量是否相同本实施例不进行限定。
[0092]
302:对于任意一组测评数据集,对该组测评数据集、该组测评数据集的第一脱敏数据集和该组测评数据集的第二脱敏数据集中各条数据的属性进行事务映射,得到该组测评数据集对应的第一事务数据集、该组测评数据集的第一脱敏数据集对应的第二事务数据集和该组测评数据集的第二脱敏数据集对应的第三事务数据集。
[0093]
303:对于任意一组测评数据集,以该组测评数据集对应的第一事务数据集为脱敏前数据集,以该组测评数据集的第一脱敏数据集对应的第二事务数据集和该组测评数据集的第二脱敏数据集对应的第三事务数据集中的任一数据集为脱敏后数据集,根据脱敏前数据集和脱敏后数据集,确定该组测评数据集对应的脱敏算法的脱敏指标。
[0094]
304:根据各组测评数据集对应的脱敏算法的脱敏指标,确定原始数据集对应的脱敏算法的脱敏效果。
[0095]
在本实施例中,通过对原始数据集进行随机抽样,实现对原始数据集中数据的划分,以得到多组测评数据集。然后以每组测评数据集为单位,对每组测评数据集进行脱敏和事务映射,得到测评数据集对应的第一事务数据集、该组测评数据集的第一脱敏数据集对应的第二事务数据集和该组测评数据集的第二脱敏数据集对应的第三事务数据集,通过第一事务数据集和第二事务数据集中数据比对确定第一脱敏算法的脱敏指标,通过第一事务
数据集和第三事务数据集中数据比对确定第二脱敏算法的脱敏指标,其过程可参照上述实施例。
[0096]
在获取到各组测评数据集对应的第一脱敏算法的脱敏指标以及第二脱敏算法的脱敏指标后,根据各组测评数据集对应的第一脱敏算法的脱敏指标,确定原始数据集对应的第一脱敏算法的脱敏指标,以及根据各组测评数据集对应的第二脱敏算法的脱敏指标,确定原始数据集对应的第二脱敏算法的脱敏指标。
[0097]
如果各自测评数据集对应的第一脱敏算法的脱敏指标包括上述脱敏损失率、脱敏算法覆盖率和脱敏成功率中的任意一种,可通过但不限于平均化方式得到表征脱敏效果的数值;如果各自测评数据集对应的第一脱敏算法的脱敏指标包括上述脱敏损失率、脱敏算法覆盖率和脱敏成功率中的至少两种,也可通过但不限于平均化方式得到表征脱敏效果的数值,或以上述优先级方式确定脱敏效果。
[0098]
通过上述随机抽样方式将原始数据集划分成多组测评数据集,虽然各组测评数据集都能够获取到脱敏指标,但是会存在脱敏指标不达标,即脱敏指标不满足预设条件的情况,不满足预设条件的脱敏指标会影响脱敏效果的确定,因此本实施例在确定原始数据集对应的脱敏算法的脱敏效果过程可采用如下方式:
[0099]
从各组测评数据集对应的脱敏算法的脱敏指标中,确定满足预设条件的目标脱敏指标;根据目标脱敏指标,确定原始数据集对应的脱敏算法的脱敏可用性,脱敏可用性视为是脱敏算法的脱敏效果。预设条件可设置脱敏指标对应的阈值,如脱敏指标包括脱敏损失率、脱敏算法覆盖率和脱敏成功率中的至少一种,在预设条件中分别设置每个参数对应的阈值,如果都大于各自的阈值,确定满足预设条件。如图5所示,示出第一脱敏算法和第二脱敏算法中任一脱敏算法确定脱敏可用性的过程,可以包括以下步骤:
[0100]
1)对原始数据集进行随机抽样,得到多组测评数据集,并对每组测评数据集利用第一脱敏算法和第二脱敏算法中的一种脱敏算法进行脱敏处理;
[0101]
2)对每组测评数据集和每组测评数据集对应的脱敏数据集进行事务映射,分别得到脱敏前数据集和脱敏后数据集;
[0102]
3)选择一组脱敏前数据集和脱敏后数据集,并将两个数据集导入到量化脱敏评估模型中进行脱敏算法评估,量化脱敏评估模型以上述方式计算脱敏算法的脱敏指标,如脱敏算法覆盖率、脱敏成功率和脱敏损失率;
[0103]
4)将脱敏算法覆盖率、脱敏成功率和脱敏损失率与各自的阈值进行比较,以判断本次测评得到的脱敏算法覆盖率、脱敏成功率和脱敏损失率是否可作为目标脱敏指标;
[0104]
5)重新选择一组脱敏前数据集和脱敏后数据集,重复上述3)-4)步骤直至所有脱敏前数据集和脱敏后数据集完成测评;
[0105]
6)基于目标脱敏指标,确定脱敏可用性,如对目标脱敏指标中各参数的参数值进行加权平均,将加权平均的结果表示脱敏可用性。
[0106]
305:根据第一脱敏效果和第二脱敏效果,从第一脱敏算法和第二脱敏算法中确定目标脱敏算法,以后续利用目标脱敏算法对原始数据集进行脱敏处理。
[0107]
附图中的流程图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定
的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,流程图中的每个方框、以及流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0108]
虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。
[0109]
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
[0110]
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0111]
与上述方法实施例相对应,本公开实施例还提供一种数据脱敏处理装置,其可选结构如图6所示,可以包括:脱敏处理单元10、事务映射单元20、第一确定单元30和第二确定单元40。
[0112]
脱敏处理单元10,用于利用第一脱敏算法和第二脱敏算法分别对原始数据集进行脱敏处理,得到第一脱敏算法对应的第一脱敏数据集和第二脱敏算法对应的第二脱敏数据集。
[0113]
事务映射单元20,用于对原始数据集、第一脱敏数据集和第二脱敏数据集中各条数据的属性进行事务映射,得到原始数据集对应的第一事务数据集、第一脱敏数据集对应的第二事务数据集和第二脱敏数据集对应的第三事务数据集。
[0114]
事务映射是对原始数据集、第一脱敏数据集和第二脱敏数据集中的各条数据的映射,以弱化原始数据集、第一脱敏数据集和第二脱敏数据集中的各条数据的具体取值和表征内容,如通过类别标签形式表征原始数据集、第一脱敏数据集和第二脱敏数据集中的各条数据。其中事务映射单元20的事务映射过程如下:
[0115]
对原始数据集、第一脱敏数据集和第二脱敏数据集中的数值型数据采用等分方式或一维聚类方式进行处理;
[0116]
对原始数据集、第一脱敏数据集和第二脱敏数据集中的逻辑意义型数据进行字段拆分,得到逻辑意义型数据的各字段,并从逻辑意义型数据的各字段中筛选出表征逻辑意义型数据的关键信息的字段,对筛选出的字段进行事务映射;
[0117]
对原始数据集、第一脱敏数据集和第二脱敏数据集中的分类型数据进行泛化处理;
[0118]
在完成对原始数据集、第一脱敏数据集和第二脱敏数据集中各数值型数据、逻辑
意义型数据和分类型数据的处理后,得到第一事务数据集、第二事务数据集和第三事务数据集。
[0119]
上述事务映射的过程说明请参见方法实施例,此处不再赘述。
[0120]
第一确定单元30,用于根据第一事务数据集和第二事务数据集确定第一脱敏算法的第一脱敏效果,根据第一事务数据集和第三事务数据集确定第二脱敏算法的第二脱敏效果。
[0121]
其中第一脱敏算法和第二脱敏算法的脱敏效果可以从但不限于根据脱敏损失率、脱敏算法覆盖率和脱敏成功率中的至少一种脱敏指标确定,脱敏损失率用于指示原始数据集经过脱敏后受到脱敏过程影响造成的数据集蕴含信息损失的程度,目前脱敏处理的目的是在保证脱敏安全性的情况下,减少脱敏算法对原始数据集反映出的知识样模的影响,使得脱敏后的数据集尽可能保留原始数据集具有的包括统计特征在内的有价值特征,因此脱敏损失率是是评估脱敏算法的脱敏指标中最为重要的一个指标,直接反应脱敏算法的好坏。
[0122]
脱敏算法覆盖率用于描述脱敏算法对应脱敏数据的覆盖程度,也就是脱敏算法对各种不同数据的适用范围或兼容程度,可以直观的反映出脱敏算法是否有处理各种典型数据的能力;脱敏成功率用于表征脱敏算法对数据集中的数据成功脱敏的记录,脱敏成功率越高脱敏效果也越好。
[0123]
针对第一事务数据集和第二事务数据集、第一事务数据集和第三事务数据集来说,第一确定单元30以第一事务数据集为脱敏前数据集,以第二事务数据集和第三事务数据集中的任一数据集为脱敏后数据集,根据脱敏前数据集和脱敏后数据集通过如下至少一种方式确定对应的脱敏算法的脱敏指标,根据脱敏指标,确定对应的脱敏算法的脱敏效果:
[0124]
方式一、确定脱敏前数据集中各条数据之间的关联关系,确定脱敏后数据集中各条数据之间的关联关系;
[0125]
利用最小支持度阈值和最小可信度阈值,从脱敏后数据集中各条数据之间的关联关系中筛选出目标关联关系;
[0126]
根据脱敏前数据集中各条数据之间的关联关系的第一数量和目标关联关系的第二数量,得到脱敏损失率;
[0127]
方式二、根据脱敏前数据集和脱敏后数据集,确定对脱敏前数据集中已脱敏的属性数量;根据已脱敏的属性数量和脱敏前数据集对应的目标脱敏属性数量,得到脱敏算法覆盖率;
[0128]
方式三、对脱敏前数据集和脱敏后数据集中每条数据的字段进行验证,以确定脱敏后数据集中的字段是否成功脱敏,得到脱敏后数据集对应的脱敏成功数,脱敏成功数为脱敏后数据集中成功脱敏的字段的数量;根据脱敏成功数和脱敏处理总字段数,得到脱敏成功率。
[0129]
第二确定单元40,用于根据第一脱敏效果和第二脱敏效果,从第一脱敏算法和第二脱敏算法中确定目标脱敏算法,以后续利用目标脱敏算法对原始数据集进行脱敏处理。
[0130]
上述数据脱敏处理装置,利用第一脱敏算法和第二脱敏算法分别对原始数据集进行脱敏处理,得到第一脱敏算法对应的第一脱敏数据集和第二脱敏算法对应的第二脱敏数据集;对原始数据集、第一脱敏数据集和第二脱敏数据集中各条数据的属性进行事务映射,
得到原始数据集对应的第一事务数据集、第一脱敏数据集对应的第二事务数据集和第二脱敏数据集对应的第三事务数据集;根据第一事务数据集和第二事务数据集确定第一脱敏算法的第一脱敏效果,根据第一事务数据集和第三事务数据集确定第二脱敏算法的第二脱敏效果;根据第一脱敏效果和第二脱敏效果,从第一脱敏算法和第二脱敏算法中确定目标脱敏算法,以后续利用目标脱敏算法对原始数据集进行脱敏处理,这样对于任一原始数据集来说,不再关注脱敏算法的脱敏实现过程,转而从脱敏前后和事务映射处理后的数据出发确定第一脱敏算法和第二脱敏算法的脱敏效果,从而能够以黑盒方式对脱敏算法进行脱敏效果的评估,适用于应用于原始数据集的各脱敏算法,提高适用性。并且从脱敏前后和事务映射处理后的数据出发确定第一脱敏算法和第二脱敏算法的脱敏效果后,能够从第一脱敏算法和第二脱敏算法中确定出目标脱敏算法,如从第一脱敏算法和第二脱敏算法中确定脱敏效果好的目标脱敏算法,以再次获取到同一来源的原始数据集后利用目标脱敏算法对原始数据集进行脱敏处理,提高原始数据集的脱敏效果。
[0131]
上述脱敏处理单元10能够对原始数据集进行随机抽样,得到原始数据集对应的多组测评数据集;利用第一脱敏算法和第二脱敏算法分别对各组测评数据集进行脱敏处理,得到各组测评数据集的第一脱敏数据集和各组测评数据集的第二脱敏数据集;第一确定单元30则可以根据各组测评数据集的脱敏指标,确定对应的脱敏算法的脱敏效果,如从各组测评数据集的脱敏指标中,确定满足预设条件的目标脱敏指标;根据目标脱敏指标,确定原始数据集对应的脱敏算法的脱敏可用性,过程说明请参见上述方法实施例。
[0132]
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一确定单元还可以被描述为“第一聚类控制单元指示完成对待处理数据集的一次聚类后,确定待处理数据集中没有加入已有簇的数据的数量的单元”。
[0133]
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。
[0134]
下面参考图7,其示出了适于用来实现本公开实施例的电子设备300的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)等等的移动终端以及诸如台式计算机等等的固定终端。图7示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0135]
如图7所示,电子设备300可以包括处理器(例如中央处理器、图形处理器等)301,其可以执行存储在存储器302中的可执行指令以实现上述数据脱敏处理方法。存储器302可以是但不限于是只读存储器(rom)和随机访问存储器(ram)中的至少一种。处理器301和存储器302之间可以通过总线303相连,以通过总线303通信。此外电子设备300还可以包括输入/输出(i/o)接口304,输入/输出(i/o)接口304也连接至总线303。
[0136]
通常,以下装置可以连接至i/o接口304:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置305;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置306;包括例如磁带、硬盘等的存储装置307以及通信装置308。通信装置308可以允许电子设备300与其他设备进行无线或有线通信以交换数据。虽然图7示出了具
有各种装置的电子设备300,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
[0137]
本公开实施例还提供一种计算机存储介质,当计算机存储介质中的程序由电子设备的处理器执行时,使得电子设备能够执行上述数据处理方法,如上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行如上述数据脱敏处理方法,如使得该电子设备:
[0138]
利用第一脱敏算法和第二脱敏算法分别对原始数据集进行脱敏处理,得到所述第一脱敏算法对应的第一脱敏数据集和所述第二脱敏算法对应的第二脱敏数据集;对所述原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中各条数据的属性进行事务映射,得到所述原始数据集对应的第一事务数据集、所述第一脱敏数据集对应的第二事务数据集和所述第二脱敏数据集对应的第三事务数据集;根据所述第一事务数据集和所述第二事务数据集确定所述第一脱敏算法的第一脱敏效果,根据所述第一事务数据集和所述第三事务数据集确定所述第二脱敏算法的第二脱敏效果;根据所述第一脱敏效果和所述第二脱敏效果,从所述第一脱敏算法和所述第二脱敏算法中确定目标脱敏算法,以后续利用所述目标脱敏算法对所述原始数据集进行脱敏处理。
[0139]
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0140]
在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
[0141]
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
[0142]
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置从网络上被下载和安装,或者从存储器被安装。在该计算机程序被处理器执行时,执行本公开实施例的方法中限定的上述功能。
[0143]
根据本公开的一个或多个实施例,提供了一种数据脱敏处理方法,其特征在于,所述方法包括:
[0144]
利用第一脱敏算法和第二脱敏算法分别对原始数据集进行脱敏处理,得到所述第一脱敏算法对应的第一脱敏数据集和所述第二脱敏算法对应的第二脱敏数据集;
[0145]
对所述原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中各条数据的属性进行事务映射,得到所述原始数据集对应的第一事务数据集、所述第一脱敏数据集对应的第二事务数据集和所述第二脱敏数据集对应的第三事务数据集;
[0146]
根据所述第一事务数据集和所述第二事务数据集确定所述第一脱敏算法的第一脱敏效果,根据所述第一事务数据集和所述第三事务数据集确定所述第二脱敏算法的第二脱敏效果;
[0147]
根据所述第一脱敏效果和所述第二脱敏效果,从所述第一脱敏算法和所述第二脱敏算法中确定目标脱敏算法,以后续利用所述目标脱敏算法对所述原始数据集进行脱敏处理。
[0148]
根据本公开的一个或多个实施例,所述根据所述第一事务数据集和所述第二事务数据集确定所述第一脱敏算法的第一脱敏效果,根据所述第一事务数据集和所述第三事务数据集确定所述第二脱敏算法的第二脱敏效果包括:
[0149]
以所述第一事务数据集为脱敏前数据集,以所述第二事务数据集和所述第三事务数据集中的任一数据集为脱敏后数据集,根据所述脱敏前数据集和所述脱敏后数据集通过如下至少一种方式确定对应的脱敏算法的脱敏指标,根据所述脱敏指标,确定对应的脱敏算法的脱敏效果:
[0150]
方式一、确定所述脱敏前数据集中各条数据之间的关联关系,确定所述脱敏后数据集中各条数据之间的关联关系;
[0151]
利用最小支持度阈值和最小可信度阈值,从所述脱敏后数据集中各条数据之间的关联关系中筛选出目标关联关系;
[0152]
根据所述脱敏前数据集中各条数据之间的关联关系的第一数量和所述目标关联关系的第二数量,得到脱敏损失率;
[0153]
方式二、根据所述脱敏前数据集和所述脱敏后数据集,确定对所述脱敏前数据集中已脱敏的属性数量;根据所述已脱敏的属性数量和所述脱敏前数据集对应的目标脱敏属性数量,得到脱敏算法覆盖率;
[0154]
方式三、对所述脱敏前数据集和所述脱敏后数据集中每条数据的字段进行验证,以确定所述脱敏后数据集中的字段是否成功脱敏,得到所述脱敏后数据集对应的脱敏成功数,所述脱敏成功数为所述脱敏后数据集中成功脱敏的字段的数量;根据所述脱敏成功数和脱敏处理总字段数,得到脱敏成功率。
[0155]
根据本公开的一个或多个实施例,所述利用第一脱敏算法和第二脱敏算法分别对原始数据集进行脱敏处理,得到所述第一脱敏算法对应的第一脱敏数据集和所述第二脱敏算法对应的第二脱敏数据集包括:
[0156]
对所述原始数据集进行随机抽样,得到所述原始数据集对应的多组测评数据集;利用第一脱敏算法和第二脱敏算法分别对各组测评数据集进行脱敏处理,得到所述各组测评数据集的第一脱敏数据集和所述各组测评数据集的第二脱敏数据集;
[0157]
所述根据所述脱敏指标,确定对应的脱敏算法的脱敏效果包括:根据各组测评数据集的脱敏指标,确定对应的脱敏算法的脱敏效果。
[0158]
根据本公开的一个或多个实施例,所述根据各组测评数据集的脱敏指标,确定对应的脱敏算法的脱敏效果包括:
[0159]
从所述各组测评数据集的脱敏指标中,确定满足预设条件的目标脱敏指标;
[0160]
根据所述目标脱敏指标,确定原始数据集对应的脱敏算法的脱敏可用性。
[0161]
根据本公开的一个或多个实施例,所述对所述原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中各条数据的属性进行事务映射,得到所述原始数据集对应的第一事务数据集、所述第一脱敏数据集对应的第二事务数据集和所述第二脱敏数据集对应的第三事务数据集包括:
[0162]
对所述原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中的数值型数据采用等分方式或一维聚类方式进行处理;
[0163]
对所述原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中的逻辑意义型数据进行字段拆分,得到所述逻辑意义型数据的各字段,并从所述逻辑意义型数据的各字段中筛选出表征逻辑意义型数据的关键信息的字段,对筛选出的字段进行事务映射;
[0164]
对所述原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中的分类型数据进行泛化处理;
[0165]
在完成对原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中各数值型数据、逻辑意义型数据和分类型数据的处理后,得到所述第一事务数据集、所述第二事务数据集和所述第三事务数据集。
[0166]
根据本公开的一个或多个实施例,提供了一种数据脱敏处理装置,所述装置包括:
[0167]
脱敏处理单元,用于利用第一脱敏算法和第二脱敏算法分别对原始数据集进行脱敏处理,得到所述第一脱敏算法对应的第一脱敏数据集和所述第二脱敏算法对应的第二脱敏数据集;
[0168]
事务映射单元,用于对所述原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中各条数据的属性进行事务映射,得到所述原始数据集对应的第一事务数据集、所述第一脱敏数据集对应的第二事务数据集和所述第二脱敏数据集对应的第三事务数据集;
[0169]
第一确定单元,用于根据所述第一事务数据集和所述第二事务数据集确定所述第一脱敏算法的第一脱敏效果,根据所述第一事务数据集和所述第三事务数据集确定所述第二脱敏算法的第二脱敏效果;
[0170]
第二确定单元,用于根据所述第一脱敏效果和所述第二脱敏效果,从所述第一脱敏算法和所述第二脱敏算法中确定目标脱敏算法,以后续利用所述目标脱敏算法对所述原始数据集进行脱敏处理。
[0171]
根据本公开的一个或多个实施例,所述第一确定单元,以所述第一事务数据集为脱敏前数据集,以所述第二事务数据集和所述第三事务数据集中的任一数据集为脱敏后数据集,根据所述脱敏前数据集和所述脱敏后数据集通过如下至少一种方式确定对应的脱敏算法的脱敏指标,根据所述脱敏指标,确定对应的脱敏算法的脱敏效果:
[0172]
方式一、确定所述脱敏前数据集中各条数据之间的关联关系,确定所述脱敏后数据集中各条数据之间的关联关系;
[0173]
利用最小支持度阈值和最小可信度阈值,从所述脱敏后数据集中各条数据之间的关联关系中筛选出目标关联关系;
[0174]
根据所述脱敏前数据集中各条数据之间的关联关系的第一数量和所述目标关联关系的第二数量,得到脱敏损失率;
[0175]
方式二、根据所述脱敏前数据集和所述脱敏后数据集,确定对所述脱敏前数据集中已脱敏的属性数量;根据所述已脱敏的属性数量和所述脱敏前数据集对应的目标脱敏属性数量,得到脱敏算法覆盖率;
[0176]
方式三、对所述脱敏前数据集和所述脱敏后数据集中每条数据的字段进行验证,以确定所述脱敏后数据集中的字段是否成功脱敏,得到所述脱敏后数据集对应的脱敏成功数,所述脱敏成功数为所述脱敏后数据集中成功脱敏的字段的数量;根据所述脱敏成功数和脱敏处理总字段数,得到脱敏成功率。
[0177]
根据本公开的一个或多个实施例,所述脱敏处理单元,用于对所述原始数据集进行随机抽样,得到所述原始数据集对应的多组测评数据集;利用第一脱敏算法和第二脱敏算法分别对各组测评数据集进行脱敏处理,得到所述各组测评数据集的第一脱敏数据集和所述各组测评数据集的第二脱敏数据集;
[0178]
所述第一确定单元,用于根据各组测评数据集的脱敏指标,确定对应的脱敏算法的脱敏效果。
[0179]
根据本公开的一个或多个实施例,所述第一确定单元,用于从所述各组测评数据集的脱敏指标中,确定满足预设条件的目标脱敏指标;根据所述目标脱敏指标,确定原始数据集对应的脱敏算法的脱敏可用性。
[0180]
根据本公开的一个或多个实施例,事务映射单元,通过如下方式进行事务映射:
[0181]
对所述原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中的数值型数据采用等分方式或一维聚类方式进行处理;
[0182]
对所述原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中的逻辑意义型数据进行字段拆分,得到所述逻辑意义型数据的各字段,并从所述逻辑意义型数据的各字段中筛选出表征逻辑意义型数据的关键信息的字段,对筛选出的字段进行事务映射;
[0183]
对所述原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中的分类型数据进行泛化处理;
[0184]
在完成对原始数据集、所述第一脱敏数据集和所述第二脱敏数据集中各数值型数据、逻辑意义型数据和分类型数据的处理后,得到所述第一事务数据集、所述第二事务数据集和所述第三事务数据集。
[0185]
根据本公开的一个或多个实施例,提供了一种电子设备,包括:
[0186]
处理器;
[0187]
用于存储处理器可执行指令的存储器;
[0188]
其中,处理器被配置为执行指令,以实现上述数据脱敏处理方法。
[0189]
根据本公开的一个或多个实施例,提供了一种计算机存储介质,当计算机存储介质中的程序由电子设备的处理器执行时,使得电子设备能够实现上述数据脱敏处理方法。
[0190]
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
[0191]
虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开
的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
[0192]
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1