System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及安全计算领域,尤其涉及一种基于预计算模式的可更新隐私集合求交方法和装置。
技术介绍
1、隐私集合求交(private set intersection,psi)是一个特定的安全多方计算(multi-party computation,mpc)问题,它能够保护协议参与双方输入的隐私信息集合,在不泄露除公开信息外任一额外信息的前提下获得参与双方输入的隐私信息集合的交集。在两方隐私集合求交协议中,其中一个参与方拥有一个隐私数据输入集合另一参与方拥有隐私数据输入集合参与双方执行psi协议可以得到隐私数据集合的交集x∩y,且无法得到除交集之外的任何信息。目前已有的适用于小集合对大集合场景下的非平衡psi协议,在执行更新操作时需要重新执行在线阶段,导致额外的计算和通信开销。此外,已有的psi协议都是基于半诚实安全模型,目前尚未有基于恶意敌手安全模型构造的psi协议。显然,在实际应用中,我们需要适用于小集合对大集合场景的,更安全、更高效的两方非平衡隐私集合求交协议。
技术实现思路
1、有鉴于此,本公开提出了一种基于预计算模式的可更新隐私集合求交方法和装置,旨在提供一种更安全高效的隐私集合求交协议。
2、根据本公开的第一方面,提供了一种基于预计算模式的可更新隐私集合求交方法,所述方法包括:
3、初始化公共参数并生成第一私钥;
4、根据所述公共参数初始化第一布隆过滤器和第二布隆过滤器;
5、基于所述第一私钥确定第一公钥并向第二用户端发送所述第
6、接收所述第二用户端发送的差值多项式,所述差值多项式基于所述第二用户端对应的第二隐私数据集合中第二数量个第二隐私数据,以及所述第二用户端的第二数量个第二公钥确定,所述第二数量个第二公钥根据所述第二用户端基于公共参数生成的第二数量个第二私钥确定;
7、根据所述差值多项式确定所述第一用户端对应的第一隐私数据集合中每个所述第一隐私数据的第一共享密钥,并插入所述第一布隆过滤器后向所述第二用户端发送,以通过所述第二用户端根据所述第一布隆过滤器和第二共享密钥计算原始隐私数据交集,所述第二共享密钥根据所述第二私钥和所述第一公钥确定;
8、响应于所述第一用户端进行隐私数据更新,确定更新后隐私数据集合为第三隐私数据集合;
9、根据所述差值多项式确定所述第三隐私数据集合中每个所述第三隐私数据的第一共享密钥,并插入所述第二布隆过滤器后向所述第二用户端发送,以通过所述第二用户端根据所述第二布隆过滤器和第二共享密钥计算更新隐私数据交集。
10、在一种可能的实现方式中,所述公共参数中包括第一参数、第二参数、第三参数、第四参数、第五参数和第六参数,所述第一参数为所述第一布隆过滤器和/或所述第二布隆过滤器的参数,所述第二参数为生成元,所述第三参数为大于2的素数,所述第四参数为有限域参数,所述第五参数和所述第六参数为理想置换参数。
11、在一种可能的实现方式中,所述根据所述公共参数初始化第一布隆过滤器和第二布隆过滤器,包括:
12、基于所述第一参数初始化第一长度的第一布隆过滤器,所述第一长度根据所述第一隐私数据集合中包括的第一隐私数据的第一数量确定;
13、基于所述第一参数初始化第二长度的第二布隆过滤器,所述第二长度根据所述第三隐私数据集合中包括的第三隐私数据的第三数量确定。
14、在一种可能的实现方式中,所述基于所述第一私钥确定第一公钥并向第二用户端发送所述第一公钥,包括:
15、根据公式pa=gαmod p计算第一公钥,其中pa为第一公钥,g为第二参数,α为第一私钥,p为第三参数;
16、向所述第二用户端发送所述第一公钥。
17、在一种可能的实现方式中,所述根据所述差值多项式确定所述第一用户端对应的第一隐私数据集合中每个所述第一隐私数据的第一共享密钥,并插入所述第一布隆过滤器后向所述第二用户端发送,包括:
18、根据公式计算所述第一用户端对应的第一隐私数据集合中每个所述第一隐私数据的第一共享密钥,其中为第一隐私数据的第一共享密钥,α为第一私钥,p为第三参数,π为第五参数,xi为第一隐私数据,p为差值多项式,h表示第一哈希函数;
19、将每个所述第一隐私数据的第一共享密钥插入所述第一布隆过滤器后向所述第二用户端发送。
20、在一种可能的实现方式中,所述根据所述差值多项式确定所述第一用户端对应的第一隐私数据集合中每个所述第一隐私数据的第一共享密钥,并插入所述第一布隆过滤器后向所述第二用户端发送,包括:
21、根据公式计算所述第一用户端对应的第一隐私数据集合中每个所述第一隐私数据的第一候选密钥,其中为第一隐私数据的第一候选密钥,α为第一私钥,p为第三参数,π为第五参数,xi为第一隐私数据,p为差值多项式,h表示第一哈希函数;
22、通过第二哈希函数对所述第一候选密钥进行哈希处理,得到对应的第一共享密钥;
23、将每个所述第一隐私数据的第一共享密钥插入所述第一布隆过滤器后向所述第二用户端发送。
24、在一种可能的实现方式中,所述根据所述差值多项式确定所述第三隐私数据集合中每个所述第三隐私数据的第一共享密钥,并插入所述第二布隆过滤器后向所述第二用户端发送,包括:
25、根据公式计算所述第一用户端对应的第三隐私数据集合中每个所述第三隐私数据的第一共享密钥,其中为第三隐私数据的第一共享密钥,α为第一私钥,p为第三参数,π为第五参数,ul为第三隐私数据,p为差值多项式,h表示第一哈希函数;
26、将每个所述第三隐私数据的第一共享密钥插入所述第二布隆过滤器后向所述第二用户端发送。
27、在一种可能的实现方式中,所述根据所述差值多项式确定所述第三隐私数据集合中每个所述第三隐私数据的第一共享密钥,并插入所述第二布隆过滤器后向所述第二用户端发送,包括:
28、根据公式计算所述第一用户端对应的第三隐私数据集合中每个所述第三隐私数据的第一候选密钥,其中为第三隐私数据的第一候选密钥,α为第一私钥,p为第三参数,π为第五参数,ul为第三隐私数据,p为差值多项式,h表示第一哈希函数;
29、通过第二哈希函数对所述第一候选密钥进行哈希处理,得到对应的第一共享密钥;
30、将每个所述第三隐私数据的第一共享密钥插入所述第二布隆过滤器后向所述第二用户端发送。
31、根据本公开的第二方面,提供了一种基于预计算模式的可更新隐私集合求交方法,所述方法包括:
32、初始化公共参数并生成第二数量个第二私钥,所述第二数量为所述第二用户端对应第二隐私数据集合中的第二隐私数据的数量;
33、根据每个所述第二私钥计算对应的第二公钥;
34、接收所述第一用户端发送的第一公钥,并根据所述第一公钥和每个所述第二私钥计算对应的第二共享密钥;
35、根据每个所述第二本文档来自技高网...
【技术保护点】
1.一种基于预计算模式的可更新隐私集合求交方法,应用于第一用户端,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述公共参数中包括第一参数、第二参数、第三参数、第四参数、第五参数和第六参数,所述第一参数为所述第一布隆过滤器和/或所述第二布隆过滤器的参数,所述第二参数为生成元,所述第三参数为大于2的素数,所述第四参数为有限域参数,所述第五参数和所述第六参数为理想置换参数。
3.根据权利要求2所述的方法,其特征在于,所述根据所述公共参数初始化第一布隆过滤器和第二布隆过滤器,包括:
4.根据权利要求2或3所述的方法,其特征在于,所述基于所述第一私钥确定第一公钥并向第二用户端发送所述第一公钥,包括:
5.根据权利要求2-4中任意一项所述的方法,其特征在于,所述根据所述差值多项式确定所述第一用户端对应的第一隐私数据集合中每个所述第一隐私数据的第一共享密钥,并插入所述第一布隆过滤器后向所述第二用户端发送,包括:
6.根据权利要求2-4中任意一项所述的方法,其特征在于,所述根据所述差值多项式确定所述第一用户端对
7.根据权利要求2-6中任意一项所述的方法,其特征在于,所述根据所述差值多项式确定所述第三隐私数据集合中每个所述第三隐私数据的第一共享密钥,并插入所述第二布隆过滤器后向所述第二用户端发送,包括:
8.根据权利要求2-6中任意一项所述的方法,其特征在于,所述根据所述差值多项式确定所述第三隐私数据集合中每个所述第三隐私数据的第一共享密钥,并插入所述第二布隆过滤器后向所述第二用户端发送,包括:
9.一种基于预计算模式的可更新隐私集合求交方法,应用于第二用户端,其特征在于,所述方法包括:
10.根据权利要求9所述的方法,其特征在于,所述公共参数中包括第一参数、第二参数、第三参数、第四参数、第五参数和第六参数,所述第一参数为所述第一布隆过滤器和/或所述第二布隆过滤器的参数,所述第二参数为生成元,所述第三参数为大于2的素数,所述第四参数为有限域参数,所述第五参数和所述第六参数为理想置换参数。
11.根据权利要求10所述的方法,其特征在于,所述根据每个所述第二私钥计算对应的第二公钥,包括:
12.根据权利要求10或11所述的方法,其特征在于,所述根据所述第一公钥和每个所述第二私钥计算对应的第二共享密钥,包括:
13.根据权利要求10或11所述的方法,其特征在于,所述根据所述第一公钥和每个所述第二私钥计算对应的第二共享密钥,包括:
14.根据权利要求10-13中任意一项所述的方法,其特征在于,所述根据每个所述第二公钥和所述第二隐私数据集合计算差值多项式,包括:
15.一种基于预计算模式的可更新隐私集合求交装置,应用于第一用户端,其特征在于,所述装置包括:
16.一种基于预计算模式的可更新隐私集合求交装置,应用于第二用户端,其特征在于,所述装置包括:
17.一种电子设备,其特征在于,包括:
18.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至14中任意一项所述的方法。
...【技术特征摘要】
1.一种基于预计算模式的可更新隐私集合求交方法,应用于第一用户端,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述公共参数中包括第一参数、第二参数、第三参数、第四参数、第五参数和第六参数,所述第一参数为所述第一布隆过滤器和/或所述第二布隆过滤器的参数,所述第二参数为生成元,所述第三参数为大于2的素数,所述第四参数为有限域参数,所述第五参数和所述第六参数为理想置换参数。
3.根据权利要求2所述的方法,其特征在于,所述根据所述公共参数初始化第一布隆过滤器和第二布隆过滤器,包括:
4.根据权利要求2或3所述的方法,其特征在于,所述基于所述第一私钥确定第一公钥并向第二用户端发送所述第一公钥,包括:
5.根据权利要求2-4中任意一项所述的方法,其特征在于,所述根据所述差值多项式确定所述第一用户端对应的第一隐私数据集合中每个所述第一隐私数据的第一共享密钥,并插入所述第一布隆过滤器后向所述第二用户端发送,包括:
6.根据权利要求2-4中任意一项所述的方法,其特征在于,所述根据所述差值多项式确定所述第一用户端对应的第一隐私数据集合中每个所述第一隐私数据的第一共享密钥,并插入所述第一布隆过滤器后向所述第二用户端发送,包括:
7.根据权利要求2-6中任意一项所述的方法,其特征在于,所述根据所述差值多项式确定所述第三隐私数据集合中每个所述第三隐私数据的第一共享密钥,并插入所述第二布隆过滤器后向所述第二用户端发送,包括:
8.根据权利要求2-6中任意一项所述的方法,其特征在于,所述根据所述差值多项式确定所述第三隐私数据集合中每个所述第三隐私数...
【专利技术属性】
技术研发人员:梁蓓,覃悦,
申请(专利权)人:北京雁栖湖应用数学研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。