🍊One Server for the Price of Two: Simple and Fast Single-Server Private Information Retrieval
2024-4-10
| 2024-4-10
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password
🍊
One Server for the Price of Two: Simple and Fast Single-Server Private Information Retrieval 阅读记录-USENIX 2023

🍊
目 录
One Server for the Price of Two: Simple and Fast Single-Server Private Information Retrieval

基本信息

📢
One Server for the Price of Two: Simple and Fast Single-Server Private Information Retrieval
作者:Alexandra Henzinger
期刊 & 会议:USENIX
时间:2023
JCR/CCF:CCF-A
相关链接:详细信息如下(包括论文原文链接、会议PPT链接、会议视频链接、论文代码链接)

研究对象

🎯
密码技术 & 应用场景
  • 隐私信息检索 & 基于格的同态加密 & LWE & 新型数据结构

研究动机

⚠️
潜在问题
  1. 现有的隐私检索方案均计算开销大,因为对于任意客户端的问询,服务器都需要接触数据库里面每个数据记录,否则会泄露那条数据记录是客户端不感兴趣的,这与隐私信息检索技术需求背道而驰。
  1. 当前最快的单服务器PIR方案在一个一百字节记录大小的数据库上仅实现了259MB每秒的吞吐量,远没有达到理论上界
  1. 多服务器PIR方案虽然可以使服务器端吞吐量达到11.5GB/s/core,但是这种多服务器方案要求客户端之间不能合谋,不仅安全假设太强,而且现实部署非常困难

研究目标&贡献

🌟
主要贡献
  1. 基于LWE困难问题提出了当前最快速的一个单服务器隐私信息检索方案—SimplePIR
  1. SimplePIR可以实现10GB每秒的服务器通吐量,SimplePIR有比较高的通信开销(例如,在针对1GB大小的数据库进行隐私检索时,客户端需要下载121MB的hint,即辅助信息),在此之后,客户端可以==复用该hint==发起任意次数的问询,且每次问询需要消耗242KB的通信开销
  1. 进一步提出一个单服务器私人信息检索方案—DoublePIR,其可以将hint大小减小至16MB,每次问询需要345KB,服务器通吐量降低至7.4GB每秒
  1. 将SimplePIR和DoublePIR以及一种新的近似集成员数据结构应用于证书透明要求下的私有审计任务场景,实现了严格更强的隐私保障,实验结果表明与Google最近的工作相比,通信量增加了13倍,可以实现每周仅下载16MB以及1.5KB的TLS通信开销

研究基础

相关背景知识汇总
  • 通吐量(throughput) :数据库大小与服务器回答一次问询所需的时间之间的比率
Kushilevitz and Ostrovsky方案(首个单服务器PIR方案)
  • PIR服务器将一个N条记录的数据库划分为一个 维矩阵
  • 客户端向服务器发送一个 的向量 (仅索引"j"位置为1,其余位置为0)的密文
  • 如果加密方案满足线性同态,服务器可以计算矩阵向量乘积 并返回该结果给客户端
  • 客户端解密服务器返回的密文获得
  • 该方法的整体开销会随着 增长而增长(这是基于同态的单服务器PIR的通病)
  • 该方法的主要开销在于需要在密文状态下完成大量的线性同态计算操作,这也是需要解决的问题关键所在
notion image
  • 证书透明度(Certificate Transparency)场景下的签名证书时间戳审计(SCT)
    • 服务器拥有一个字符串集合 S,客户端想要去测试一个具体的字符串 $\sigma$ (即一个SCT) 是否在集合 S 中。由于 $\sigma$ 会泄露客户端访问的具体网站是什么,因此需要PIR技术。
    • 谷歌使用了一种方法,但是这种方法只能实现 $k$-匿名,其中 $k=2000$。
  • -LWE 困难假设
    • 给定一个秘密 ,整数 ,整数模 ,以及一个 上的噪声分布 ,均匀随机选择矩阵 ,一个秘密的向量 ,一个噪声向量 ,以及一个随机向量 ,使得下面两个分布是计算不可区分.
  • 一个在明文空间 以及数据库大小 上的具备预处理的PIR方案包括以下四个概率多项式时间算法:
    • Setup(db) (). 给定数据库 db 作为输入,输出服务器和客户端的辅助信息 ()
    • Query() (). 给定索引 作为输入,输出秘密的客户端状态 和 数据库问询
    • Answer(db, , ) ans. 给定服务器辅助信息 ,数据库 db,以及数据库问询 作为输入,输出问询结果 ans
    • Recover(,ans) . 给定秘密的客户端状态 ,客户端辅助信息 以及问询结果 ans,输出记录
    • 正确性
    • notion image
  • 布隆过滤器:本质上布隆过滤器是一种数据结构,比较巧妙的概率型数据结构(probabilistic data structure),特点是高效地插入和查询,可以用来告诉你 “某样东西一定不存在或者可能存在”。

研究内容

💫
核心技术
  • SimplePIR和DoublePIR的整体思路
    • SimplePPIR:Kushilevitz and Ostrovsky 等人基于线性同态加密的单服务器PIR方案的主要开销在于需要密文状态下完成大量的线性同态计算操作。为此本文针对这一点,利用Regev等人的基于LWE的加密算法的优势,使得服务器可以在客户端问询前提前进行预计算很大部分的操作,以便于后续快速计算矩阵向量积 。同时,由于这种预处理操作仅依赖于数据库 以及Regev加密算法的公开参数,因此在后续可以复用,以回答其他客户端发起的问询。在后续的每次问询中,服务器仅需要粗略地计算 字节数据库上的 个32比特整数乘法和加法即可。
    • notion image
    • DoublePIR:本文发现客户端在每次问询时下载的辅助信息hint以及 的加密向量并不是完全使用了。客户端仅需要使用hint中的部分信息以及加密向量中的某一位即可获得其想要问询的结果。为此,本文在一种递归结构下使用了SimplePIR以进一步削减开销。
  • SimplePIR方案具体内容
notion image
notion image
 
  • 通信与计算开销分析:
notion image
  • 预处理阶段分析
notion image
  • 问询阶段分析
notion image
  • DoublePIR具体内容
    • 从SimplePIR中可以看出,想要恢复出客户端问询位置的数据库元素,必须要获得辅助信息矩阵 以及 问询回复向量 ans。
    • DoubelPIR的核心思想就是在SimplePIR生成的辅助信息矩阵 和问询回复向量 ans 上面执行了第二次的SimplePIR,以获得客户端问询位置的数据库元素。进而,客户端不再需要下载很大的辅助信息矩阵了。
notion image
  • 通信与计算开销分析
notion image
  • 私有近似集隶属度数据结构
    • 私有近似集隶属度问题:客户端拥有一个秘密的字符串 ,服务器拥有一个字符串集合 ,客户端想要在不泄露隐私的前提下检测字符串 是否在集合 中。不同于隐私集合求交,此时的服务器字符串集合 是公开的
    • 对于基于哈希函数的布隆过滤器,如果问询字符串 是敌手选择,敌手可以很容易地找到字符串 使得 成立,因此会一直将错误的字符串 识别为集合 中的元素之一
    • 新的数据结构
    • notion image

研究结果

🔬
实验设置
  • 编程语言:GO
🔬
实验结果
  • 通吐量
notion image
 
notion image
  • 通信开销
notion image
  • 通信开销与服务器吞吐量 trade-off
    • notion image
  • 通信开销(数据库大小为
notion image
notion image
 
  • 吞吐量随着 Batch Queries 的大小变化
notion image

总结与展望

💥
SimplePIR的优点:
  • 基于LWE的单服务器PIR方案不需要多项式运算以及傅里叶变换
  • 基于LWE的单服务器PIR方案与之前的基于RLWE单服务器PIR方案不同,不需要服务器去保存每个客户端用于同态加密算法噪声削减的密钥切换辅助信息
  • 基于LWE的单服务器PIR方案仅需要利用Regev加密算法所具备的线性同态性质,而不是全同态。因此,可以使用较小且效率高的格参数
SimplePIR的缺点:
  • 在本文方案中,客户端需要下载一个比较大的hint,对于一个GB大小的数据库,hint的大小大约为10MB。尤其是在客户端仅发送一次数据库问询的情况下,此时下载hint的开销不能分摊到多个客户端。
  • 在本文方案中,在线通信大小约为数百上千字节,是之前部分相关工作的10倍
🎆 思考:
  • 缺陷在于客户端需要从服务器下载一个大小较大的辅助信息hint。因此如何进一步提高效率的一个方向就是优化这个hint的大小。

参考文献

  • Henzinger A, Hong M M, Corrigan-Gibbs H, et al. One Server for the Price of Two: Simple and Fast {Single-Server} Private Information Retrieval[C]//32nd USENIX Security Symposium (USENIX Security 23). 2023: 3889-3905.

🍊 注:由于目前处在课题调研阶段,大部分论文都未去细看源码以及安全证明,后续再补充!!!
☎️
有关这篇论文的任何问题,欢迎您在底部评论区留言,一起交流~
 
  • CCF-A
  • USENIX
  • Waldo: A Private Time-Series Database from Function Secret SharingCommitted Private Information Retrieval
    • Twikoo
    目录