为什么要匿名?
- 数据共享:将真实数据提供给他人研究,不泄露数据隐私;允许第三方尝试数据拥有者未考虑到的分析和挖掘技术。
- 数据保留和使用
匿名模型
交互式模型:数据所有者充当数据的看门人,研究人员以约定的方式查询,数据所有者给出匿名化回答,或者不回答。
"send me your code"模型:数据所有者在自己的系统上运行代码、报告结果,不能确保代码无恶意。
offline:数据所有者匿名化数据后公布
匿名目标
防止关联推断
防止推断个体是否在数据集中
模拟攻击者知道的信息:背景知识、领域知识
效用的测量
定义一个替代度量,并尝试优化
实验评估:在合理的工作量下进行实验,与在原始数据集上的结果进行比较
一些专业术语
标识符(identifier):唯一确定一个个体
准标识符(QI) :足以在数据集中部分识别一个个体
敏感信息(SA):我们想隐藏的关联
技术手段:
元组抑制:针对QI,即使包含准身份识别标志也不能链接到隐私表格, 缺失元组能在所有元组的所属空间中取任意值 ,引入很多不确定性,数据有用性降低
属性泛化:针对QI,比元组抑制更准确的不确定性形式
敏感属性置换:改变隐私数据,互相交换
敏感属性扰乱:把敏感数据加噪音,能唯一识别元组,但获得有噪声的敏感属性值
k-匿名
K-匿名规则:当且仅当每个元组在T[QI]中至少出现k次,则表T满足关于准标识符QI的k-匿名。
K-匿名:如果T’是T的一个泛化或抑制,并且T’满足K-匿名规则,那么表T’是T的一个k-匿名。
隐名:计算所有“极小”全域泛化
隐名能高效计算的原因
- 子集属性:如果表T是关于一组属性Q的k-匿名,那么T也是关于Q的 任何子属性的k-匿名
- 泛化属性:如果表T2是表T1的泛化且T1是k-匿名,那么T2也是k-匿名
缺陷:同质性攻击
l-多样性
相似性攻击:虽然敏感值不同,但语义相近。
t-相近原理
如果在每个QI组中,组中敏感值分布与整个表中的敏感值分布之间的距离不超过阈值t