数据脱敏的风险量化评估介绍
1、背景介绍
当前社会信息化高速发展,网络信息共享加速互通,数据呈现出规模大、流传快、类型多以及价值密度低的特点。人们可以很容易地对各类数据实现采集、发布、存储与分析,然而一旦带有敏感信息的数据被攻击者获取将会造成个人隐私的严重泄漏;所以在发布数据前,必须通过适当的隐私保护手段来隐藏敏感信息,从而达到能够发布和分析同时又保障隐私信息安全性的目的。
然而,实际中大部分数据脱敏方法(如假名化、字符屏蔽)仍存在隐私风险,经过这些脱敏处理后的数据经过发布后可能遭受一系列的攻击,包括重标识攻击、背景知识攻击、链接攻击以及隐私推理攻击。 为了抵抗以上一些攻击,K-匿名、等价匿名是较为常用的匿名处理方法,对其进行合理应用能够在数据分析时减少安全隐患风险问题发生。其中K-匿名算法具有实用性,属于新型算法的一种,为了抵抗常见的链接攻击,比较科学的数据发布脱敏都会采用K-匿名的手段对数据进行处理,但该方法对敏感属性值的分布未做任何具体限制,因此就会存在背景知识攻击以及同质攻击。
为了得到风险小且信息损失量小的发布数据集,需在发布脱敏数据集之前应对其进行评估,若评估后的脱敏数据集质量达到用户对数据价值要求同时攻击者很难窃取敏感信息,那么就可以发布。本文讨论的风险评估算法也是基于匿名化处理数据的风险评估,也适用于其他脱敏算法。
2、K匿名相关知识简介
根据发布数据集的内容不同,数据集存在的风险也不同;如何去量化的评估数据集存在的风险,就应该先对数据的敏感级别进行一个合理的划分。行业已经有相关的规范,如《信息安全技术个人信息去标识化效果分级评估规范》中对数据敏感级别定义了如下的划分规则:
- 个人信息标识度分级

图1 示例数据(注:包括身份证和电话号码等个人数据均为假数据,仅为示例目的)
结构化数据以表的形式表示,每一行表示一条记录(record),每一列表示一个属性(attribute)。每一个记录与一个特定用户/个体关联。这些属性可以分为四类:
标识符(explicit identifiers attribute):可以直接确定一个个体。如:身份证号,姓名等单个属性值。
准标识符(Quasi-identifler attribute,QID):可以和外部表连接来识别个体的最小属性集。如Fig1中的 { 年龄,性别,邮编 }组合。
敏感属性(Sensitive attribute):用户不希望被人知道的数据。如:电话号码、所患疾病等。可以认为数据表中有价值的数据除了标识符和准标识符之外都是敏感数据。
非敏感属性(Non-sensitive attribute):可以直接公开,无任何危险的数据,如序号。
等价组(等价类):所有准标识符对应的值相同的数据划分到一个组。
基于以上的概念定义,基于K-匿名的脱敏处理就是要保证准标识符集的非唯一性,即等价组中最小的个数必须大于等于K。
- 安全隐患样例

图2链接攻击
图2右图是一张某医院收集的病人信息,其中已经抹去了姓名、身份证号等信息)。但是,直接发布这样简单处理的数据并不安全。因为数据接收者(recipient)可能知道其他个人信息,比如上面表一是一张投票信息表。那么recipient就可以通过比对Birthdate、Sex 和 Zipcode 的值得知 Andre 患有Flu。这种通过某些属性与外部表连接的攻击称为链接攻击。
K-匿名样例

图3 3-匿名化
K-匿名思想十分朴素。它首先做了如下假设:
准标识符假设:数据持有者可以识别出其所持有数据表中可能出现在外部数据中的属性,因此其可以准确的识别出准标识符集合。
K-匿名要求同一个准标识符至少要有k条记录。因此观察者无法通过准标识符进行记录连接。如图3(*号遮蔽只是一种方法)。
等价组
把拥有相同准标识符的所有记录称为一个等价类(equivalence class)。K-匿名即是要求同一等价类中的记录不少于K条。把等价类的大小组成的集合称为频率集(frequency fet)。如图4就是一个按K=3处理后的数据集,{1,2,3},{4,5,6},{7,8,9}分别为一个等价组。
等价组是一个多重集(multiset),即其中可以有相同的元素。频率集应该也是多重集。
K-匿名使得观察者无法以高于1/K的置信度通过准标识符来识别用户。

三、隐私的定义与度量
隐私,就是个人、机构等实体不愿意被外部世界知晓的信息。在具体应用中,隐私即为数据所有者不愿意被披露的敏感信息,包括敏感数据以及数据所表征的特性。我们常说的个人信息安全,就是保护用户的隐私安全。
个人敏感数据通常也称隐私数据,这些数据包括用户姓名、电话和身份证号码及银行卡号或其他一些私人信息。这些信息只要稍微被泄露出去,往往会紧密地关联到人们的日常生活,或多或少会造成一些损失,然而要是用户数据信息影响到用户的信用问题,则又会波及用户在财务或者法律方面的一些问题,造成严重损失。随着现代化大数据的应用越来越广泛,应用到该技术的相关工作单位也同样给予了大数据足够的重视度,为的就是能够实现双方利益的共赢,互惠互利。
数据安全与隐私相关技术受到的重视程度越来越高,因此聚焦“敏感数据”,创新实践“零信任”安全理念,围绕数据产生、传输、存储、使用、共享、销毁外加数据管理的全生命周期,并结合数据安全相关的法律法规《国家安全法》《网络安全法》以及即将出台的《数据安全法》《个人信息保护法》,构建由内到外主动式纵深防御体系尤为重要;其中每个周期中核心技术能力诉求如图5所示。

图5 数据生命周期
一般的,从隐私所有者的角度而言,隐私可以分为两类:
个体隐私(Individual Privacy)
任何可以确认特定个人或可以确认个人相关,但个人不愿意被暴露的信息,都叫做个人隐私,如个人身份证号码、就诊号。
共同隐私(Corporate Privacy)
共同隐私不仅包含个人的隐私,还包含所有个体共同表现出,但不愿意被暴露的信息。如公司员工的平均薪资、薪资分布等信息,再如两个人之间的关系信息。
隐私的度量与量化表示
数据隐私的保护效果是通过攻击者披露隐私的多寡来侧面反映的。现有的隐私度量都可以统一用“披露风险”(Disclosure Risk)来描述。
披露分险表示攻击者根据所发布的数据和其他背景知识(Background Knowledge),可能披露隐私的概率。通常,关于隐私数据的背景知识越多,披露风险就越大。
若s
表示敏感数据,事件Sk
表示“攻击者在背景知识K
的帮助下披露敏感数据s
”,则披露风险r(s,K)
表示为
r(s,K)=Pr(Sk)![]()
对数据集而言,若数据集所有者最终发布数据集D的所有敏感数据的披露风险都小于阈值a,aϵ[0,1]
,则称该数据集的披露风险为a
。
---------------------------------------------------------------------------------------------------------------------------------
感谢你的打赏

---------------------------------------------------------------------------------------------------------------------------------
相关文章:
数据脱敏的风险量化评估介绍
1、背景介绍 当前社会信息化高速发展,网络信息共享加速互通,数据呈现出规模大、流传快、类型多以及价值密度低的特点。人们可以很容易地对各类数据实现采集、发布、存储与分析,然而一旦带有敏感信息的数据被攻击者获取将会造成个人隐私的严重…...
SpringCloudGateway网关实战(三)
SpringCloudGateway网关实战(三) 上一章节我们讲了gateway的内置过滤器Filter,本章节我们来讲讲全局过滤器。 自带全局过滤器 在实现自定义全局过滤器前, spring-cloud-starter-gateway依赖本身就自带一些全局过滤器࿰…...
08在MyBatis-Plus中配置多数据源
配置多数据源 模拟多库场景 适用于多种场景: 多库(操作的表分布在不同数据库当中),读写分离(有的数据库负责查询的功能,有的数据库负责增删该的功能),一主多从,混合模式等 第一步: 模拟多库,在mybatis_plus数据库中创建user表,在mybatis_plus_1数据库中创建product表 --创建…...
Centos8安装docker并配置Kali Linux图形化界面
鉴于目前网上没有完整的好用的docker安装kali桌面连接的教程,所以我想做一个。 准备工作 麻了,这服务器供应商提供的镜像是真的纯净,纯净到啥都没有。 问题一:Centos8源有问题 Error: Failed to download metadata for repo ap…...
游戏开发初等数学基础
凑数图() 立体图形面积体积 1. 立方体(Cube): 表面积公式: 6 a 2 6a^2 6a2 (其中 a a a 是边长)。体积公式: a 3 a^3 a3 (其中 a a a 是边长)。 2. 球体(Sphere): 表面积公…...
svg图片代码data:image/svg+xml转png图片方法
把代码保存为html格式的文件中,用浏览器访问,即可右键保存 从AI软件或其它网站得到svg图片代码后,把他复制到下面源码上 注意:src""图片地址中,一些参数的含义 d‘这里是图片代码数据’ viewBox是图片显示区域,宽,高等 fill%23000000’这里表示颜色 ,后面6位0表示黑色…...
解决问题:Replace `‘vue‘;⏎` with `“vue“;`
使用vscode写vue文件的问题: Replace vue;⏎ with "vue"; error Replace v-model:value"xxx"placeholder"inputsearch prettier/prettier 7:38 error Insert ⏎ potentially fixable with the --fix option 原因:格式问题&a…...
ThinkPHP 5.0通过composer升级到5.1,超级简单
事情是这样的,我实现一个验证码登录的功能,但是这个验证码的包提示tp5的版本可以是5.1.1、5.1.2、5.1.3。但我使用的是5.0,既然这样,那就升个级呗,百度了一下,结果发现大部分都是讲先备份application和修改…...
计算机竞赛 多目标跟踪算法 实时检测 - opencv 深度学习 机器视觉
文章目录 0 前言2 先上成果3 多目标跟踪的两种方法3.1 方法13.2 方法2 4 Tracking By Detecting的跟踪过程4.1 存在的问题4.2 基于轨迹预测的跟踪方式 5 训练代码6 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习多目标跟踪 …...
一文了解大模型工作原理——以ChatGPT为例
文章目录 写在前面1.Tansformer架构模型2.ChatGPT原理3.提示学习与大模型能力的涌现3.1 提示学习3.2 上下文学习3.3 思维链 4.行业参考建议4.1 拥抱变化4.2 定位清晰4.3 合规可控4.4 经验沉淀 写在前面 2022年11月30日,ChatGPT模型问世后,立刻在全球范围…...
CPP-Templates-2nd--第十九章 萃取的实现 19.7---
目录 19.7 其它的萃取技术 19.7.1 If-Then-Else 19.7.2 探测不抛出异常的操作 19.7.3 萃取的便捷性(Traits Convenience) 别名模板和萃取(Alias Templates And Traits) 变量模板和萃取(Variable Templates and Traits&…...
python 采用selenium+cookies 获取登录后的网页
百度网页由于需要登陆手机短信验证。比较麻烦 这里我采用先人工登录百度账号,然后将百度账号的相关cookies保存下来 然后采用selenium动态登录网页 整体代码如下 from selenium import webdriverimport timeoptions webdriver.ChromeOptions()options.add_argu…...
【测试开发】答疑篇 · 什么是软件测试
【测试开发】答疑篇 文章目录 【测试开发】答疑篇1. 生活中的测试2. 什么是软件测试3. 为什么要有测试/没有测试行不行4. 软件测试和软件开发的区别5. 软件测试和软件调试之间的区别6. 软件测试的岗位7. 优秀测试人员具备的素质 【测试开发】答疑篇 软件不一定是桌面应用&#…...
深入解析顺序表:揭开数据结构的奥秘,掌握顺序表的精髓
💓 博客主页:江池俊的博客⏩ 收录专栏:数据结构探索👉专栏推荐:✅C语言初阶之路 ✅C语言进阶之路💻代码仓库:江池俊的代码仓库🔥编译环境:Visual Studio 2022Ἰ…...
数据风险量化评估方案
一、企业面临数据安全的痛点 1、企业缺少清晰的数据安全意识 各部门重视度不够,缺少主动数据安全管控意识。数据安全管控架构不清晰,职责划分不明确。对数据安全管控认识不全面、不深刻。工作人员对于所持有的数据缺乏概念,导致数据的价值无…...
EasyAVFilter代码示例之将视频点播文件转码成HLS(m3u8+ts)视频点播格式
以下是一套完整的视频点播功能开发源码,就简简单单几行代码,就可以完成原来ffmpeg很复杂的视频点播转码调用流程,而且还可以集成在自己的应用程序中调用,例如java、php、cgo、c、nodejs,不需要再单独一个ffmpeg的进程来…...
day-50 代码随想录算法训练营(19)动态规划 part 11
123.买卖股票的最佳时机||| 分析:只能买卖两次,就是说有五个状态: 没有买过第一次买入第一次卖出第二次买入第二次卖出 思路:二维数组,记录五个状态 1.dp存储:dp[i][1] 第一次买入 dp[i][2] 第一次卖…...
自定义权限指令与防止连点指令
1.权限指令 // 注册一个全局自定义权限指令 v-permission Vue.directive(permission, {inserted: function(el, binding, vnode) {const {value} binding; // 指令传的值// user:edit:phone,sysData:sampleconst permissions [user:edit:address, sysData:entrust, sysData:…...
UE5、CesiumForUnreal实现瓦片坐标信息图层效果
文章目录 1.实现目标2.实现过程2.1 原理简介2.2 cesium-native改造2.3 CesiumForUnreal改造2.4 运行测试3.参考资料1.实现目标 参考CesiumJs的TileCoordinatesImageryProvider,在CesiumForUnreal中也实现瓦片坐标信息图层的效果,便于后面在调试地形和影像瓦片的加载调度等过…...
PostgreSQL执行计划
1. EXPLAIN命令 1)PostgreSQL中EXPLAIN命令的语法格式: postgres# \h explain Command: EXPLAIN Description: show the execution plan of a statement Syntax: EXPLAIN [ ( option [, ...] ) ] statement EXPLAIN [ ANALYZE ] [ VERBOSE ] statementwhere option can be…...
深入剖析AI大模型:大模型时代的 Prompt 工程全解析
今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...
Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误,它们的含义、原因和解决方法都有显著区别。以下是详细对比: 1. HTTP 406 (Not Acceptable) 含义: 客户端请求的内容类型与服务器支持的内容类型不匹…...
基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...
新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案
随着新能源汽车的快速普及,充电桩作为核心配套设施,其安全性与可靠性备受关注。然而,在高温、高负荷运行环境下,充电桩的散热问题与消防安全隐患日益凸显,成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
【Go语言基础【13】】函数、闭包、方法
文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数(函数作为参数、返回值) 三、匿名函数与闭包1. 匿名函数(Lambda函…...
