理论基础:隐私求交PSI

1. PSI定义 

  • 安全求交集:Private Set Intersection(PSI)

  • 安全要求:

    • Alice不能拿到Bob中任何非交集的元素。(Alice会尝试任何方法获取Bob的非交集元素,但不会成功)。

    • 安全可证明。        

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

  • 仅对于交集:

    • 交集可以被两方或者一方看见。
  • 仅对于两方:

    • Alice和Bob。
  • 仅对于半诚实安全:

    • 如果两方中存在攻击者,那么这个攻击者首先需要严格遵守和执行协议。其次可能会对对方的数据感兴趣而采取线下分析等操作以推测出对方的隐私信息,但攻击者无法做到。
  • 挑战1:隐藏非交集元素(hiding)

    • 密码学安全定义的“隐藏”。
    • 需要向非交集的元素中添加某种噪音以防止被穷举和计算出来。
  • 挑战2:计算交集元素(comparing)

    • 当两个元素相等时,他们的相等性计算结果不能因为添加噪音而改变。
  • 挑战3:效率高(efficiency)

    • 提出的PSI协议应该适用大规模的应用

3. 方法1:基于哈希的PSI(不安全的PSI协议,仅作为教学)

  • 基础思想:先哈希再比较

    • 哈希密码算法

      • 单陷门属性。
      • 极低的碰撞概率
  • 隐藏非交集元素:由单陷门加密哈希函数保证。

  • 计算交集元素:两个相同的元素通过哈希输出应该是相同的。

  • 效率:哈希算法速度快。

  • 问题:

    • 高熵的输入数据,像是无穷长度字符串是没有任何问题的。
    • 然而,在现实世界中输入的元素是低熵的比如身份证号,手机号等。
    • 上述低墒元素完全可以通过穷举进行攻击,获取数据。

4. 方法2:基于Diffie-Hellman的密钥交换

  • DH 密钥交换PSI[3]:

    • 基础思想:各自加密然后交换。

    • 隐藏非交集元素:加密非交集元素。

    • 计算交集元素:交换属性。

    • 效率:

      • 与元素个数是线性关系。
      • 任然是主流PSI的应用。
      • 因为DH原语的提升会直接提升PSI,例如椭圆曲线。

5. DH密钥交换

  • 离散对数问题(DLP):给出p,g,x,y四个大的正整数。假设满足g^x=y\ mod\ p其中p是一个大素数,如果给出了y,g,p,如何找到x是一个困难问题。

    • 计算g^x\ mod\ p是简单的。

      • 满足高效性。
    • 但是通过y,g,p寻找x是困难的。

      • 满足隐藏非交集元素。
      • 基于DH的PSI,其假设是基于DLP问题的。

    •  g^{xy}\ mod\ pg^{yx}\ mod\ p是相同的(交换)。

      • 计算交集元素。
    •  g,x,y,p需要满足密码学中的一定苛刻条件才能满足困难问题密码。

6. 方法3:基于OPRF的PSI

  • 协议[5]

    • 发送者计算一个加密函数,然后将结果发送给接收者。
    • 接收者通过与发送者交互计算一个相同的加密函数。
    • 接收者比较发送者的输出结果与自己的结果。
  • 隐藏非交集元素:

    • 由加密函数保证:发送者不会知道接收者的数据,接收者不会知道加密函数。
  • 计算交集元素:

    • 通过加密函数后的数据可以进行计算。
  • 效率:

    • 大多数为高效的密码学操作,像是哈希或者对称密钥加密,只有小部分是非对称密钥操作。

7. OPRF(Oblivious Pseudo-Random Functions)

  • OPRF:发送者给定一个密钥 k,输入接收者的元素。

    • 计算F_k(e)
    • 接收者知道 F_k(e)的输入,但不能知道密钥 k
    • 发送者不能知道接收者的输入和输出。
  • OPRF for PSI

    • 接收者在自己的数据集上用发送者的密钥 k评估OPRF。

      • 接收者不能知道发送者的密钥 k。、
      • 发送者不能知道接收者的数据集。
    • 发送者在自己的数据集上评估OPRF并将结果发送给接收者。

    • 接收者通过将自己的数据结果与发送者的结果进行对比。

    • 安全:OPRF。

    • 性能:高计算开销,因为每个数据都需要对比所以需要 n^2次。

    • 使用布谷鸟哈希和简单哈希提高性能:

      • 接收者通过布谷鸟哈希将他们的元素插入到哈希表中。
      • 发送者通过简单哈希将他们的元素插入到哈希表中。
      • OPRF的计算和比较只需要对哈希表中的同一个栈进行比较。
    • KKPT PSI 协议

    • OPRF大约需要 1.5n次计算。
    • 接收者需要执行 O(n)次比较。

8. 两方半诚实安全PSI

  • 应用:

    • 黑/白名单,撞库等等。
  • 除了应用以外还可以考虑哪些?

    • 交集使用?
    • 多方PSI?
    • 计算模型?
    • 安全模型?
    • 非对称PSI?
  • 交集使用

    • 动机:
      • 交集可能不属于PSI的参与方
        • 数据可能属于其他人。
        • 举例:
          • Alice在银行A和银行B用她自己的身份证分别都开了一个账户。
          • 如果两个银行进行PSI发现了账户Alice是可以的吗?
            • 取决于Alice是否同意。
    • 挑战:交集的可用不可见
      • case1:交集是秘密的,但交集的个数可以被使用。
        • 方法:
          • PHE+多项式评估[8]
          • 洗牌后的基于DH的PSI[20]
      • case2:交集是秘密的,我们需要计算的交集里的数据的附带信息是允许的。
        • 方法:
          • 基于电路的PSI[9]
          • 使用半同态的DH-PSI[20]
      • case3:交集是秘密的,但我们需要使用。
        • 方法:
          • FHE-PSI和差分隐私。[10]
          • DH-PSI和差分隐私
  • 多方PSI

    • 常规多方PSI
      • 动机:
        • N方参与。
      • 挑战:
        • 通过使用两两交集求多方交集,会导致两方的交集被看到,这不符合只有N方交集才能被看到的定义。
      • 方法:
        • PHE+多项式表示[8]
        • OPPRF[11]
    • 特殊多方PSI

      • 动机:
        • 想让其中两方的交集被其他的特殊方看到。
      • 挑战:
        • 情况不固定。
        • 需要定制解决方案。
      • 方法:
        • 基于需求定制PSI协议。
  • 计算模型

    • 单陷门模型:
      • 动机:
        • 只有一方可以看到交集。
      • 例如:
        • 一个客户提交自己的联系人列表给一个新的社交媒体服务。
        • 只有客户能看到交集,服务端不应该看到交集。
      • 方法:
        • 基于OPRF的PSI
    • 互惠模型:
      • 动机:
        • 两方都能看到交集。
      • 例如:两个银行想要找到共同的用户。
      • 方法:
        • DH-PSI
    • Outsourced/Delegated/Server-Aided PSI:

      • 动机:
        • 两方执行协议并且需要第三方帮助,但是第三方不可信。
      • 挑战:
        • 第三方帮助完成计算但不应该看到输出结果。
      • 方法:
        • 多项式表示+PHE+PRF[12]
  • 安全模型

    • 半诚实安全模型
      • 动机:
        • 简单,高效
        • 大多数隐私计算PSI模型都是半诚实的模型。
      • 挑战:
        • 安全假设太强,也就意味着安全模型比较弱。
      • 方法:
        • 基于DH的PSI,OPRF[1][2][3][5]。
    • 恶意PSI
      • 动机:
        • 提高安全。
        • 该类安全假设更符合实际情况。
        • 攻击人可以采取任意攻击。
      • 挑战:
        •  更多的计算和通信开销。
      • 方法:
        • 额外认证的PSI协议。[7][13]
  • 非对称PSI

    • 动机:
      • 有一方的元素比另一方多很多。
    • 例如,客户和服务器模型。
      • 大多数实际应用场景都需要非对称PSI。
    • 挑战:
      • 常规的PSI对于非对称PSI的应用效率会非常差。
    • 方法:
      • ECC-OPRF-PSI[21]
      • FHE-PSI[14][15]

9. PSI最新进展

  • 优化离线片段:
    • 使用最新的OT[17]
    • 将OT换位VOLE[6]
  • 将布谷鸟哈希替换成新的:
    • PaXos[13]
    • OKVS[5]
  • 支持交集上的安全计算:
    • OPRF[9]
  • 用差分隐私做PSI[10]
  • 亿级计算
    • 高带宽
    • 高算力
  • 分钟级别完成
  • 最实用的隐私计算方法之一

10. PSI和其他隐私计算技术结合

  • PSI+DP
    • 方法:
      • FHE-PSI+DP(Very inefficient)
      • DH-PSI+DP
  • PSI+MesaTEE

11. 参考文献

 [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, https://github.com/zjshen14/mesatee  

[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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值