CN110399746B - 一种基于敏感度分级的匿名数据发布方法及装置 - Google Patents

一种基于敏感度分级的匿名数据发布方法及装置 Download PDF

Info

Publication number
CN110399746B
CN110399746B CN201910635807.5A CN201910635807A CN110399746B CN 110399746 B CN110399746 B CN 110399746B CN 201910635807 A CN201910635807 A CN 201910635807A CN 110399746 B CN110399746 B CN 110399746B
Authority
CN
China
Prior art keywords
tuple
sensitivity
tuples
data set
attribute
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201910635807.5A
Other languages
English (en)
Other versions
CN110399746A (zh
Inventor
罗涛
孙进考
宋海娜
李剑峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201910635807.5A priority Critical patent/CN110399746B/zh
Publication of CN110399746A publication Critical patent/CN110399746A/zh
Application granted granted Critical
Publication of CN110399746B publication Critical patent/CN110399746B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供了一种基于敏感度分级的匿名数据发布方法及装置,通过根据各敏感属性,分别获取预先设置的各敏感属性对应的敏感度、多样性参数li及频率约束参数ci;根据各敏感度,对数据集进行分组,得到多个子集;从敏感度最大的子集中,选择第一元组;根据第一元组的多样性参数l,按照敏感度升序从其他(l‑1)个子集中各选择一个第二元组;将第一元组及第二元组组成元组集合,若元组集合中元组个数未达到预设个数k,则从数据集的剩余元组中,将多个第三元组加入元组集合,元组集合中第三元组的敏感属性出现的频率小于或等于第三元组的频率约束参数;对多个元组集合进行匿名化处理后发布匿名数据集,可以有效降低高敏感度数据被泄露的风险。

Description

一种基于敏感度分级的匿名数据发布方法及装置
技术领域
本发明涉及信息安全技术领域,特别是涉及一种基于敏感度分级的匿名数据发布方法及装置。
背景技术
随着大数据时代的到来,数据收集者会根据不同的需求对所收集的数据进行发布。对于数据收集者所收集的数据而言,有些数据信息属于用户的个人隐私,例如收入水平、健康状况、消费记录等信息,因此,在进行数据发布时,需要对这些隐私信息进行隐匿处理。
相关技术中,基于敏感度的(l,c)-多样性模型可以实现隐私保护数据发布。在该模型中,为待发布的数据表T中的各个元组包含的敏感属性设定了统一的频率约束参数c,并且,根据敏感属性对应的敏感度高低,为待发布的数据表T中的各个元组包含的敏感属性设定了不同的多样性参数l,这样,可以根据各个元组包含的敏感属性设定的多样性参数l,将满足等价类对于多样性要求的元组加入不同的等价类中,从而保证发布后的数据表中等价类的种类多样性。下面对该模型进行举例说明:
假设现在有一个待发布的数据表T,T的准标识符为“年龄”、“身高”和“体重”;T的敏感属性为“癌症”、“甲亢”、“发烧”和“感冒”,其中,各敏感属性的c统一设置为1/50,敏感度为5的“癌症”的l设置为3、敏感度为3的“甲亢”的l设置为2、敏感度为2的“发烧”的l设置为1和敏感度为1的“感冒”的l设置为1;T包含1000条病人的记录,其中,有10位病人的敏感属性为“癌症”。
若T包含的某个等价类中包括10个元组,并且该等价类中要求至少包含3种不同的敏感属性,其中,5个元组包含的敏感属性为“癌症”、3个元组包含的敏感属性为“甲亢”和2个元组包含的敏感属性为“感冒”。若攻击者根据等价类的划分确定某个病人在该等价类中,则在该等价类中,该病人被认为患有癌症的概率为50%,事实上,癌症患者的概率在T中只有10/1000(小于统一设置的频率约束参数c:1/50)。如果将T发布出去,那么癌症患者的信息被泄露的风险较高。
通过上述示例,不难发现,有些敏感度较高的病比如癌症,需要高度保护,但是有很多敏感度低的病比如感冒非常普遍,不需要过度保护。若敏感度较高的敏感属性在等价类中出现的频率过高,则使得攻击者以较高概率选择攻击该高敏感度数据,从而导致高敏感度数据被泄露的风险变大。
发明内容
本发明实施例的目的在于提供一种基于敏感度分级的匿名数据发布方法及装置,以实现降低高敏感度数据被泄露的风险。具体技术方案如下:
第一方面,本发明实施例提供了一种基于敏感度分级的匿名数据发布方法,所述方法包括:
获取待发布的数据集,其中,所述数据集中包括多个元组,各所述元组中至少包括敏感属性;
根据各敏感属性,分别获取预先设置的各所述敏感属性对应的敏感度、多样性参数li及频率约束参数ci
根据各所述敏感属性对应的敏感度,对所述数据集进行分组,得到多个子集,其中,同一所述子集中的元组的敏感属性对应的敏感度属于同一敏感度范围内;
从敏感度最大的所述子集中,选择第一元组,所述第一元组为所述敏感度最大的子集中的任一元组;
根据所述第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除所述敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组;
将所述第一元组及所述多个第二元组组成元组集合,并判断所述元组集合中元组个数是否达到预设个数k;
若否,则从所述数据集的剩余元组中,选择多个第三元组加入所述元组集合,所述元组集合中所述第三元组的敏感属性出现的频率小于或者等于所述第三元组的敏感属性对应的频率约束参数;
对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布所述匿名数据集。
可选的,在所述从所述数据集的剩余元组中,选择多个第三元组加入所述元组集合之后,所述方法还包括:
判断所述数据集中剩余元组的数量是否小于所述预设个数k,或者,所述数据集中剩余元组的敏感属性的种类数目是否小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数;
若所述数据集中剩余元组的数量小于所述预设个数k,或者,所述数据集中剩余元组的敏感属性的种类数目对应的多样性参数小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数,则计算若将所述数据集中剩余元组加入所述元组集合,所述元组集合中所述剩余元组的敏感属性出现的频率,并判断所述元组集合中所述剩余元组的敏感属性出现的频率是否小于或者等于所述剩余元组的敏感属性对应的频率约束参数,以及所述元组集合中加入所述剩余元组后的元组个数是否小于所述预设个数k的2倍;
若所述元组集合中所述剩余元组的敏感属性出现的频率小于或者等于所述剩余元组的敏感属性对应的频率约束参数,且所述元组集合中加入所述剩余元组后的元组个数小于所述预设个数k的2倍,则将所述数据集中剩余元组加入所述元组集合。
可选的,在所述从所述数据集的剩余元组中,选择多个第三元组加入所述元组集合之后,所述方法还包括:
判断所述数据集中剩余元组数量是否小于所述预设个数k、且所述子集的数目是否小于所述数据集中剩余元组的敏感属性对应的多样性参数;
所述对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布所述匿名数据集,包括:
若所述数据集中剩余元组数量小于所述预设个数k、且所述子集的数目小于所述数据集中剩余元组的敏感属性对应的多样性参数,则对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布所述匿名数据集。
可选的,所述敏感属性对应的敏感度与所述敏感属性对应的多样性参数li呈正比关系;所述敏感属性对应的敏感度与所述敏感属性对应的频率约束参数ci呈反比关系。
可选的,所述根据所述第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除所述敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组,包括:
根据所述元组集合中各元组,计算第一信息损失度;
按照敏感度升序依次从除所述敏感度最大的子集以外的其他(l-1)个子集中的一个子集中任意选择一个第二元组,并根据所述元组集合中的各元组及选择出的第二元组,计算第二信息损失度;
将使得所述第一信息损失度与所述第二信息损失度的差值的绝对值最小的第二元组加入所述元组集合。
第二方面,本发明实施例提供了一种基于敏感度分级的匿名数据发布装置,所述装置包括:
第一获取模块,用于获取待发布的数据集,其中,所述数据集中包括多个元组,各所述元组中至少包括敏感属性;
第二获取模块,用于根据各敏感属性,分别获取预先设置的各所述敏感属性对应的敏感度、多样性参数li及频率约束参数ci
分组模块,用于根据各所述敏感属性对应的敏感度,对所述数据集进行分组,得到多个子集,其中,同一所述子集中的元组的敏感属性对应的敏感度属于同一敏感度范围内;
第一选择模块,用于从敏感度最大的所述子集中,选择第一元组,所述第一元组为所述敏感度最大的子集中的任一元组;
第二选择模块,用于根据所述第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除所述敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组;
第一判断模块,用于将所述第一元组及所述多个第二元组组成元组集合,并判断所述元组集合中元组个数是否达到预设个数k;
第三选择模块,用于若所述元组集合中元组个数没有达到预设个数k,则从所述数据集的剩余元组中,选择多个第三元组加入所述元组集合,所述元组集合中所述第三元组的敏感属性出现的频率小于或者等于所述第三元组的敏感属性对应的频率约束参数;
发布模块,用于对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布所述匿名数据集。
可选的,所述装置还包括:
第二判断模块,用于判断所述数据集中剩余元组的数量是否小于所述预设个数k,或者,所述数据集中剩余元组的敏感属性的种类数目是否小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数;
第三判断模块,用于若所述数据集中剩余元组的数量小于所述预设个数k,或者,所述数据集中剩余元组的敏感属性的种类数目小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数,则计算若将所述数据集中剩余元组加入所述元组集合,所述元组集合中所述剩余元组的敏感属性出现的频率,并判断所述元组集合中所述剩余元组的敏感属性出现的频率是否小于或者等于所述剩余元组的敏感属性对应的频率约束参数,以及所述元组集合中加入所述剩余元组后的元组个数是否小于所述预设个数k的2倍;
加入模块,用于若所述元组集合中所述剩余元组的敏感属性出现的频率小于或者等于所述剩余元组的敏感属性对应的频率约束参数,且所述元组集合中加入所述剩余元组后的元组个数小于所述预设个数k的2倍,则将所述数据集中剩余元组加入所述元组集合。
可选的,所述装置还包括:
第四判断模块,用于判断所述数据集中剩余元组数量是否小于所述预设个数k、且所述子集的数目是否小于所述数据集中剩余元组的敏感属性对应的多样性参数;
所述发布模块,具体用于若所述数据集中剩余元组数量小于所述预设个数k、且所述子集的数目小于所述数据集中剩余元组的敏感属性对应的多样性参数,则对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布所述匿名数据集。
可选的,所述敏感属性对应的敏感度与所述敏感属性对应的多样性参数li呈正比关系;所述敏感属性对应的敏感度与所述敏感属性对应的频率约束参数ci呈反比关系。
可选的,所述第二选择模块,包括:
第一计算子模块,用于根据所述元组集合中各元组,计算第一信息损失度;
第二计算子模块,用于按照敏感度升序依次从除所述敏感度最大的子集以外的其他(l-1)个子集中的一个子集中任意选择一个第二元组,并根据所述元组集合中的各元组及选择出的第二元组,计算第二信息损失度;
加入子模块,用于将使得所述第一信息损失度与所述第二信息损失度的差值的绝对值最小的第二元组加入所述元组集合。
第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的所述计算机程序时,实现上述第一方面任一所述的基于敏感度分级的匿名数据发布方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面任一所述的基于敏感度分级的匿名数据发布方法。
本发明实施例提供的基于敏感度分级的匿名数据发布方法及装置,通过根据第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组,将第一元组及多个第二元组组成元组集合,使得每个元组集合包括多种敏感属性,保证了敏感属性的多样性;通过从数据集的剩余元组中,选择多个第三元组加入元组集合,且元组集合中第三元组的敏感属性出现的频率小于或者等于第三元组的敏感属性对应的频率约束参数,缩小了第三元组的敏感属性在元组集合中出现的频率,可以有效降低高敏感度数据被泄露的风险。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于敏感度分级的匿名数据发布方法的实施例一的流程示意图;
图2为本发明实施例提供的一种基于敏感度分级的匿名数据发布方法的实施例二的流程示意图;
图3为本发明实施例提供的一种基于敏感度分级的匿名数据发布方法的实施例三的流程示意图;
图4为本发明实施例提供的一种基于敏感度分级的匿名数据发布装置的结构示意图;
图5为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
首先,针对待发布的数据表T(该数据表是本发明实施例中数据集的其中一种实现方式)中所涉及到的几个名词进行解释:
元组:待发布的数据表T中的每行就是一个元组(也就是一条用户数据),每个元组可能包括显示标识符(Explicit Identifier,ID)、准标识符(Quasi-Identifier,QI)、敏感属性(Sensitive Attribute,SA)和无关属性(Non-Sensitive Attribute,NSA)等属性。
显示标识符:能够唯一确定一个元组,如姓名、身份证号、社保号码等。
准标识符:数据的描述性信息,能够结合其他外部信息,以较高概率识别出目标所对应元组的最小属性集合,如年龄、身高、性别等。
敏感属性:元组中需要保护的信息。例如疾病信息等。
无关属性:以上三类属性之外的属性,一般可直接发布。
等价类:待发布的数据表T的任意一个元组的准标识符的取值至少和其他(k-1)个元组相同,这k个元组称为一个等价类。
为了降低高敏感度数据被泄露的风险,本发明实施例提供了一种基于敏感度分级的匿名数据发布方法及装置,以下分别进行详细说明。
图1为本发明实施例提供的一种基于敏感度分级的匿名数据发布方法的实施例一的流程示意图,如图1所示,本发明实施例的方法可以包括:
S101,获取待发布的数据集。
本发明实施例提供的基于敏感度分级的匿名数据发布方法应用于服务器。
上述数据集中包括多个元组(数据集中的一个元组也就是数据集中的一条记录,本发明实施例以元组进行说明),并且,各元组中除了包括显示标识符和准标识符以外,至少还包括敏感属性。例如,敏感属性可以为癌症、甲亢、胃癌、感冒、发烧等疾病信息,敏感属性还可以为收入水平、健康状况、消费记录等其他信息。
待发布的数据集可以是一个完整的原始数据集,也可以是从一个完整的原始数据集中挑选出多个元组组成的一个新的数据集。例如,某个原始数据集包含1000个元组,可以将包含1000个元组的上述数据集发布出去,也可以从上述原始数据集中挑选出500个元组,将这500个元组组成的新的数据集发布出去。
S102,根据各敏感属性,分别获取预先设置的各敏感属性对应的敏感度、多样性参数li及频率约束参数ci
由于敏感属性是待发布的数据集中需要保护的信息,不同的敏感属性需要保护的程度是不同的,因此,可以根据敏感属性需要保护的程度,预先设置敏感属性对应的敏感度,也就是说,利用敏感属性对应的敏感度确定敏感属性需要保护的程度。具体实现时,若敏感属性需要保护的程度越高,则敏感属性对应的敏感度越高;若敏感属性需要保护的程度越低,则敏感属性对应的敏感度越低。例如,敏感属性有癌症、甲亢、胃癌、感冒、发烧,可以将癌症对应的敏感度设置为5,胃癌对应的敏感度设置为4,甲亢对应的敏感度设置为3,发烧对应的敏感度设置为2,感冒对应的敏感度设置为1。
各敏感属性对应的多样性参数li及各敏感属性对应的频率约束参数ci可以通过下面的对应关系进行预先设置:敏感属性对应的敏感度与敏感属性对应的多样性参数li呈正比关系;敏感属性对应的敏感度与敏感属性对应的频率约束参数ci呈反比关系。即,若敏感属性对应的敏感度越高,则敏感属性对应的多样性参数li越高,而敏感属性对应的频率约束参数ci越低;若敏感属性对应的敏感度越低,则敏感属性对应的多样性参数li越低,而敏感属性对应的频率约束参数ci越高。
S103,根据各敏感属性对应的敏感度,对数据集进行分组,得到多个子集。
其中,同一子集中的元组的敏感属性对应的敏感度属于同一敏感度范围内。具体的,可以将敏感属性对应的敏感度相同的元组加入同一子集,也可以将敏感属性对应的敏感度属于同一区间内的元组加入同一子集。例如,敏感属性对应的敏感度有1、2、3、4、5、6、7、8、9,可以将敏感属性对应的敏感度为5的所有元组加入同一子集,也可以将敏感属性对应的敏感度属于[3,5]这一区间内的所有元组加入同一子集。
S104,从敏感度最大的子集中,选择第一元组。
其中,第一元组为敏感度最大的子集中的任一元组。
S105,根据第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组。
例如,如果第一元组的敏感属性对应的多样性参数为5,那么,可以从其他子集中选择4个第二元组。
作为一种示例,根据第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组,可以包括以下步骤:
步骤a:根据元组集合中各元组,计算第一信息损失度。
在执行上述步骤S105之前,若元组集合中只包括一个第一元组,则上述步骤a可以为,根据元组集合中的第一元组,计算第一信息损失度。此时,可以根据第一元组的准标识符来计算第一信息损失度。
步骤b:按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中的一个子集中任意选择一个第二元组,并根据元组集合中的各元组及选择出的第二元组,计算第二信息损失度。
当第一次任意选择一个第二元组时,可以根据元组集合中包括的一个第一元组的准标识符和选择出的一个第二元组的准标识符,计算第二信息损失度。
步骤c:将使得第一信息损失度与第二信息损失度的差值的绝对值最小的第二元组加入元组集合。
S106,将第一元组及多个第二元组组成元组集合,并判断元组集合中元组个数是否达到预设个数k。
由于在S105中从其他子集中选择的第二元组的数目为第一元组的敏感属性对应的多样性参数l减1,因此由第一元组和第二元组组成的元组集合包含的元组个数就是第一元组的敏感属性对应的多样性参数l。
S107,若元组集合中元组个数没有达到预设个数k,则从数据集的剩余元组中,选择多个第三元组加入元组集合,元组集合中第三元组的敏感属性出现的频率小于或者等于第三元组的敏感属性对应的频率约束参数。
其中,数据集的剩余元组指的是,在数据集中,除已经选出的第一元组和第二元组以外的其他元组,元组集合中第三元组的敏感属性出现的频率指的是与元组集合中第三元组的敏感属性相同的元组个数与预设个数k的比值。
具体的,可以采用以下的方法确定元组集合中第三元组的敏感属性出现的频率:从数据集的剩余元组中选出的第三元组在加入元组集合之前,先计算假设将选出的该第三元组加入元组集合后,该第三元组的敏感属性在元组集合中出现的频率,若该第三元组的敏感属性在元组集合中出现的频率小于或者等于第三元组的敏感属性对应的频率约束参数,则将该选出的第三元组加入元组集合。也就是说,凡是已经加入元组集合的第三元组,一定满足元组集合中第三元组的敏感属性出现的频率小于或者等于第三元组的敏感属性对应的频率约束参数。
下面对元组集合中第三元组的敏感属性出现的频率进行简单的举例说明:如果第三元组的敏感属性与元组集合中的第一元组的敏感属性和第二元组的敏感属性都不同,那么元组集合中第三元组的敏感属性出现的频率为1/k;如果第三元组的敏感属性与元组集合中的第一元组的敏感属性相同,而与第二元组的敏感属性都不同,那么元组集合中第三元组的敏感属性出现的频率为2/k;如果第三元组的敏感属性与元组集合中的第一元组的敏感属性相同,并且与元组集合中的一个第二元组的敏感属性相同,那么元组集合中第三元组的敏感属性出现的频率为3/k。
在执行上述步骤S107之后,可重复执行上述步骤S104-S107,直至得到多个元组集合。
S108,对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布匿名数据集。
匿名化处理指的是使用泛化或者隐匿的方法,对隐私信息进行隐匿处理。
可选的,得到多个元组集合之后,本发明实施例还可以包括:
步骤A:判断数据集中剩余元组数量是否小于预设个数k、且子集的数目是否小于数据集中剩余元组的敏感属性对应的多样性参数。
在执行上述步骤A之后,上述步骤S108具体可以包括:
若数据集中剩余元组数量小于预设个数k、且子集的数目小于数据集中剩余元组的敏感属性对应的多样性参数,则对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布匿名数据集。
本发明实施例提供的基于敏感度分级的匿名数据发布方法,该方法包括:获取待发布的数据集,根据各敏感属性,分别获取预先设置的各敏感属性对应的敏感度、多样性参数li及频率约束参数ci,根据各敏感属性对应的敏感度,对数据集进行分组,得到多个子集,从敏感度最大的子集中,选择第一元组,根据第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组,将第一元组及多个第二元组组成元组集合,并判断元组集合中元组个数是否达到预设个数k,若元组集合中元组个数没有达到预设个数k,则从数据集的剩余元组中,选择多个第三元组加入元组集合,元组集合中第三元组的敏感属性出现的频率小于或者等于第三元组的敏感属性对应的频率约束参数,对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布匿名数据集。通过根据第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组,将第一元组及多个第二元组组成元组集合,使得每个元组集合包括多种敏感属性,保证了敏感属性的多样性;通过从数据集的剩余元组中,选择多个第三元组加入元组集合,且元组集合中第三元组的敏感属性出现的频率小于或者等于第三元组的敏感属性对应的频率约束参数,缩小了第三元组的敏感属性在元组集合中出现的频率,可以有效降低高敏感度数据被泄露的风险。
图2为本发明实施例提供的一种基于敏感度分级的匿名数据发布方法的实施例一的流程示意图,如图2所示,本发明实施例的方法可以包括:
S201,获取待发布的数据集。
S202,根据各敏感属性,分别获取预先设置的各敏感属性对应的敏感度、多样性参数li及频率约束参数ci
S203,根据各敏感属性对应的敏感度,对数据集进行分组,得到多个子集。
S204,从敏感度最大的子集中,选择第一元组。
S205,根据第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组。
可以将第一元组的敏感属性对应的多样性参数l设置为该元组集合对应的多样性参数l。例如,第一元组的敏感属性对应的多样性参数l为5,则将该元组集合对应的多样性参数l设置为5。此时,由于该元组集合对应的多样性参数l为5,那么需要按照敏感度升序依次从除敏感度最大的子集以外的其他4个子集中各选择1个第二元组,从而得到4个第二元组,其中,这4个第二元组的敏感属性各不相同,这4个第二元组的敏感属性与第一元组的敏感属性也不相同,并且,这4个第二元组的敏感度也是比较小的(举例说明,敏感属性对应的敏感度有1、2、3、4、5、6、7、8、9,根据各敏感属性对应的敏感度,对数据集进行分组,每个分组中的敏感属性对应的敏感度相同,得到9个子集。其中,第一元组的敏感属性对应的多样性参数l为5,按照敏感度升序依次从除敏感度最大的子集以外的其他4个子集中(也就是敏感度比较小的4个子集中)各选择1个第二元组,得到的4个第二元组的敏感度分别为1、2、3、4。),使得该元组集合中至少包括5种敏感属性不同的元组,从而保证了元组集合中敏感属性的多样性。
S206,将第一元组及多个第二元组组成元组集合,并判断元组集合中元组个数是否达到预设个数k。
S207,若元组集合中元组个数没有达到预设个数k,则从数据集的剩余元组中,选择多个第三元组加入元组集合,元组集合中第三元组的敏感属性出现的频率小于或者等于第三元组的敏感属性对应的频率约束参数。
图2所示的实施例二的上述步骤S201-S207与图1所示实施例一的步骤S101-S107类似,在此不再赘述。
S208,判断数据集中剩余元组的数量是否小于预设个数k,或者,数据集中剩余元组的敏感属性的种类数目是否小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数;
S209,若数据集中剩余元组的数量小于预设个数k,或者,数据集中剩余元组的敏感属性的种类数目小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数,则计算若将数据集中剩余元组加入元组集合,元组集合中剩余元组的敏感属性出现的频率,并判断元组集合中剩余元组的敏感属性出现的频率是否小于或者等于剩余元组的敏感属性对应的频率约束参数,以及元组集合中加入剩余元组后的元组个数是否小于预设个数k的2倍。
若数据集中剩余元组的数量小于预设个数k,或者,数据集中剩余元组的敏感属性的种类数目小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数,则表征不可以生成新的元组集合。此时,将数据集中剩余元组加入已经生成的各元组集合中。
之所以不可以生成新的元组集合,是因为:参考上述实施例一,将敏感度最大的子集中的任一元组作为第一元组,加入元组集合,并且根据第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组。那么,元组集合必须至少包括l种敏感属性。
因此,如果生成新的元组集合(此时,新的元组集合中只包括数据集中剩余元组),新的元组集合也必须至少包括lnew(新的元组集合中的第一元组的敏感属性对应的多样性参数)种敏感属性。但是如果数据集中剩余元组(包括第一元组)的敏感属性的种类数目小于敏感度最大的第一元组的敏感属性对应的多样性参数lnew,那么,无法满足元组集合必须至少包括lnew种敏感属性的条件,因此不可以生成新的元组集合,只可以将数据集中剩余元组加入已经生成的元组集合中。
例如,如果待发布的数据集包含108个元组,预设个数k为10,那么,当生成10个元组集合时,还剩余8个元组,此时,将剩余的8个元组加入已经生成的10个元组集合中;或者,当生成9个元组集合后,剩余的18个元组的敏感属性的种类数目为5,而敏感度最大的剩余元组的敏感属性对应的多样性参数为6,由于数据集中剩余元组的敏感属性的种类数目小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数,无法满足元组集合必须至少包括6种敏感属性的条件,因此不可以生成新的元组集合,因此将剩余的18个元组加入9个已经生成的元组集合中。
下面对若将数据集中剩余元组加入元组集合,如何确定元组集合中剩余元组的敏感属性出现的频率进行举例说明:例如当前需要加入元组集合A的数据集中剩余元组a的敏感属性为感冒,加入剩余元组a之前,元组集合A中元组个数为预设个数k,元组集合A中的敏感属性为感冒的元组个数为3;加入剩余元组a之后,元组集合A中元组个数为(k+1),元组集合A中的敏感属性为感冒的元组个数为4,那么,元组集合A中剩余元组a的敏感属性“感冒”出现的频率为4/(k+1)。
S210,若元组集合中剩余元组的敏感属性出现的频率小于或者等于剩余元组的敏感属性对应的频率约束参数,且元组集合中加入剩余元组后的元组个数小于预设个数k的2倍,则将数据集中剩余元组加入元组集合。
如果元组集合中加入剩余元组后的元组个数大于或者等于预设个数k的2倍,那么,该元组集合就可以分割为两个元组集合,不满足之前设定的不可以生成新的元组集合的要求。因此,这里需要限定元组集合中加入剩余元组后的元组个数小于预设个数k的2倍。
经过S210的处理,可以将数据集中的剩余元组全部加入元组集合。
S211,对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布匿名数据集。
图2所示的实施例二的上述步骤S211与图1所示实施例一的步骤S108类似,在此不再赘述。
应用本发明实施例提供的基于敏感度分级的匿名数据发布方法,可以将待发布的数据集中的所有元组加入元组集合中,并且,通过限定不同的数据集中剩余元组加入元组集合的条件,可以缩小数据集中剩余元组的敏感属性在元组集合中出现的频率,从而有效降低了高敏感度数据被泄露的风险。
下面以一个具体的实现方式为例对本发明实施例的基于敏感度分级的匿名数据发布方法进行说明,图3为本发明实施例提供的一种基于敏感度分级的匿名数据发布方法的实施例三的流程示意图,如图3所示,本发明实施例的方法可以包括:
S301,获取待发布的数据集。
S302,不同敏感值设置不同的l-多样性参数和不同的频率约束参数c。
上述步骤S301、S302与图1所示实施例一的步骤S101、S102类似,在此不再赘述。
S303,将数据集按照敏感度分组,并按照敏感度降序排列。
上述如何将数据集按照敏感度分组可以参考图1所示实施例一的步骤S103的分组方式。分组后,将各个分组按照敏感度降序排列,例如得到5个分组A、B、C、D和E,他们的敏感度依次为5、2、3、1、4,将这5个分组按照AECBD进行排列。
S304,判断数据总数是否小于k或分组个数是否小于max(li)。
若是,则执行步骤S314;若否,则执行步骤S305。
S305,初始化聚类结果result={}。
由于还未选取记录,因此聚类结果为空子集。
S306,初始化聚簇e,从敏感度最高分组随机选取一条记录tmp加入e,并从原分组删除。
聚簇e即为前文所述的元组集合,该记录tmp即为前文所述的第一元组,初始化聚簇e,从敏感度最高分组随机选取一条记录tmp加入e即为图1所示实施例一的步骤S104的选择第一元组的方法。将记录tmp选出后,该条记录tmp作为聚簇的初始聚类中心,并将该记录tmp的多样性参数设置为聚簇e对应的多样性参数;并将选出的记录tmp从原分组中删除,可以避免在后续选取记录的过程中,再次选择该记录tmp。
S307,以最小信息损失为原则,按敏感度升序从其余分组选取记录加入e,直到|e|=tmp.l。
最小信息损失的原则即为前文所述的当加入某条记录前的第一信息损失度与加入某条记录后的第二信息损失度的差值的绝对值为最小值时,才将该条记录加入聚簇e。从其余分组选取记录加入e,直到|e|=tmp.l。若按敏感度升序从其余分组选取记录加入e,即为图1所示实施例一的步骤S105的选择多个第二元组的方法。按敏感度升序从其余分组选取记录,可以优先将敏感度低的记录加入聚簇e。并且,由于在上述步骤S306中记录tmp的多样性参数tmp.l为聚簇e对应的多样性参数,因此需要从其余分组选取(tmp.l-1)条记录加入e。此时,聚簇e包含tmp.l种敏感属性,阻止了同质攻击,同时也降低了高敏感属性被泄露的风险。
S308,以最小信息损失和相应的频率约束为原则,从剩余所有记录中选取记录加入e,直到|e|=k。
上述从剩余所有记录中选取记录加入e,直到|e|=k为图1所示实施例一的步骤S107的选择多个第三元组的方法。
S309,result=result+e。
此时,聚簇e中包含上述选出的第一元组、第二元组和第三元组,将result+e赋值给result,更新了上述步骤S305中的聚类结果。
S310,判断数据总数是否小于k或分组个数是否小于非空分组中的max(li)。
若是,则执行步骤S311;若否,则返回步骤S306执行。
S311,判断是否存在非空分组。
若是,则执行步骤S312;若否,则执行步骤S313。
若执行上述步骤后,各分组中的记录都被选取加入聚簇e,则各分组为空。
S312,选取记录,以最小信息损失、k匿名和相应的频率约束为原则,加入某个聚簇,并从原分组删除。
执行上述步骤S312后,返回执行步骤S311,直至将非空分组中的记录全部加入聚簇e。
S313,泛化、隐匿result,生成匿名数据表,并发布匿名数据表。
通过执行上述步骤得到的匿名数据表T*(a1,a2,…,am,s),其中a1,a2,…,am为准标识符属性,s为敏感属性,不同敏感属性对应不同l-多样性参数和频率约束参数c。如果匿名数据表T*的每个等价类至少包含k条数据,每个敏感属性在等价类中出现的频率均不超过相应阈值ci,且等价类中的敏感属性的种类不小于该等价类中从敏感度最高分组随机选取的记录tmp对应的tmp.l,其中1<li≤k,0<ci<1。
S314,未生成匿名数据表。
应用本发明实施例提供的基于敏感度分级的匿名数据发布方法,通过从敏感度最高分组随机选取一条记录tmp加入e,以最小信息损失为原则,按敏感度升序从其余分组选取记录加入e,直到|e|=tmp.l,使得每个聚簇e包括tmp.l种敏感属性,保证了敏感属性的多样性;通过以最小信息损失和相应的频率约束为原则,从剩余所有记录中选取记录加入e,直到|e|=k,缩小了高敏感属性在聚簇e中出现的频率,可以有效降低高敏感度数据被泄露的风险。并且,本发明实施例中聚簇内的数据具有高度相似性,聚簇之间的数据具有高度相异性,这样有利于降低匿名化过程中的信息损失,提高发布后数据的可用性,因此能够有效改善数据匿名化的效果。
相应于上述方法实施例,图4为本发明实施例提供的一种基于敏感度分级的匿名数据发布装置的结构示意图,如图4所示,该基于敏感度分级的匿名数据发布装置可以包括:
第一获取模块410,用于获取待发布的数据集,其中,数据集中包括多个元组,各元组中至少包括敏感属性;
第二获取模块420,用于根据各敏感属性,分别获取预先设置的各敏感属性对应的敏感度、多样性参数li及频率约束参数ci
可选的,敏感属性对应的敏感度与敏感属性对应的多样性参数li呈正比关系;敏感属性对应的敏感度与敏感属性对应的频率约束参数ci呈反比关系。
分组模块430,用于根据各敏感属性对应的敏感度,对数据集进行分组,得到多个子集,其中,同一子集中的元组的敏感属性对应的敏感度属于同一敏感度范围内;
第一选择模块440,用于从敏感度最大的子集中,选择第一元组,第一元组为敏感度最大的子集中的任一元组;
第二选择模块450,用于根据第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组,其他子集为除包括第一元组的子集以外的多个子集;
第一判断模块460,用于将第一元组及多个第二元组组成元组集合,并判断元组集合中元组个数是否达到预设个数k;
第三选择模块470,用于若元组集合中元组个数没有达到预设个数k,则从数据集的剩余元组中,选择多个第三元组加入元组集合,元组集合中第三元组的敏感属性出现的频率小于或者等于第三元组的敏感属性对应的频率约束参数;
发布模块480,用于对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布匿名数据集。
可选的,上述第二选择模块450,可以包括:
第一计算子模块,用于根据元组集合中各元组,计算第一信息损失度;
第二计算子模块,用于按照敏感度升序依次从除敏感度最大的子集以外的其他l-1)个子集中的一个子集中任意选择一个第二元组,并根据元组集合中的各元组及选择出的第二元组,计算第二信息损失度;
加入子模块,用于将使得第一信息损失度与第二信息损失度的差值的绝对值最小的第二元组加入元组集合。
可选的,上述装置还可以包括:
第二判断模块,用于判断数据集中剩余元组的数量是否小于预设个数k,或者,数据集中剩余元组的敏感属性的种类数目是否小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数。
第三判断模块,用于若数据集中剩余元组的数量小于预设个数k,或者,数据集中剩余元组的敏感属性的种类数目小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数,则计算若将数据集中剩余元组加入元组集合,元组集合中剩余元组的敏感属性出现的频率,并判断元组集合中剩余元组的敏感属性出现的频率是否小于或者等于剩余元组的敏感属性对应的频率约束参数,以及元组集合中加入剩余元组后的元组个数是否小于预设个数k的2倍。
加入模块,用于若元组集合中剩余元组的敏感属性出现的频率小于或者等于剩余元组的敏感属性对应的频率约束参数,且元组集合中加入剩余元组后的元组个数小于预设个数k的2倍,则将数据集中剩余元组加入元组集合。
可选的,上述装置还可以包括:
第四判断模块,用于判断数据集中剩余元组数量是否小于预设个数k、且子集的数目是否小于数据集中剩余元组的敏感属性对应的多样性参数。
此时,上述发布模块480,具体用于若数据集中剩余元组数量小于预设个数k、且子集的数目小于数据集中剩余元组的敏感属性对应的多样性参数,则对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布匿名数据集。
本发明实施例提供的基于敏感度分级的匿名数据发布装置,该装置包括:第一获取模块,用于获取待发布的数据集,其中,数据集中包括多个元组,各元组中至少包括敏感属性;第二获取模块,用于根据各敏感属性,分别获取预先设置的各敏感属性对应的敏感度、多样性参数li及频率约束参数ci;分组模块,用于根据各敏感属性对应的敏感度,对数据集进行分组,得到多个子集,其中,同一子集中的元组的敏感属性对应的敏感度属于同一敏感度范围内;第一选择模块,用于从敏感度最大的子集中,选择第一元组,第一元组为敏感度最大的子集中的任一元组;第二选择模块,用于根据第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组;第一判断模块,用于将第一元组及多个第二元组组成元组集合,并判断元组集合中元组个数是否达到预设个数k;第三选择模块,用于若元组集合中元组个数没有达到预设个数k,则从数据集的剩余元组中,选择多个第三元组加入元组集合,元组集合中第三元组的敏感属性出现的频率小于或者等于第三元组的敏感属性对应的频率约束参数;发布模块,用于对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布匿名数据集。通过第二选择模块,根据第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组,将第一元组及多个第二元组组成元组集合,使得每个元组集合包括多种敏感属性,保证了敏感属性的多样性;通过第三选择模块,从数据集的剩余元组中,选择多个第三元组加入元组集合,且元组集合中第三元组的敏感属性出现的频率小于或者等于第三元组的敏感属性对应的频率约束参数,缩小了第三元组的敏感属性在元组集合中出现的频率,可以有效降低高敏感度数据被泄露的风险。
本发明实施例还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的计算机程序时,实现上述发明实施例的基于敏感度分级的匿名数据发布方法的所有步骤。
可见,应用本发明实施例,通过根据第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组,将第一元组及多个第二元组组成元组集合,使得每个元组集合包括多种敏感属性,保证了敏感属性的多样性;通过从数据集的剩余元组中,选择多个第三元组加入元组集合,且元组集合中第三元组的敏感属性出现的频率小于或者等于第三元组的敏感属性对应的频率约束参数,缩小了第三元组的敏感属性在元组集合中出现的频率,可以有效降低高敏感度数据被泄露的风险。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
另外,相应于上述实施例所提供的基于敏感度分级的匿名数据发布方法,本发明实施例提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现本发明实施例的基于敏感度分级的匿名数据发布方法的所有步骤。
可见,应用本发明实施例,通过根据第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除敏感度最大的子集以外的其他(l-1)个子集中各选择一个第二元组,将第一元组及多个第二元组组成元组集合,使得每个元组集合包括多种敏感属性,保证了敏感属性的多样性;通过从数据集的剩余元组中,选择多个第三元组加入元组集合,且元组集合中第三元组的敏感属性出现的频率小于或者等于第三元组的敏感属性对应的频率约束参数,缩小了第三元组的敏感属性在元组集合中出现的频率,可以有效降低高敏感度数据被泄露的风险。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、电子设备实施例和计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (8)

1.一种基于敏感度分级的匿名数据发布方法,其特征在于,所述方法包括:
获取待发布的数据集,其中,所述数据集中包括多个元组,各所述元组中至少包括敏感属性;
根据各敏感属性,分别获取预先设置的各所述敏感属性对应的敏感度、多样性参数li及频率约束参数ci
根据各所述敏感属性对应的敏感度,对所述数据集进行分组,得到多个子集,其中,同一所述子集中的元组的敏感属性对应的敏感度属于同一敏感度范围内;
从敏感度最大的所述子集中,选择第一元组,所述第一元组为所述敏感度最大的子集中的任一元组;
根据所述第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除所述敏感度最大的子集以外的其他l-1个子集中各选择一个第二元组;
将所述第一元组及所述多个第二元组组成元组集合,并判断所述元组集合中元组个数是否达到预设个数k;
若否,则从所述数据集的剩余元组中,选择多个第三元组加入所述元组集合,所述元组集合中所述第三元组的敏感属性出现的频率小于或者等于所述第三元组的敏感属性对应的频率约束参数;
对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布所述匿名数据集;
在所述从所述数据集的剩余元组中,选择多个第三元组加入所述元组集合之后,所述方法还包括:
判断所述数据集中剩余元组的数量是否小于所述预设个数k,或者,所述数据集中剩余元组的敏感属性的种类数目是否小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数;
若所述数据集中剩余元组的数量小于所述预设个数k,或者,所述数据集中剩余元组的敏感属性的种类数目小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数,则计算若将所述数据集中剩余元组加入所述元组集合,所述元组集合中所述剩余元组的敏感属性出现的频率,并判断所述元组集合中所述剩余元组的敏感属性出现的频率是否小于或者等于所述剩余元组的敏感属性对应的频率约束参数,以及所述元组集合中加入所述剩余元组后的元组个数是否小于所述预设个数k的2倍;
若所述元组集合中所述剩余元组的敏感属性出现的频率小于或者等于所述剩余元组的敏感属性对应的频率约束参数,且所述元组集合中加入所述剩余元组后的元组个数小于所述预设个数k的2倍,则将所述数据集中剩余元组加入所述元组集合。
2.根据权利要求1所述的方法,其特征在于,在所述从所述数据集的剩余元组中,选择多个第三元组加入所述元组集合之后,所述方法还包括:
判断所述数据集中剩余元组数量是否小于所述预设个数k、且所述子集的数目是否小于所述数据集中剩余元组的敏感属性对应的多样性参数;
所述对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布所述匿名数据集,包括:
若所述数据集中剩余元组数量小于所述预设个数k、且所述子集的数目小于所述数据集中剩余元组的敏感属性对应的多样性参数,则对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布所述匿名数据集。
3.根据权利要求1所述的方法,其特征在于,所述敏感属性对应的敏感度与所述敏感属性对应的多样性参数li呈正比关系;所述敏感属性对应的敏感度与所述敏感属性对应的频率约束参数ci呈反比关系。
4.根据权利要求1所述的方法,其特征在于,所述根据所述第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除所述敏感度最大的子集以外的其他l-1个子集中各选择一个第二元组,包括:
根据所述元组集合中各元组,计算第一信息损失度;
按照敏感度升序依次从除所述敏感度最大的子集以外的其他l-1个子集中的一个子集中任意选择一个第二元组,并根据所述元组集合中的各元组及选择出的第二元组,计算第二信息损失度;
将使得所述第一信息损失度与所述第二信息损失度的差值的绝对值最小的第二元组加入所述元组集合。
5.一种基于敏感度分级的匿名数据发布装置,其特征在于,所述装置包括:
第一获取模块,用于获取待发布的数据集,其中,所述数据集中包括多个元组,各所述元组中至少包括敏感属性;
第二获取模块,用于根据各敏感属性,分别获取预先设置的各所述敏感属性对应的敏感度、多样性参数li及频率约束参数ci
分组模块,用于根据各所述敏感属性对应的敏感度,对所述数据集进行分组,得到多个子集,其中,同一所述子集中的元组的敏感属性对应的敏感度属于同一敏感度范围内;
第一选择模块,用于从敏感度最大的所述子集中,选择第一元组,所述第一元组为所述敏感度最大的子集中的任一元组;
第二选择模块,用于根据所述第一元组的敏感属性对应的多样性参数l,按照敏感度升序依次从除所述敏感度最大的子集以外的其他l-1个子集中各选择一个第二元组;
第一判断模块,用于将所述第一元组及所述多个第二元组组成元组集合,并判断所述元组集合中元组个数是否达到预设个数k;
第三选择模块,用于若所述元组集合中元组个数没有达到预设个数k,则从所述数据集的剩余元组中,选择多个第三元组加入所述元组集合,所述元组集合中所述第三元组的敏感属性出现的频率小于或者等于所述第三元组的敏感属性对应的频率约束参数;
发布模块,用于对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布所述匿名数据集;
第二判断模块,用于判断所述数据集中剩余元组的数量是否小于所述预设个数k,或者,所述数据集中剩余元组的敏感属性的种类数目是否小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数;
第三判断模块,用于若所述数据集中剩余元组的数量小于所述预设个数k,或者,所述数据集中剩余元组的敏感属性的种类数目小于数据集中敏感度最大的剩余元组的敏感属性对应的多样性参数,则计算若将所述数据集中剩余元组加入所述元组集合,所述元组集合中所述剩余元组的敏感属性出现的频率,并判断所述元组集合中所述剩余元组的敏感属性出现的频率是否小于或者等于所述剩余元组的敏感属性对应的频率约束参数,以及所述元组集合中加入所述剩余元组后的元组个数是否小于所述预设个数k的2倍;
加入模块,用于若所述元组集合中所述剩余元组的敏感属性出现的频率小于或者等于所述剩余元组的敏感属性对应的频率约束参数,且所述元组集合中加入所述剩余元组后的元组个数小于所述预设个数k的2倍,则将所述数据集中剩余元组加入所述元组集合。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第四判断模块,用于判断所述数据集中剩余元组数量是否小于所述预设个数k、且所述子集的数目是否小于所述数据集中剩余元组的敏感属性对应的多样性参数;
所述发布模块,具体用于若所述数据集中剩余元组数量小于所述预设个数k、且所述子集的数目小于所述数据集中剩余元组的敏感属性对应的多样性参数,则对得到的多个元组集合进行匿名化处理,得到匿名数据集,并发布所述匿名数据集。
7.根据权利要求5所述的装置,其特征在于,所述敏感属性对应的敏感度与所述敏感属性对应的多样性参数li呈正比关系;所述敏感属性对应的敏感度与所述敏感属性对应的频率约束参数ci呈反比关系。
8.根据权利要求5所述的装置,其特征在于,所述第二选择模块,包括:
第一计算子模块,用于根据所述元组集合中各元组,计算第一信息损失度;
第二计算子模块,用于按照敏感度升序依次从除所述敏感度最大的子集以外的其他l-1个子集中的一个子集中任意选择一个第二元组,并根据所述元组集合中的各元组及选择出的第二元组,计算第二信息损失度;
加入子模块,用于将使得所述第一信息损失度与所述第二信息损失度的差值的绝对值最小的第二元组加入所述元组集合。
CN201910635807.5A 2019-07-15 2019-07-15 一种基于敏感度分级的匿名数据发布方法及装置 Expired - Fee Related CN110399746B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910635807.5A CN110399746B (zh) 2019-07-15 2019-07-15 一种基于敏感度分级的匿名数据发布方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910635807.5A CN110399746B (zh) 2019-07-15 2019-07-15 一种基于敏感度分级的匿名数据发布方法及装置

Publications (2)

Publication Number Publication Date
CN110399746A CN110399746A (zh) 2019-11-01
CN110399746B true CN110399746B (zh) 2021-06-18

Family

ID=68325484

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910635807.5A Expired - Fee Related CN110399746B (zh) 2019-07-15 2019-07-15 一种基于敏感度分级的匿名数据发布方法及装置

Country Status (1)

Country Link
CN (1) CN110399746B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111324911B (zh) * 2020-05-15 2021-01-01 支付宝(杭州)信息技术有限公司 一种隐私数据保护方法、系统及装置
CN114817977B (zh) * 2022-03-18 2024-03-29 西安电子科技大学 基于敏感属性值约束的匿名保护方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105512566B (zh) * 2015-11-27 2018-07-31 电子科技大学 一种基于k-匿名的健康数据隐私保护方法
CN105512568A (zh) * 2015-12-16 2016-04-20 上海电机学院 基于机器学习的集成隐私保护方法
CN107358113A (zh) * 2017-06-01 2017-11-17 徐州医科大学 基于微聚集匿名的差分隐私保护方法
CN107688752B (zh) * 2017-08-21 2020-11-20 哈尔滨工程大学 一种面向多视图聚类挖掘的个性化隐私保护方法
CN107766745B (zh) * 2017-11-14 2020-11-10 广西师范大学 层次数据发布中的分级隐私保护方法
CN110008748A (zh) * 2019-04-04 2019-07-12 南通大学 数据动态更新隐私保护方法及语义贴近度计算方法

Also Published As

Publication number Publication date
CN110399746A (zh) 2019-11-01

Similar Documents

Publication Publication Date Title
Cormode Personal privacy vs population privacy: learning to attack anonymization
CN109145934B (zh) 基于日志的用户行为数据处理方法、介质、设备及装置
US10482285B2 (en) Event processing system
Pal et al. Centrality measures, upper bound, and influence maximization in large scale directed social networks
US10176340B2 (en) Abstracted graphs from social relationship graph
US8346774B1 (en) Protecting network entity data while preserving network properties
CN110399746B (zh) 一种基于敏感度分级的匿名数据发布方法及装置
CN102156755A (zh) 一种k-匿名改进方法
CN113051619B (zh) 一种基于k-匿名的中药处方数据隐私保护方法
Abbasi et al. A clustering‐based anonymization approach for privacy‐preserving in the healthcare cloud
CN109582808A (zh) 一种用户信息查询方法、装置、终端设备和存储介质
CN107070932B (zh) 社会网络动态发布中防止标签邻居攻击的匿名方法
Askari et al. An information theoretic privacy and utility measure for data sanitization mechanisms
CN110390211B (zh) 一种敏感属性数据的处理方法及系统
US20230359769A1 (en) Systems and Methods for Anonymizing Large Scale Datasets
CN109767819B (zh) 病历的分组方法、装置、存储介质和电子设备
Qu et al. Privacy preserving in big data sets through multiple shuffle
CN107832633B (zh) 关系事务数据发布的隐私保护方法
Shaw et al. A rank test for bivariate time‐to‐event outcomes when one event is a surrogate
Jang A study of performance enhancement in big data anonymization
Cormode Individual privacy vs population privacy: Learning to attack anonymization
Gachanga et al. Feature based data anonymization with slicing method for data publishing
WO2019019711A1 (zh) 行为模式数据的发布方法、装置、终端设备及介质
Yadav et al. Privacy preserving data mining with abridge time using vertical partition decision tree
CN111241581B (zh) 基于敏感度分层的多敏感属性隐私保护方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210618