[隐语]第二讲 理论基础:匿踪查询PIR

Chenyang|zhao 2024-12-08 18:12:39

第二讲 理论基础:匿踪查询PIR

主讲老师:段普

学习链接:【隐私计算实训营 第4期】理论基础:匿踪查询PIR 第2讲哔哩哔哩bilibili


01 匿踪查询(PIR)定义

Private Information Retrieval (PIR) 是一种加密协议,旨在允许客户端从服务器的数据集中检索特定数据项,同时确保服务器无法得知客户端查询的具体内容。PIR 的核心目标是在保护用户隐私的同时,实现高效的数据访问。

首次引入 :PIR 概念最早由 [1] 提出,旨在解决在不泄露查询信息的情况下,从服务器获取所需数据的问题。

系统组成

  • 服务器(Server): 持有一个大型数据集。

  • 客户端(Client): 拥有一个查询请求,想要检索数据集中的特定项。

 

 

工作流程

  • 查询发起: 客户端生成一个查询请求,旨在检索数据集中某个特定的数据项。

  • 数据检索: 通过 PIR 协议,客户端能够从服务器检索到所需的数据项。

  • 隐私保护: 在整个过程中,服务器无法识别出客户端具体查询的是哪一项数据。

隐私属性

  • 服务器端隐私保护: 服务器无法确定客户端检索了数据集中的哪一项。这意味着,服务器无法通过观察查询请求或通信模式来推断出客户端的兴趣点。

  • 客户端隐私保护: 客户端只能获取到其查询的数据项,无法访问或推断出数据集中其他未查询的数据项。这确保了数据集的其他部分对客户端保持隐私。

02 PIR分类

1. 对手(Adversary)

  • 信息理论安全(Information Theoretic Security)[1]

    • 计算能力无限的对手(Computationally Unbounded Adversary):在这种模型下,对手拥有无限的计算资源,PIR协议必须在信息层面上保证隐私,不依赖于计算复杂性假设。

  • 计算型PIR(Computational PIR)[2,3,4,5,6,7]

    • 计算能力有限的对手(Computationally Bounded Adversary):假设对手的计算能力是有限的,PIR协议可以利用计算复杂性假设(如难以破解的数学问题)来保证隐私。

2. 服务器数量(Number of Servers)

  • 单服务器PIR(Single-server PIR)[3,4,5,6,7,8]

    • 优点:更适合实际应用的实现,因为只需与一个服务器交互。

    • 缺点:可能需要依赖较为复杂的加密原语,如全同态加密(FHE),这在计算和存储上可能较为昂贵。

  • 双服务器PIR(Two-server PIR)[2,9,11]

    • 优点:可以利用分布式点函数(DPF)等加密原语,提高效率。

    • 缺点:在实际应用中实现较为困难,因为需要多个独立的服务器协作,且服务器之间需要严格的信任假设。

3. 信息检索方式(How to Retrieve Information)

索引型PIR(Index PIR)[7]

  • 特点:客户端知道所需数据的位置(索引),因此可以直接请求特定位置的数据。

  • 应用场景:适用于客户端已知具体数据位置的情况,如数据库中已知记录的具体位置。

关键词型PIR(Keyword PIR)[8,10]

  • 特点:客户端通过关键词请求数据,而不事先知道数据的位置。

  • 应用场景:适用于需要基于关键词进行搜索的场景,如搜索引擎或数据库的关键词查询。

4. 服务器数量的进一步细分

  • 单服务器PIR的实现挑战:需要高效的加密技术,如全同态加密(FHE),这可能带来较高的计算和存储开销,限制了其在资源受限环境中的应用。

  • 双服务器PIR的实现优势:通过分布式点函数(DPF)等技术,可以在保持隐私的同时提高效率,但需要多个独立且不互相通信的服务器,增加了实现的复杂性和成本。

03 PIR技术简介

3.1 A Trivial Solution

 

PHE算法(如Paillier加密):使用部分同态加密(PHE)方案,例如Paillier加密,来实现PIR。

优点:实现简单,因为PHE算法相对直接,开发和部署较为容易。

缺点:通信成本高,因为加密后的查询和响应数据量大,需要传输大量密文,导致带宽和延迟开销显著。

 

3.2 HE-based PIR

基于同态加密(Homomorphic Encryption, HE)的PIR利用同态加密的特性,实现了在加密数据上直接进行计算,从而增强了数据隐私保护。

同态加密(Homomorphic Encryption, HE)

同态加密是一种加密方法,允许在密文上直接执行特定的运算,而无需先将其解密。这意味着可以在保持数据加密状态下进行处理,确保数据在传输和计算过程中的隐私安全。其中,Fan-Vercauteren(FV)方案是一种广泛应用的同态加密方案,支持以下基本运算:

  • 加法(Addition):允许对两个密文进行加法运算,结果仍为密文形式。

  • 明文乘法(Plaintext Multiplication):允许将密文与明文相乘,结果仍为密文。

  • 替换(Substitution):支持在加密数据上进行特定的替换操作。

基于HE的PIR流程

  1. 服务器端数据加密:服务器将数据库中的每条数据转换为HE明文(密文)形式,确保数据在存储和处理过程中的安全性。

  2. 客户端查询向量创建:客户端根据所需检索数据的索引,创建一个加密的查询向量。该向量设计使得服务器无法获知客户端具体查询了哪些数据。

  3. 服务器端计算内积:服务器接收到加密的查询向量后,计算查询向量与HE明文数据库的内积。由于使用同态加密,这一过程在加密状态下完成,保证了数据隐私。

  4. 客户端结果解密:服务器将计算结果返回给客户端,客户端使用其私钥解密得到所需的明文结果,实现数据的私密检索。

尽管HE-based PIR在隐私保护方面具有显著优势,但其计算和通信开销较大,限制了其在大规模数据库中的应用。这主要由于同态加密运算的复杂性和加密数据量的庞大所致。

SealPIR:优化的HE-based PIR方案

为了克服传统HE-based PIR的效率瓶颈,SealPIR方案引入了多项优化技术:

  • 多数据包装入单一HE明文:将多个数据项打包到一个HE明文中,减少服务器需要处理的明文数量,优化计算效率。

  • 压缩查询向量:客户端将查询向量压缩为单一密文,服务器接收后进行展开处理。这一方法显著减少了通信开销。

  • 支持多维查询:SealPIR能够处理多维度的查询,允许更复杂的数据检索操作,提高了系统的灵活性和适用性。

  • 利用布谷鸟哈希(Cuckoo Hashing):采用布谷鸟哈希技术,支持同时处理多个查询请求,提高了查询的并行处理能力和系统吞吐量。

通过上述优化,SealPIR能够在拥有百万级数据的数据库上实现秒级查询响应。这使得HE-based PIR在实际应用中变得更加可行,尤其适用于需要高隐私保护且数据量庞大的场景。

3.3 DPF-based PIR

分布式点函数(Distributed Point Function, DPF)

分布式点函数是一种密码学工具,允许将一个点函数(在特定点处返回1,其他地方返回0)分解为多个子函数。每个子函数独立地携带部分信息,组合起来可以重构原始点函数,但单独来看无法获取完整信息。这一特性使得DPF非常适合用于构建安全且高效的PIR协议。

 基于DPF的PIR流程

 

  1. 两服务器方案:基于DPF的PIR通常采用两服务器方案。客户端生成两个DPF密钥,每个密钥对应一个服务器。这样,两个服务器各自接收到部分查询信息,无法单独推断出完整的查询内容。

  2. 数据库复制与非协作服务器:数据库被复制到两台非协作的服务器上。即使其中一台服务器被攻击,另一台服务器的独立性仍然保证了查询的隐私性。

  3. 客户端生成查询:客户端根据所需数据的索引,使用DPF生成两个子查询,分别发送给两台服务器。这些子查询确保了每台服务器只能获取到部分查询信息,无法单独重构完整查询。

  4. 服务器处理查询:每台服务器根据接收到的子查询,在其数据库中执行局部检索操作,并将结果返回给客户端。

  5. 客户端合并结果:客户端接收来自两台服务器的部分结果,通过合并操作恢复出最终的查询结果,实现私密数据检索。

 

实现挑战

  • 服务器要求: 需要两台非协作的服务器进行数据存储和查询处理,这在实际应用中可能增加了系统的部署和维护成本。

  • 通过新DPF原语提升效率

04 References

[1] B. Chor, O. Goldreich, E. Kushilevitz, and M. Sudan. Private information retrieval. FOCS 1995.

[2] B. Chor and N. Gilboa. Computationally private information retrieval. In Proc. of 29th ACM Symposium on Theory of Computing, pages 304–313, 1997.

[3] Eyal Kushilevitz and Rafail Ostrovsky. Replication is not needed: Single database, computationally-private information retrieval. In FOCS, pages 364–373, 1997.

[4] Cachin, C., Micali, S., Stadler, M. Computationally private information retrieval with polylogarithmic communication. In: Stern, J. (ed.) EUROCRYPT 1999. LNCS, vol. 1592, pp. 402–414. Springer, Heidelberg (1999).

[5] X. Yi, M. G. Kaosar, R. Paulet, and E. Bertino, Single-database private information retrieval from fully homomorphic encryption, IEEE Trans. Knowl. Data Eng., vol. 25, no. 5, pp. 1125–1134, May 2013.

[6] C. A. Melchor, J. Barrier, L. Fousse, and M. Killijian. XPIR: Private information retrieval for everyone. PoPETs, 2016(2):155–174, 2016.

[7] Sebastian Angel, Hao Chen, Kim Laine, and Srinath Setty. PIR with Compressed Queries and Amortized Query Processing. In Proc. of S&P. IEEE, 2018, pp. 962–979.

[8] Asra Ali, Tancrède Lepoint, Sarvar Patel, Mariana Raykova, Phillipp Schoppmann, Karn Seth, and Kevin Yeo. Communication-Computation Trade-offs in PIR. IACR Cryptol. ePrint Arch., 2019:1483.

[9] H. Corrigan-Gibbs, D. Kogan, Private Information Retrieval with Sublinear Online Time, in: Proc. 39th Annual International Conference on the Theory and Applications of Cryptographic Techniques, EUROCRYPT, Zagreb, Croatia, 2020, pp. 1–69.

[10] Benny Chor, Niv Gilboa, and Moni Naor. Private information retrieval by keywords. Technical Report TR-CS0917, Dept. of Computer Science, Technion, 1997.

[11] E. Boyle, N. Gilboa, and Y. Ishai. “Function Secret Sharing: Improvements and Extensions”. In: CCS ’16.

secretflow/secretflow: A unified framework for privacy-preserving data analysis and machine learning

PSI

  • 最新PSI

  • 多方PSI

  • 恶意安全PSI

  • 交集可用不可见PSI

  • DP-PSI PIR

  • Single-server PIR

  • Two-server PIR Ø 应用:联合建模 、联邦学习 、 数据分析

...全文
52 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

551

社区成员

发帖
与我相关
我的任务
社区描述
隐语开源社区,隐私计算开发者交流和讨论的平台。
密码学可信计算技术安全 企业社区
社区管理员
  • 隐语SecretFlow
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

【最新活动】

3月18日:隐私计算实训营第一期

试试用AI创作助手写篇文章吧