多方隐私求交——基于OPPRF的MULTI-PARTY PSI

目录

一、问题说明:

二、基础知识:

1、OPRF:不经意伪随机函数

2、OPPRF

3、Zero-Sharing

 三、Multi-party PSI


一、问题说明:

 Alice拥有数据X,Bob拥有数据Y,Charlic拥有数据Z,相求X,Y,Z的交集,三方除了交集外的信息不可知。

二、基础知识:

1、OPRF:不经意伪随机函数

论文导读

 Alice有一些输入,Bob有一个key。不经意PRF允许Alice将自己的输入与Bob的key结合经过一系列运算转变成相对应的数。在这个过程中,Alice不能知道Bob的key,Bob也不知道最后的结果F(key,x)。每一个输入xi都可以计算出一个不同于其他输入的数,这些数就可以被看作伪随机数。这里不做详细介绍,只需要知道输入和输出即可,中间的协议可理解成第三方。

2、OPPRF

 这里说一种基于多项式的方案,这里详细介绍一下这个协议。

·总体功能:

Alice想要根据自己的x获得对应的y,Bob拥有x-y的对应关系。其中Alice能告诉Bob自己的x以及结果y,Bob不能告诉Alice数据集X。

·如图所示:

Alice要查询x,Bob拥有数据点X={(x1,y1),(x2,y2)...},如果x=xi,Alice查询到对应的yi,否则获得一个随机数。

·这里说一种基于多项式的方案,这里详细介绍一下这个协议。​​​​​​​

(1)Receives将自己点中的x输入OPRF协议获得F(x)。而Sender获得k,也就有了F。

(2)Sender拥有图中蓝色的点X={(x1,y1),(x2,y2)...},将原来的yi替换为zi=yi⊕F(xi),根据数据{(x1,z1),(x2,z2)...}建立多项式P(x),可以根据拉个郎日差值法。将P(x)发送给R。

(3)R根据自己的x,计算出对应的P(x)。

(4)R输出P(x)⊕F(x)==========>yi⊕F(xi)⊕F(x),可以看出如果x=xi,则结果为yi。

3、Zero-Sharing

简单理解就是每个人拥有一个数最后所有数加起来为0。(0的秘密分享) 

具体原理

 三、Multi-party PSI

 (1).每个人拥有一个数据集X,和一个0秘密分享对应的集合sh,(X,sh)={(x1,sh1),...,(xn,shn)}, 将集合发送给OPPRF协议,在这参与者P_i相当于Bob,P_0相当于 Alice。

 (2).通过OPPRF协议可以获得sh集合。如果集合最后异或结果为0,则说明是交集。

注意:这里一定要和OPPRF协议对应起来,sh等价于y。Zero-sharing还能起到验证的作用,如果结果不正确,可以诊断出来是哪一方的sh出了问题。

参考:

Practical Multi-Party Private Set Intersection from Symmetric-Key Techniques

英文视频讲解

连载:batch-OPPRF​​​​​​​

2021—cPSI/QPSI

  • 4
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值