隐私计算实训营第六讲-隐语PIR介绍及开发实践

隐私计算实训营第六讲-隐语PIR介绍及开发实践

文章目录

  • 隐私计算实训营第六讲-隐语PIR介绍及开发实践
    • 1.隐语实现PIR总体介绍
      • 1.1按服务器数量分类
      • 1.2按查询类型分类
    • 2. Index PIR - SealPIR
    • 3. Keyword PIR - Labeled PSI
    • 4.隐语PIR功能分层
    • 5.隐语PIR后续计划
      • PIR协议开发
      • PIR调用框架
      • PIR产品化

1.隐语实现PIR总体介绍

隐语实现的PIR(Private Information Retrieval)是一项使用户能够在不向服务器透露查询内容的情况下,从服务器数据库查询数据的技术。这种技术主要用于保护用户的查询隐私,防止服务端知晓或推断用户的查询意图或感兴趣的数据。隐语实现的PIR技术可以按照不同的维度进行分类,主要分为服务器数量分类和查询类型分类。

1.1按服务器数量分类

  1. 单服务器方案(Single Server):

    • 在单服务器方案中,所有的数据都存储在一个服务器上。用户需要从这个单一的数据源中查询信息,同时确保其查询内容对服务器保持私密。这要求使用高度复杂的加密技术来保护查询内容,同时确保查询效率。
  2. 多服务器方案(Multi Server):

    • 多服务器方案涉及到多个服务器,数据可以分散存储在这些服务器上。用户的查询被设计为分布式的,每个服务器只处理查询的一部分,而没有任何一个服务器能够单独确定用户的完整查询内容。通过这种方法,即使某些服务器被攻破,用户的查询隐私仍然得到保护。

1.2按查询类型分类

  1. Index PIR:

    • 在Index PIR中,用户根据数据的索引进行查询。这种类型的PIR假设用户已经知道他们所需要数据的确切位置(即数据库中的索引)。用户的查询旨在检索特定索引处的数据,而不向服务器透露该索引是什么。
  2. Keyword PIR:

    • Keyword PIR允许用户根据关键字进行查询。这意味着用户不需要知道数据的具体位置;相反,他们可以根据数据内容的关键字进行搜索。这种方法更加灵活,允许用户根据内容特征而不是具体的数据库结构来检索信息。

隐匿查询(Private Information Retrieval, PIR)是一种允许用户从服务器查询数据,同时确保服务器无法知道用户查询的是哪些数据的技术。这种技术主要用于保护用户的查询隐私,防止服务器了解或推断出用户的兴趣点或敏感信息。隐匿查询可以根据不同的维度进行分类,包括服务器数量(单服务器方案和多服务器方案)以及查询类型(Index PIR和Keyword PIR)。

2. Index PIR - SealPIR

SealPIR是一种实现Index PIR的技术,其主要贡献包括:

  • 将多个数据打包到一个同态加密(HE)明文中。
  • 将查询的数据库索引(db_index)转换为明文索引(plaintext_index)。
  • 将查询向量压缩到一个密文中,显著减少了通信量。
  • 服务器端可以通过计算扩展得到查询的密文向量。
  • 支持多维查询,例如,通过将数据转换为根号n乘以根号n的矩阵来实现2维查询,以减少扩展计算量。
  • 支持同时进行多个查询,使用cuckoo hash来实现。

3. Keyword PIR - Labeled PSI

Labeled PSI是实现Keyword PIR的一种方法,其核心思想是通过点值表示得到插值多项式的系数表示。隐语(Secretnote)实现的Labeled PSI的主要工作包括:

  • 以微软的开源代码功能为核心,实现了基于隐语的OPRF(Oblivious Pseudo-Random Function)。
  • 支持多种椭圆曲线加密(ECC)算法,包括FourQ, Secp256k1, SM2。
  • 实现了标签(Label)的自动填充功能。
  • 增加了服务的预处理结果保存功能,这样可以在离线阶段和查询阶段进行多次查询。

这些技术的发展和实现显著提高了数据查询时的隐私保护,使得用户在不暴露查询意图的情况下,仍能从服务器获取所需信息。

4.隐语PIR功能分层

在这里插入图片描述

5.隐语PIR后续计划

隐语PIR(Private Information Retrieval)项目的未来发展计划主要围绕以下几个方面展开:

PIR协议开发

  • SOTA PIR跟踪: 持续关注并跟踪最新的、处于技术领先地位(State Of The Art, SOTA)的PIR技术和研究成果,以保持隐语PIR技术的先进性和竞争力。
  • Spiral PIR: 开发和集成Spiral PIR协议,这是一种高效的PIR实现,可能特指一种旨在优化数据检索过程以减少查询时间和提高数据隐私的技术。
  • Simple PIR: 实现和优化Simple PIR方案,可能指的是一种更为简化的PIR实现,旨在降低系统复杂度,提高易用性和可访问性。

PIR调用框架

  • PSI/PIR独立代码库: 建立一个独立的代码库,用于存放和管理与PSI(Private Set Intersection私有集合交集)和PIR相关的所有代码和文档,以方便开发者使用和贡献。

PIR产品化

  • 了解产品需求: 通过市场调研和用户反馈,深入了解客户和市场对PIR技术的具体需求,以指导产品的开发方向和功能设计。
  • 设计落地方案: 根据产品需求,设计实际可行的落地方案,包括技术路线图、功能实现、用户界面设计等,确保PIR技术能够以产品形态满足市场需求,解决实际问题。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript 数组元素交互最优解

利用 ES6 解构赋值: let arr [1, 2, 3, 4, 5];// 交互下标 1,4 元素的值 [arr[1], arr[4]] [arr[4], arr[1]];// 输出: [1, 5, 3, 4, 2] console.log(arr);浏览器控制台效果:

Node.js-知识点学习总结归纳

Node.js-知识点学习总结归纳 安装nodenode运行方式通过Node.js直接运行js文件(也就不用通过网页html了)绝对路径调用:相对路径调用:直接运行js命令: Vscode控制台使用node运行js文件 安装node 这个就不用讲了吧,网上搜…

【Python全栈】Python实现交通信号灯

文章目录 一、实现过程1. 导入必要的库和初始化Pygame2. 定义颜色和屏幕尺寸3. 创建交通信号灯、行人和车辆类4. 定义绘制函数draw5. 实例化交通信号灯、行人和车辆对象6. 创建并启动线程7. 游戏循环 二、代码 一、实现过程 1. 导入必要的库和初始化Pygame 导入Pygame库并初始…

硬件知识:点亮led

怎么做 1、看原理图,去顶控制LED的引脚 1.1led 1.2gpio 1、使能gpio模块,设置Power/clock control,向gpio模块提供电源和时钟 2.设置引脚模式为gpio模式 3.设置方向output/input4、读取引脚,获得当前电频到底是低电平/高电平;这…

ES集群部署的核心步骤

文章目录 引言I ES集群部署前期工作II 部署ES2.1 配置安全组2.2 创建ES用户和组2.3 下载安装ES2.4 修改内存相关配置III es集群添加用户安全认证功能3.1 生成 elastic-certificates.p123.2 创建 Elasticsearch 集群密码3.2 设置kibana的 elasticsearch帐号角色和密码3.3 logsta…

maya 遍历所有子节点

目录 MEL遍历所有子节点 python遍历所有子节点 MEL遍历所有子节点 // 定义一个递归函数来遍历所有子节点 proc traverseAllChildren(string $node) {// 获取直接子节点string $children[] listRelatives -children $node;// 遍历所有直接子节点for ($child in $children) {…

社会公益第三方评估

本文由群狼调研(公众项目第三方评估)出品,欢迎转载,请注明出处。社会公益第三方评估是由独立的组织或机构进行的对社会公益项目的评估和监督。这些第三方评估机构通常是独立于项目实施者和受益者的中立机构,旨在提供客…

LeetCode热题Hot100 - 正则表达式匹配

一刷~ 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 . 和 * 的正则表达式匹配。 . 匹配任意单个字符* 匹配零个或多个前面的那一个元素 所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。 有几个用例超时,容我三思…

数据库:Redis数据库

一、非关系型数据库 1.什么是非关系型数据库 非关系型数据库(Non-relational Database)又称NoSQL数据库是一种不同于传统关系型数据库管理系统(RDBMS)的数据存储解决方案。NoSQL这个术语最初意味着"Not Only SQL"&…

静态资源不加载是否会影响性能吗

静态资源不加载或加载缓慢确实可能会影响网站或应用的性能。静态资源,如CSS、JavaScript、图片等,是网页的重要组成部分,它们负责网页的样式、交互和视觉效果。 如果静态资源不加载或加载失败,用户可能会看到一个没有样式或交互的…

1999-2022年上市公司员工人数数据

1999-2022年上市公司员工人数数据 1、时间:1999-2022年 2、指标:证券代码、时间、员工人数 3、来源:整理自csmar 4、范围:上市公司 5、指标解释: 上市公司员工人数是衡量公司规模和发展状的重要指标。该数据直接…

阿赵UE学习笔记——24、动画播放控制

阿赵UE学习笔记目录   大家好,我是阿赵。   继续学习虚幻引擎的使用。关于UE的动画系统,之前学习了很多,包括动画合成或者动画蒙太奇等,实际上最后得到的都是一个动画片段。那么这些动画片段,是需要怎样播放控制呢…

babyAGI(6)-babyCoder源码阅读2任务描述部分

废话不多说,我们直接看task的prompt 这里需要注意的是,每个openai_call的temperature都不相同,这也是开发程序时需要调整和关注的一点 1. 初始化代码任务agent 作为babycoder的第一个angent,整个prompt编写的十分值得学习 整个p…

Taro多行文本最多展示5行,超出“查看更多”展示,点击弹层

Taro中,页面需求: 多行文本,展示最多展示5行,超出5行,展示“查看更多”按钮,点击弹层展示文本详细信息。 弹层代码就不说了,着重说一下怎么获取区域高度~ 1.区域设置max-height&am…

ArcGIS Pro打不开Excel?Microsoft驱动程序安装不上?

刚用ArcGIS pro的朋友们可能经常在打开xls或者xlsx文件的时候都会提示,未安装所需的Microsoft驱动程序。 怎么办呢?当然,按照提示装一下驱动就会好吗?有什么状况会出现?有什么临时替代方案呢? 全文目录&a…

为什么要选择第三方软件测试机构?CMA、CNAS第三方软件测试机构推荐

第三方软件测试机构是独立于软件开发方和软件使用方的中立机构,致力于对软件产品进行全面、客观、专业的测试和评估,为软件开发方和使用方提供全面的技术支持和服务。 一、为什么要选择第三方软件测试机构   1、专业性强:拥有专业的测试团…

程序员的认知风格与思维特点

1 程序员的认知风格与思维特点 程序员的认知风格与思维特点,是他们在编程过程中展现出来的独特 目录 1 程序员的认知风格与思维特点 1.1 逻辑思维与抽象思维能力 1.2 空间思维与模式识别能力 1.3 系统思维与问题分解能力 1.4 案例与数据 1.5 总结 2 逻辑思…

实验4-10:判断IP地址的有效性

实验4-10:判断IP地址的有效性 输入一个IPv4格式的IP地址,判断地址的有效性。 IPv4格式的地址由4组十进制数构成,数据由句点间隔,每组数据的范围介于0~255之间。 例如: 202.118.11.24 为有效IP地址, 而 202…

QT实现windows下获取CPU、内存及磁盘信息

一.目的 QT代码实现windows下获取CPU、内存及磁盘信息。 二.代码实现 1.获取CPU和内存信息 #include <Windows.h> // 获取CPU信息 SYSTEM_INFO systemInfo; GetSystemInfo(&systemInfo); qDebug() << "CPU Architecture:" << (systemInfo.wP…

基本电路理论-电流和电压的参考方向

&#x1f308;个人主页&#xff1a;会编程的果子君 &#x1f4ab;个人格言:“成为自己未来的主人~” 电流及参考方向 电流&#xff1a;带电粒子有规则的定向移动 电流强度&#xff1a;单位时间内通过导体横截面的电荷量&#xff0c;即&#xff1a;idq/dt 单位&#xff1a…