ARX开源数据匿名软件的介绍

ARX有三大优势:(i)以高效率的方式实现了多种隐私方法,(ii)支持跨平台图形界面,(iii)提供可编程的API接口,(iv)文档支持。
其他的匿名工具:
PARAT:领先的商业去标识软件;
UTD Anonymization Toolbox:用于实验研究;
Cornell Anonymization Toolkit:用于研究实验;
sdcMirco2:R语言的一个包;
μ-Argus:no longer under active development;
以上工具都有多多少少的缺点,为了克服这些缺点,ARX被慕尼黑工大的研究员开发了出来,ARX对所有常见的隐私标准做支持,包括任意的组合;而且它实现了对常见的匿名任务进行系统自带的技术组合选择,更高效、更直观和更易于理解;同时对非专业IT人员提供了跨平台的图形界面接口,而对专业的IT技术人员提供了易于开发的API 接口。

1. 背景

阻止linkage attack的方法如下:
1. 区分出 EI 属性,它可以直接指认到具体的record,要把它去掉,例如社保号等;
2. QI 属性能够潜在地识别出record,所以要确保 QI 满足隐私标准,如何性别和年龄。通常使用 generalization hirearchies 技术,它可以支持种类属性和连续属性,如下图:

为了增加结果数据的可用性,这种方法通常结合着 tuple suppression 使用,违反隐私标准的 record 的(outliers)会自动从数据集中去掉。同时,所有的suppressed records 要保证不超过一个给定的阈值。这样做的结果是少量的 generalization 就可以保证剩下的record满足隐私标准。

2. 技术

K-Anonimity 是用途最广的隐私标准方法,它阻止 identity disclosure 的发生,而 l-diversity 和 t-closeness 阻止 attribute disclosure 的发生。 δ-Presence 用于保护数据集免受 membership disclosure 的威胁,membership disclosure 意思是攻击者能够决定某个record在不在数据集中。

3. 方法

针对非专业IT人员,ARX实现了 globally-optimal full-domain anonymization algorithm,通过修改 generalization hierarchies 或者从 solution space 选择一个合适的 transformation。underlying coding model 潜在地导致了低数据多用性,为了解决这个问题,采用了 local tuple suppression 的方法来增加数据的质量。

4. GUI操作

4.1 数据的导入

GUI支持是那种类型的数据导入:(i)CSV;(ii)Excel;(iii)Database。操作方法是点击 File->import data 即可弹出如下的界面:

4.2 匿名后数据的导出

GUI导出匿名后的数据方法是 File->export data,导出格式为csv格式。

4.3 基本工作流程


如上图所示,由三个基本步骤组成:(i)configuring the anonymization process;(ii)exploring the solution space and (iii)analyzing the transformed data。
ARX的构架如下所示:

深灰色的是核心模块,通常不需要改变,为ARX框架提供了基础架构;I/O 模块提供了读入导出数据,Data Encoding 模块将数据转换成框架需要的格式和内存布局;Data management 模块处理内部的representation 并实现最优化(eg. catching);operator 模块are built on top of this representation and allow grouping of data records and computing of frequency distributions over sensitive attribute values。
浅灰色的是扩展模块,实现了隐私标准和计算数据多用性,类似的,匿名算法也被植入到该框架中。
Our three-step process poses considerable challenges in terms of efficiency. Firstly, ARX automatically classifies the complete solution space to support users in finding a transformation suitable for their application scenario. Secondly, the iterative character of the process potentially requires this classification to be performed repeatedly. It is thus very important that classification can be carried out in near real-time. For this purpose, our framework features a highly efficient algorithm. Moreover, instead of using existing database systems, we implemented a runtime environment that is tailored to the problem domain. In previous work we have shown that our method significantly outperforms comparable algorithms within our highly optimized framework.

4.3.1 配置 de-identification process


如上图,点击 Configure transformation的tab按钮,左边是原始导入的数据,点击原始数据的sex列,右边就会切换到 generalization hierarchy 界面,如上图,这里已经建立好了 hierarchy,即有两层,第一层(level 0)是原始数据,male 和 female,第二层(level 1)就是泛化后的数据,对应为 。其他列属性同样地,注意红圈圈起来的type代表我们可以选择选择好的列属性的类别,EI,QI,SD,NSD四类,这里选择的是QI,所以需要建立 hierarchy。需要强调的是,如果将该列属性选为 EI(或者identifying),匿名操作后该列全部变为 。下面介绍如何新建hierarchy:
依次选择 Edit->create hierarchy,弹出下面的窗口;

这三种是系统定义的三种 hierarchy,也可以自己导入,点击 load,即可导入自己定义好的 csv 格式的 hierarchy。关于系统定义的 hierarchy,自己可以去尝试点击,下图是 ordering 选项的例子:

定义结果为:

等全部列属性的方法定义好,就可以选择匿名算法了,在有点中间的地方选择算法,这里我们选择 K 匿名,选择 K=5,可以在两个红圈的地方选择 K 的值,如下图:

如果有其他属性,比如SD,还可以在原来的算法(k 匿名)上添加算法(l-diversity、t-closeness),这些算法可以查看我的其它博文:

还有一个部件是权衡 generalization 和 suppression 的值,如下图:

调节此进度条可以权衡 generalization 和 suppression 的关系,ARX开发者估计只选择了AG_TS(Attribute Generalization and Tuple Suppression)的 generalization-suppression 方法,结果可以在匿名化之后查看:

最后就可以匿名操作了,依次点击 Edit->Anonimize,然后等待几秒就处理成功了。如何查看我们的匿名结果,查看下图:

灰白相间的同种颜色代表一个等价类(equivalent class)。

4.3.2 ARX界面中的小细节

ARX 工具很强大,很多参数我们不注意就会忽略,但有些参数也是很有意义的。
1. 请查看右上角有如下的参数

Applied: [0, 2, 0, 1, 2, 1, 1, 1, 0] 这个就是ARX 匿名化的最后的 hierarchy 选择的 level 的集合,比如第一个0代表 sex 的level为0,也就是保持不变;后面的2代表第二个属性age选择的level 为2,以此类推。
那么selected 的集合代表什么意思呢?如下图,我们点击explore results:

此图是 ARX 尝试所有的 hierarchy 组合,最后黄色的是最优的匿名结果,衡量最优。
2. 请查看右下角的 class sizes 的参数

这里反应了suppression的影响,注意 outliers的意思就是被suppression的records,我们可以看到总共有743项被suppressed,大概占13%,还有等价类的一些信息。

Reference

[1] ARX - A Comprehensive Tool for Anonymizing Biomedical Data
github:git@github.com:arx-deidentifier/arx.git

ARX——一种开源的数据匿名软件的介绍相关推荐

  1. 西门子s5 通讯测试软件,几种常用的S5编程软件简要介绍

    主题:几种常用的S5编程软件简要介绍 楼主 2011-05-11 09:06:32 几种常用的S5编程软件说明: Step5 西门子嫡系产品: 肯定100%的满足你对S5全系列的开发.维护要求: DO ...

  2. 计算机辅助布置设计软件的两种类型,桥梁计算机辅助设计软件WYCAD介绍

    摘要:桥梁辅助设计软件WYCAD简介及简支梁(板)桥.连续刚构桥.斜拉桥.拱桥.下部构造及一些实用小程序等模块介绍. 关键字:WYCAD模块功能介绍 前言 计算机辅助桥梁设计能极大地提高设计人员的效率 ...

  3. 几种优秀的屏幕录像软件用法介绍(图)

    豪杰屏幕录像机V2.0共享版 这是大名鼎鼎的豪杰公司出品的屏幕录像软件,功能强大而且操作简单. 要用它录制屏幕录像的话,首先需要设定一些参数.按一下界面右边的半月形按钮就会伸出"选项菜单&q ...

  4. 【翻译自HVR官方手册】HVR数据复制软件介绍与术语解释

    [翻译自HVR官方手册]HVR数据复制软件介绍与术语解释 HVR数据复制软件是荷兰HVR公司推出的一款数据复制软件,用于db到db,db到file,file到db,file到file的实时复制. 整个 ...

  5. 九种引人瞩目的开源大数据技术

    1.Apache Hadoop Apache hadoop是一个开源的分布式计算框架,最初由Doug为支持其开源Web搜索引擎Nutch所创立.通过集成MapReduce技术,Hadoop将大数据分布 ...

  6. python开源流程图软件_适用于Linux的10种最佳流程图和图表软件

    图表是我们联系信息并处理其重要性的好方法. 它们有助于沟通关系和抽象信息,并使我们可视化概念. 流程图和图表工具可用于从基本工作流程图到复杂网络图 ,组织图, BPMN ( 业务流程模型和表示法 ), ...

  7. i3s 一种开源的三维地理数据规范 和b3dm 有什么区别呢

    1. i3s及其实现 i3s是一种用树结构来组织大体积量三维数据的数据格式标准,比如在位图界的jpg格式一样,只不过i3s是"标准",具体实现的文件格式另有一说. i3s采用jso ...

  8. 【工具】55种开源数据可视化工具简介

    工欲善其事必先利其器.本文对55个流行的数据可视化工具进行了简单的介绍,包括著名的D3.js.R.Gephi.Raphaël.Processing.js.Tableau Public.Google C ...

  9. 列出最少8种开源软件_您的公司可以支持和维持开源的8种方式

    列出最少8种开源软件 开源的成功不断增长: 调查显示, 大多数公司使用某种形式的开放源代码,有99%的企业认为开放源代码很重要 ,而几乎一半的开发人员都在回馈. 重要的是要注意,公司并不是纯粹出于无私 ...

  10. 开源网络数据平面生态:软件正在吞食整个世界

    目录 LFN - Linux基金会网络开源伞项目 ONF基金会下的网络开源项目 数据面开源项目 DPDK ‍‍FD.io NSM ‍‍‍‍IOVisor George Zhao,目前任职华为在美国的研 ...

最新文章

  1. 服务器到底长什么样子啊(#゚Д゚)?
  2. matlab 某些函数
  3. 微型计算机每字节的最高位时,计算机应用基础考试题加答案
  4. Linux tar命令高级用法——备份数据
  5. 依赖第三方库时出现的问题:Manifest merger failed : uses-sdk:minSdkVersion 15 cannot be smaller than version 16
  6. 莫比乌斯带catia建模_独家教程 | 循环曲面“莫比乌斯”,康石石教你Rhino“3步”快速打造...
  7. 优化Meta讨好搜索引擎 更好的提升网站排名
  8. linux Centos下磁盘分区及文件系统创建与挂载
  9. 本硕一致计算机科学与技术专业介绍,哈尔滨理工大学计算机科学与技术专业介绍...
  10. Nginx跨域配置、限制连接、限制下载速度
  11. 正确使用“下划线”一词
  12. 数值计算详细笔记(二):非线性方程解法
  13. 计算机组成原理(白中英) 第六章 课后题答案
  14. Foxit PDF SDK ActiveX 5.9.1 Crack
  15. 蓝桥杯 等差素数列(python实现)
  16. linux操作系统是著名的分布式系统,紫光展锐操作系统生态覆盖 Android、Linux、RTOS,面向分布式、智能化...
  17. Android之drawable下快速生成icon图片vector
  18. Available platform plugins are: xcb, eglfs, linuxfb, minimal, minimalegl, of
  19. 事后控制不如事中控制,事中控制不如事前控制
  20. 图像缩放算法(中篇)

热门文章

  1. 三分钟彻底弄明白shiro原理
  2. 计算机网络学习 - 网卡
  3. 图文详解,浪涌保护器(SPD)的参数解读与选用
  4. Use ulog to monitor ports logs (by quqi99)
  5. yuemiao-开发(一)
  6. 第一个Java Web的小case
  7. opencv studay3
  8. 计算机如何寻址,计算机运算之直接寻址法与间接寻址法
  9. Oracle 日志解析ogg,对一段OracleGoldenGate(OGG)传输进程日志(.rpt文件)的解释
  10. gmoj 6841. 【2020.11.5提高组模拟】淘淘蓝蓝之树林