秘密共享差分隐私原理解析

1. 隐私计算全貌

在这里插入图片描述

可以看到,隐私计算技术从1979年就开始了,历经四代从安全多方计算(MPC)、到差分隐私(DP)、到集中加密技术(TEE),再到联邦学习(FL)

2. 秘密共享

secret Sharing 就是“秘密分享”或者“秘密共享”,可以理解为:
现在有一个秘密(如一个整数 D),不希望泄露出去。同时有 N 个人,如果每个人都知道这个秘密D,那么D就不安全了。但是如果把D进行切分随机的分给N个人,要用到的时候需要N个人的部分信息聚合到一起,才能解密D的值,那么是安全的。但是这种方案比较脆弱,如果一个人不在了,这个秘密就真成了无法探知的秘密了。
所以为了健壮性,设计了一种新的模式,在这种模式下,不需要所有的人一起解密,只需要一定的人数K(1 < K < N)就可以解密,这就是Shamir在1979 年发表在 ACM-Communication 的一个解法。

主要特性:
在这里插入图片描述

所以,可以将秘密分享分为两类:
严格的秘密分享:需要所有人一起解密;
阈值的秘密分享:不需要所有人,只需要满足一定人数,就可以解密;

2.1 阈值秘密分享

2.1.1 基本思路

阈值秘密分享的基本思路是,基于秘密分享的便携性与安全性的考量,如果有个n个秘密分片,我们只需要凑齐 k( 1 < K <n )个人,他们手中的信息拼凑起来,就可以获取秘密

那么如何才能做到这点呢?有以下几个问题需要考虑:

随机性:挑选的k个人,需要是随机挑选的k个人,不能是一个固定的选取。
必然性:随机选出的这k个人,必须能够将需要的数字进行解密。

那么,是什么样的技术可以实现呢?

大家还记得学习《线性代数》的时候吧,在线性代数的课上,k个参与者,相当于k个变量,那么需要k个方程就才可以解出来。

在这里插入图片描述

2.2.2 计算逻辑

加密逻辑

秘密数字:S = 1234;
参与方:n = 6 个参与者,S1, S2, …,S6
域值:k = 3

1、首先构造出n个方程式,构造公式,这个公式是从文章How to Share a Secret里面分析的,说白了就是多项式,
在这里插入图片描述

2、进行计算

在这里插入图片描述

解密逻辑:
在这里插入图片描述

参考文档:

https://en.wikipedia.org/wiki/Shamir%27s_Secret_Sharing

https://arxiv.org/pdf/2009.13153.pdf

https://dl.acm.org/doi/pdf/10.1145/359168.359176

3. 差分隐私

3.1 直观原理

在这里插入图片描述

如果攻击者无法判别信息O是来自于D还是D’,那可以认为Alice的隐私受到了保护。

差分隐私要求任何被发布的信息应当避免让攻击者分辨出任何具体的个人数据。为此,差分隐私要求被发布的信息需经一个随机算法所处理,且该随机算法会对信息做一些扰动

3.2 定义

随机算法A满足ε -差分隐私,当且仅当以下式子
在这里插入图片描述
对任意“相邻”数据集DD’及任意输出O都成立,差分隐私图示如下:

在这里插入图片描述

曲线差距越小,说明安全性越好,隐私保护越强
上面的定义意味着:修改一个人的数据,不会对算法A输出的分布带来太大的影响,也就是说当一个攻击者观察算法A的输出的时候,很难分辨出源数据到底是D还是D’

3.3 差分隐私算法

拉普拉斯机制随机化回答是两个经典的差分隐私算法,当然还有许多其他不同的算法。
一般而言,不同的应用场景、不同的数据集、不同的输出往往需要不同的算法设计。

3.3.1 拉普拉斯机制

当发布数值型数据的时候,可以用拉普拉斯机制来引入噪声来满足差分隐私。

案例:假设我们有一个病患数据集 D,考虑以下数据库查询,如果我们要发布这个查询结果,如何才能满足ε -差分隐私。

在这里插入图片描述

1、首先,我们应该考虑这个查询的结果有多依赖于某个特定病人的信息?
如果我们修改数据集D中任意一个病患的数据,上述查询结果最多会改变1。这里的1代表了查询结果对于个体数据的依赖程度

如果我们能用噪声掩盖这个最多为1的改变的话,我们就能满足差分隐私。

2、其次,我们可以往查询结果中加入一个服从拉普拉斯分布的噪声。

在这里插入图片描述

  1. 该函数中值当x=0时,pdf(x) = 1/ 2λ为最大,两边成指数型下降;
  2. 当参数设为 λ=1/ε ,即能满足ε-差分隐私(根据上面假设应为分子为1是因为上面假设的查询结果最多会改变1(敏感度为1))

一般而言,如果我们要发布一组数值型查询结果,通常会对每个结果加入独立的拉普拉斯噪声来满足差分隐私。并且噪声参数 λ 取决于我们修改一个人的数据时,查询结果总共会改变多少?一般取 λ = 敏感度 / ε,即能满足ε-差分隐私

3.3.2 随机化回答

假设我向一组人问一个敏感的是非题,出于隐私,有的人可能不愿意给真实答案,

在这里插入图片描述

解决方案:让每个人在他的答案中加入噪声
在这里插入图片描述

随机化回答可以满足 ε -差分隐私?
由于其随机性,攻击者并不能从随机化的输出反推出输入到底是“yes”还是“no”,只要根据ε 来调整随机化的概率即可

  • 假设有1000个人用随机化给了我回复

    • 当中有5500个yes和4500个no
  • 每个人以80%概率给我假回复

    • 所有大致上总共有8000个假回复

    • 当中大致有4000个假yes和4000个假no

在这里插入图片描述

据此,可以推出剩下的真实回复大概有1500个yes和500个no,但无法反推出个体回复

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/429454.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

“互动+消费”时代,借助华为云GaussDB重构新零售中消费逻辑

场与人的关系 “人—货—场”是零售中重要的三要素&#xff0c;我们一直在追求&#xff0c;将零售中的人、货、场进行数字化并在云端进行整合&#xff0c;形成属于我们自己的云平台。 随着互联网技术为信息提供的便利&#xff0c;消费者的集体力量正在逐渐形成一股强大的反向…

Applied Energy+C论文复现:考虑泊位分配灵活性的港口综合能源系统优化调度程序代码!

程序结合了港口独特的工作属性&#xff0c;构建了泊位优化分配的模型&#xff0c;提出了考虑泊位优化和多能协同的港口综合能源运行优化模型。港口运营商根据多种能源供应的成本特性决策船舶停泊的开始&#xff0f;结束时间&#xff0c;改变港口的总负荷需求曲线。程序算例丰富…

使用postman测试若依登录接口API-2

请求方式 由于登录控制器可知&#xff1a;该请求方式为Post请求 请求地址 在请求路径栏输入请求地址&#xff0c;如下图所示&#xff1a; 参数体 在Body键入所需参数&#xff0c;类型选择raw,数据格式选择"JSON"&#xff1a;如下图所示&#xff1a; 认证成功与失败…

特征值和特征向量及其在机器学习中的应用

特征值和特征向量是线性代数中的概念&#xff0c;用于分析和理解线性变换&#xff0c;特别是由方阵表示的线性变换。它们被用于许多不同的数学领域&#xff0c;包括机器学习和人工智能。 在机器学习中&#xff0c;特征值和特征向量用于表示数据、对数据执行操作以及训练机器学…

NOIP 2009普及组初赛试题及解析

NOIP 2009普及组初赛试题及解析 一. 单项选择题 &#xff08;共20题&#xff0c;每题1.5分&#xff0c;共计30分。每题有且仅有一个正确答案.&#xff09;。二. 问题求解&#xff08;共2题&#xff0c;每题5分&#xff0c;共计10分&#xff09;三. 阅读程序写结果&#xff08;共…

Vue.js 深度解析:模板编译原理与过程

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

网络学习:SMart link技术与Monitor link技术

目录 一、SMart link技术 1.1、SMart link技术简介 1.2、SMart link技术原理及基础知识点 1、应用场景&#xff08;举例&#xff09;&#xff1a; 2、运行机制 3、保护vlan 4、控制VLAN 5、Flush报文 6、SMart link的负载分担机制 7、SMart link角色抢占模式 二、Mo…

YOLOv5目标检测学习(1):yolo系列算法的基础概念

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、基于深度学习的目标检测需要哪些步骤&#xff1f;二、数据准备&#xff08;即准备数据集&#xff09;1.目标检测的数据集如何获取&#xff1f;2.数据集包括…

Python报错ModuleNotFoundError: No module named ‘numpy‘

原因&#xff1a;缺少“numpy” 进入python安装路径&#xff0c;script路径内 在路径下启动终端 01.更新numpy python -m pip install --upgrade pip 02.安装 pip install numpy 03.运行python python 04.导入包 from numpy import * 问题已解决。

MySQL学习Day25——数据库其他调优策略

一、数据库调优的措施: 1.调优的目标: (1)尽可能节省系统资源&#xff0c;以便系统可以提供更大负荷的服务 (2)合理的结构设计和参数调整&#xff0c;以提高用户操作的响应速度 (3)减少系统的瓶颈&#xff0c;提高MySQL数据库整体的性能; 2.如何定位调优:用户的反馈、日志…

政安晨【TypeScript高级用法】(二):泛型与命名空间

TypeScript的泛型允许我们在定义函数、类和接口时使用参数化类型&#xff0c;使得这些实体可以适应不同类型的数据。泛型可以增加代码的重用性和灵活性。 同时&#xff0c;TypeScript的命名空间提供了一种在全局命名空间中组织代码的方式&#xff0c;可以避免全局变量污染和命…

项目打包时报错 There are test failures.

报错原因是 test测试类有问题 我们可直接选择跳过测试类打包 如下 此时再次打包就成功了

高级软件开发知识点

流程 算法题简历上项目用到技术、流程、遇到问题HR 准备 常考的题型和回答思路刷100算法题&#xff0c;理解其思想&#xff0c;不要死记最近一家公司所负责的业务和项目&#xff1a; 项目背景、演进之路&#xff0c;有哪个阶段&#xff0c;每个阶段主要做什么项目中技术选型…

vue2和vue3的区别介绍

Vue.js 是一个流行的前端JavaScript框架&#xff0c;用于构建用户界面和单页应用程序。自从Vue.js首次发布以来&#xff0c;它就因其简洁的API、灵活的架构和易于上手的特点而受到了广泛的欢迎。Vue.js的第二个主要版本&#xff08;Vue 2&#xff09;发布于2016年&#xff0c;而…

AutoGPT实现原理

AutoGPT是一种利用GPT-4模型的自动化任务处理系统&#xff0c;其主要特点包括任务分配、多模型协作、互联网访问和文件读写能力以及上下文联动记忆性。其核心思想是通过零样本学习&#xff08;Zero Shot Learning&#xff09;让GPT-4理解人类设定的角色和目标&#xff0c;并通过…

正则表达式在QT开发中的应用

一.正则表达式在QT开发中的使用&#xff1a; 1.模式匹配与验证&#xff1a;正则表达式最基本的作用就是进行模式匹配&#xff0c;它可以用来查找、识别或验证一个字符串是否符合某个特定的模式。例如&#xff0c;在表单验证中&#xff0c;可以使用正则表达式来检查用户输入的邮…

微擎安装,卡在“安装微擎”界面

进入install.php&#xff0c;点击【在线安装】 下一步配置数据库&#xff0c;开始安装系统 然后显示进度条&#xff0c;进度条一闪而过 然后就没有进度条显示了&#xff0c;一直卡在这里 第一次等了好久&#xff0c; 删除目录下的文件&#xff0c;重装还是这样 再重启服务器&…

C语言数组作为函数参数

有两种情形&#xff1b; 一种是数组元素作为函数实参&#xff1b;一种是数组名作为函数参数&#xff1b; 新建一个VC6单文档工程&#xff1b; void printshz(int , CDC* , int , int ); double getav(int a[5]); ...... void CShzcshView::OnDraw(CDC* pDC) {CShzcshDoc* pDo…

electron+vue3全家桶+vite项目搭建【29】封装窗口工具类【3】控制窗口定向移动

文章目录 引入实现效果思路声明通用的定位对象主进程模块渲染进程测试效果 引入 demo项目地址 窗口工具类系列文章&#xff1a; 封装窗口工具类【1】雏形 封装窗口工具类【2】窗口组&#xff0c;维护窗口关系 封装窗口工具类【3】控制窗口定向移动 很多时候&#xff0c;我们想…

python识别并控制操作已打开的浏览器进行自动化测试

前提&#xff1a;已安装python和selenium 一、将浏览器以debugger模式打开 打开方法&#xff1a; 1.右击浏览器&#xff0c;选择属性&#xff1a; 2.在目标中加上 --remote-debugging-port9222 --user-data-dir"C:\selenum\AutomationProfile" 二、识别代码 from…