隐私计算-基础理论-安全求交集PSI-「隐私计算基础理论」安全求交集和匿踪查询

56 阅读10分钟

Ref: 「隐私计算基础理论」安全求交集和匿踪查询

安全求交集(PSI)定义

  • 安全求交集:Private Set Intersection (PSI)
  • Alice 拥有集合 X,Bob 拥有集合 Y。经过 PSI 计算后,Alice 得知 X ∩ Y,且无法得知其他信息
    • Alice 无法知晓 Bob 不属于 X ∩ Y 的元素
    • 若 Alice 试图知晓 Bob 不匹配的数据,也无法成功
  • 可证明的安全性

image.png

PSI的功能和分类

最常用基础的PSI: Two-Party Semi-Honest PSI

  • 仅针对交集
    • 交集被披露,非交集被保密
  • 仅针对两方
    • Alice 和 Bob
  • 仅半诚实安全
    • 攻击者严格遵循协议,但对另一方的机密信息感到好奇

  • 挑战 1:隐藏非交集元素(hiding)
    • 需具备密码学意义上安全的 “隐藏” 特性。当两个元素不相等时,需附加某种 “噪声”,使得不匹配的元素无法被穷举计算。
  • 挑战 2:计算交集元素(comparing)
    • 当两个元素相等时,其相等性应能以某种方式被披露。
  • 挑战 3:效率高(efficiency)
    • PSI 协议需能适用于大规模应用场景,具备实用性。

Method1 A Naive PSI based on Hash

  • 基本思想:哈希后匹配(hash then match)
    • 密码学哈希(Cryptographic hash)
      • 单向性(One-way property)
      • 抗碰撞性(Collision resistance)
  • 隐藏性(Hiding):单向密码学哈希函数
  • 可对比性(Comparing):相同输入的哈希输出相同
  • 高效性(Efficiency):哈希运算速度快
  • 问题(Problem)
    • 高熵输入数据集(如无限长度的随机字符串)是 “可行” 的
    • 但在大多数实际应用中,输入数据集是低熵的,如身份证号、手机号等
      • 易受暴力破解攻击(Vulnerable to brute-force attack)

image.png

Method2 PSI Based on Diffie-Hellman Key Exchange

  • Diffie-Hellman (DH) 密钥交换 PSI[3]
    • 基本思想:利用交换性的 “双重加密”
    • 隐藏性(Hiding):“加密”隐藏元素
    • 可对比性(Comparing):交换性
    • 高效性(Efficiency)
      • 通信成本呈线性
      • 仍是 PSI 的主流实现
      • 在椭圆曲线等密码原语上有诸多增强
Diffie-Hellman Key Exchange
  • 离散对数问题(Discrete Logarithm Problem, DLP):给定四个大正整数 p、g、x 和 y,假设 g^x ≡ y mod p(其中 p 是大素数),已知 y、g、p,如何找到 x 是一个 “困难问题”
    • 计算 g^x mod p 是高效的

      • 高效性(Efficiency)
    • 已知 y、g、p 时找到 x 是困难的

      • 隐藏性(Hiding)
      • 基于 DH 的 PSI 所使用的实际假设基于 DLP
    • g^xy mod p 等于 g^yx mod p(交换性)

      • 可对比性(Comparing)
    • g、x、p 和 y 需要满足一系列密码学条件,才能使这个困难问题具备密码学难度

image.png

Method3 OPRF-based PSI

  • 协议(Protocols)[5]
    • 发送方(Sender)在其集合上计算一个 “秘密” 函数,将结果发送给接收方
    • 接收方(Receiver)通过与发送方交互,在该 “秘密” 函数上计算自己的集合
    • 接收方将从发送方收到的结果与自己的结果进行对比
  • 隐藏性(Hiding)
    • “秘密” 函数:发送方无法知晓接收方的数据,接收方无法知晓 “秘密” 函数
  • 可对比性(Comparing)
    • 经过 “秘密” 函数处理后的数据可进行对比
  • 高效性(Efficiency)
    • 大多数操作是哈希、对称密钥加密等高效密码学操作,仅少量公钥基础设施(PKI)操作
Oblivious Pseudo-Random Functions (OPRF)
  • OPRF:给定发送方(Sender)的密钥 k 和接收方(Receiver)的输入元素 e
    • 计算 F_k​(e)
    • 接收方(Receiver)知晓 F_k​(e) 的输出,但不知晓 k
    • 发送方(Sender)对输出或输入元素 e 一无所知
  • OPRF 用于 PSI
    • 接收方(Receiver)使用发送方(Sender)的 k 对其集合执行 OPRF 运算
      • 接收方(Receiver)不知晓发送方的 k
      • 发送方(Sender)不知晓接收方的集合
    • 发送方(Sender)对自己的集合执行 OPRF 运算,并将结果发送给接收方
    • 接收方(Receiver)通过对比发送方的结果和自己的 OPRF 结果,找到交集

image.png

  • 安全性:OPRF
  • 性能:计算与通信代价高
Cuckoo Hashing and Simple Hashing
  • 接收方(Receiver)使用布谷鸟哈希(cuckoo hash)将其元素插入哈希表
  • 发送方(Sender)使用简单哈希将其元素插入哈希表
  • 减少了 OPRF 运算和对比的次数

image.png

KKRT PSI Protocol

image.png

交集使用

  • 动机
    • PSI 参与方之间,交集可能 “并非” 常识
      • 交集中的数据属于他人
      • 例如,Alice 在银行 A 和银行 B 都有账户,且均用其唯一 ID 注册
      • 银行 A 和 B 通过 PSI 发现 Alice 是共同客户,这样做是否可行?
        • 视情况而定…
  • 挑战:交集“可用不可见”

  • 场景 1:交集是保密的,但基数可使用
    • 基数是交集中元素的数量
    • 仅基数向授权方披露
  • 方法
    • PHE + 多项式求值 [8]
    • 基于 DH 且带洗牌的 PSI [20]

  • 场景 2:交集是保密的,需要对秘密交集进行后续计算
    • 交集是 “加密” 的,与 “加密” 交集相关的数据用于后续安全计算
    • 例如,带交集 payload 的 PSI,其中交集本身作为中间结果被隐藏
  • 方法
    • 基于电路的 PSI[9]
    • 带置换和 PHE 的 DH-PSI[20]

  • 场景 3:交集是保密的,但仍需被使用
  • 方法
    • FHF-PSI + 差分隐私[10]
    • DH-PSI + 差分隐私

多方PSI

  • 常规多方 PSI

    • 动机
      • 需要 N 方的交集
    • 挑战
      • 任意两方之间的交集不能被披露
  • 方法

    • PHE + 多项式表示[8]
    • OPPRF[11]

  • 特殊多方 PSI
    • 动机
      • 某些两方之间的交集可能需要计算并披露给特定方
    • 挑战
      • 需求因情况而异
      • 需要定制解决方案
  • 方法
    • 基于需求定制的 PSI 协议

计算模型

  • 单向模型[1][2][5]
    • 动机
      • 仅一方应知晓交集
      • 例如,客户向新的社交媒体服务提交联系人列表,客户知晓集合交集,服务端除了客户输入规模外一无所知
    • 方法
      • 基于 OPRF 的 PSI 等
  • 双向模型[3]
    • 动机
      • 双方都应知晓交集
      • 例如,查找两家银行之间的共同用户
    • 方法
      • DH-PSI 等

  • 外包 / 委托 / 服务器辅助 PSI:两个客户端通过不可信第三方的帮助,对其外包数据执行 PSI

    • 动机:参与者无法完成 PSI 计算,例如资源受限的设备

    • 挑战:第三方仅辅助计算,不获取最终结果

    • 第三方可能由大型云服务提供商提供

      • 通常假设云与客户端不 collusion
    • 第三方应对 PSI 结果一无所知

    • 通常的模式是云协助进行 PSI,得到加密的匹配结果并发送给客户端,然后客户端解密匹配结果

  • 方法

    • 多项式表示 + PHE + PRF [12]

安全模型

  • 半诚实安全 PSI
    • 动机
      • 简单、高效
      • 大多数已实现的 PSI 协议都是半诚实的
    • 挑战
      • 安全假设过强,仅考虑被动攻击者,即攻击者严格遵循协议
  • 恶意安全 PSI
    • 动机
      • 提升安全性
      • 更贴合实际的安全假设,考虑恶意攻击者
      • 恶意攻击者定义
    • 挑战
      • 计算和通信开销更大
    • 方法
      • 带额外验证的 PSI 协议 [7][13]

非对称PSI

  • 动机
    • 一方持有的元素数量远多于另一方
    • 例如,客户端 - 服务器场景
    • 大多数实际应用可能需要非平衡 PSI
  • 挑战
    • 常规 PSI 对于非平衡 PSI 效率不高
  • 方法
    • ECC-OPRF-PSI [21]
      • 缓存较大的集合,在匹配前仅 “计算” 较小的集合
    • FHE PSI [14][15]

PSI最新进展

  • 优化离线阶段
    • 使用最新的 OT [17]
    • 用 VOLE 替代 OT [6]
  • 用新原语替代布谷鸟哈希
    • 引入字符串探测与异或(PaXos)[13]
    • 引入 Oblivious 键值存储(OKVS)[5]
  • 支持对交集的安全计算
    • 可编程 OPRF [9]
    • 带差分隐私(DP)的 PSI [10]
  • 亿级计算
    • 高带宽
    • 高算力
  • 分钟级别完成
  • 最实用的隐私计算方法之一

PSI与隐私计算的结合

安全求交集 + 差分隐私

  • 什么是差分隐私(Differential Privacy, DP)?
    • 通俗解释:DP 是一种添加噪声的方法,使得难以判断某个元素是否在集合中。
  • 场景 1:PSI 交集使用
    • 动机:向交集添加 DP 噪声,使交集在统计上是 “正确的”,但交集中的任意单个元素是否为双方共有是 “DP 困难” 的
      • 交集中的单个元素受差分隐私保护
      • 联合营销
    • 挑战:交集是加密的,但一方需要在不破坏保密性的前提下,正确地向交集中添加假阳性和假阴性元素
    • 方法
      • FHE-PSI + DP [10]
        • 效率很低
      • DH-PSI + DP
  • 场景 2:提升性能 [18]
    • 用 DP 减少填充长度

安全求交集 + 可信执行环境

  • MesaTEE [19]
    • 基于 TEE 的 PSI 开源解决方案
      • TEE 生成盐值(salt)
      • 参与方用盐值对数据进行哈希以用于 PSI
      • PSI 在 TEE 中完成
      • 结果发送回参与方
    • 简单、高效且灵活
    • 不同于密码学解决方案,信任根在 TEE 中

Reference

  • [1] Benny Pinkas, Thomas Schneider, Michael Zohner. Faster Private Set Intersection based on OT Extension, USENIX Security 2014
  • [2] Benny Pinkas, Thomas Schneider, Michael Zohner. Scalable Private Set Intersection Based on OT Extension, ACM Transactions on Privacy and Security, 2018
  • [3] Rakesh Agrawal, Alexandre V. Evfimievski, and Ramakrishnan Srikant. Information sharing across private databases. Proceedings of the 2003 ACM SIGMOD International Conference on Management of Data, 2003
  • [4] Emiliano De Cristofaro and Gene Tsudik. Practical private set intersection protocols with linear computational and bandwidth complexity, IACR Cryptology ePrint Archive, 2009:491, 2009
  • [5] Vladimir Kolesnikov, Ranjit Kumaresan, Mike Rosulek, and Ni Trieu. Efficient batched oblivious PRF with applications to private set intersection. Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security,2016
  • [6] Peter Rindal and Phillipp Schoppmann. VOLE-PSI: fast OPRF and circuit-psi from vector-ole, Advances in Cryptology - EUROCRYPT 2021, 2021
  • [7] Peter Rindal and Srinivasan Raghuraman. Blazing fast PSI from improved OKVS and subfield VOLE. IACR Cryptology ePrint Archive, 2022:320, 2022
  • [8] Lea Kissner and Dawn Song, Privacy-Preserving Set Operations, Crypto 2005.
  • [9] Benny Pinkas, Thomas Schneider, Oleksandr Tkachenko, and Avishay Yanai. Efficient circuit-based PSI with linear communication. Advances in Cryptology - EUROCRYPT 2019
  • [10] Bailey Kacsmar, Basit Khurram, Nils Lukas, Alexander Norton, Masoumeh Shafieinejad, Zhiwei Shang, Yaser Baseri, Maryam Sepehri, Simon Oya, Florian Kerschbaum, Differentially Private Two-Party Set Operations, 2020 IEEE European Symposium on Security and Privacy.
  • [11] Vladimir Kolesnikov, Naor Matania, Benny Pinkas, Mike Rosulek, and Ni Trieu. Practical multi-party private set intersection from symmetric-key techniques. Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security, 2017
  • [12] Abadi, Aydin, Sotirios Terzis, Roberto Metere, and Changyu Dong. Efficient Delegated Private Set Intersection on Outsourced Private Datasets, IEEE Transactions on Dependable and Secure Computing, 2017.
  • [13] Benny Pinkas, Mike Rosulek, Ni Trieu, and Avishay Yanai. PSI from paxos: Fast, malicious private set intersection. Advances in Cryptology - EUROCRYPT 2020
  • [14] Hao Chen, Kim Laine, Peter Rindal, Fast Private Set Intersection from Homomorphic Encryption, ACM CCS 2017
  • [15] Hao Chen, Zhicong Huang, Kim Laine, Peter Rindal, Labeled PSI from Fully Homomorphic Encryption with Malicious Security, CCS 2018
  • [16] Giuseppe Ateniese, Emiliano De Cristofaro, Gene Tsudik. (If) Size Matters: Size-Hiding Private Set Intersection, PKC 2011
  • [17] Benny Pinkas, Mike Rosulek, Ni Trieu, and Avishay Yanai. Spot-light: Lightweight private set intersection from sparse OT extension. Advances in Cryptology - CRYPTO 2019
  • [18] Adam Groce, Peter Rindal, and Mike Rosulek, Cheaper Private Set Intersection via Differentially Private Leakage, PoPETS 2019
  • [19] MesaTEE, github.com/zjshen14/me…
  • [20] Mihaela Ion, Ben Kreuter, Ahmet Erhan Nergiz, Sarvar Patel, Shobhit Saxena, Karn Seth, Mariana Raykova, David Shanahan, Moti Yung, On Deploying Secure Computing: Private Intersection-Sum-with-Cardinality, EuroS&P, 2020
  • [21] Amanda Cristina Davi Resende and Diego de Freitas Aranha, Faster Unbalanced Private Set Intersection, FC2018