一种隐私保护的集合交集两方安全计算方法及系统技术方案

技术编号:20917788 阅读:23 留言:0更新日期:2019-04-20 09:57
本发明专利技术公开了一种隐私保护的集合交集两方安全计算方法及系统,该方法的参与者有两个;每个参与者拥有自己的集合,参与双方自己除了知道自己集合中的元素外,并不能获得别人集合中的元素信息;参与双方通过两方安全计算;最终获得双方集合交集元素信息。本发明专利技术首先进行初始化;然后协商公共参数;接着保密发送一方保密拥有的集合;接着保密发送另一方保密拥有的集合;然后计算集合交集索引;最后公布交集。本发明专利技术提到的隐私保护的集合交际两方安全计算方法特别适用于通信双方安全传输数据,并且具有安全性高、计算复杂性低,具有很高的实用性。

A Privacy-Protected Collective Intersection Two-Party Security Computing Method and System

The invention discloses a privacy-preserving set intersection two-party security calculation method and system, in which two participants are involved; each participant has its own set, and the participants themselves can not obtain the element information in other's set except that they know the elements in their own set; the participants through two-party security calculation; and finally, the information of the elements intersected by the two participants is obtained. \u3002 The invention firstly initializes, then negotiates common parameters, secrecy sends a set owned by one party, secrecy sends a set owned by another party, secrecy calculates the set intersection index, and finally publishes the intersection. The privacy-preserving two-party security calculation method of collective communication mentioned in the present invention is especially suitable for both sides of communication to transmit data safely, and has high security, low computational complexity and high practicability.

【技术实现步骤摘要】
一种隐私保护的集合交集两方安全计算方法及系统
本专利技术属于计算机网络通信中数据安全和隐私保护领域,涉及一种隐私保护的集合交集计算方法。具体涉及一种在不泄露双方私有集合元素信息的前提下,结合多项式性质和离散对数困难问题的隐私保护下集合交集计算方法。
技术介绍
随着物联网、移动计算、云计算等技术的快速兴起及迅猛发展,人们的生活方式正在发生巨大改变。这些新的数据处理技术为整个杜会提供了极大的便利。与此同时,隐私信息和保密数据的泄露事件也在频繁发生,制约着新型数据处理技术的应用和普及。因此,大数据时代的隐私保护问题成为人们关注的焦点。在大数据隐私保护领域中,安全多方计算(Securemulti-partycomputation,SMC)是其中一种很重要的技术手段,安全多方计算是密码学的基础问题之一,它考虑的问题为:n个相互不信任的参与方共同计算某函数f(x1,...,xn)=(o1,...on),每个参与方pi拥有秘密输入xi,通过计算获取其输出oi但不能获知任何其他信息。SMPC是现代密码学的一个中心概念,它考虑的问题足够抽象,基本概括了密码学领域绝大部分高层协议,如认证协议、在线支付协议、公平交换协议、拍卖协议、选举协议、隐私保护的数据查询/数据挖掘等等。隐私保护集合交集(privatesetintersection,PSI)计算属于安全多方计算领域的特定问题,不仅具有重要的理论意义也具有很强的应用背景,集合交集协议是集合安全运算中重要的技术之一,它被广泛应用于数据挖掘,社交网络等众多领域。集合交集安全计算协议保证参与者在不泄露自己隐私数据的基础上,一方或者多方共同计算出集合的交集,参与者除了得到集合的交集外,不能得到任何多余数据。如何使参与者更加安全、高效的进行隐私保密求集合交集,是隐私保密集合交集计算技术进一步发展的关键技术要素。目前隐私保密计算集合交集的方法主要有以下几类,基于不经意多项式、基于不经意伪随机方程、基于盲签名、基于BloomFilter。一方面,在过去的隐私保护集合交集计算协议中,一般是基于半诚实模型甚至是恶意模型,有些传统的隐私保护集合交集计算协议的安全性不够高,参与者能够通过一些多余计算得到除交集外的多余元素信息。另一方面,有些隐私保护集合交集计算协议存在计算量大,求解速度慢等问题。因此设计出一种安全性高、计算复杂性低的隐私保护集合交集计算方法具有很大的理论与现实意义。
技术实现思路
为了解决上述的技术问题,本专利技术提供了一种利用多项式性质的隐私保护的集合交集计算方法。本专利技术的方法所采用的技术方案是:一种隐私保护的集合交集两方安全计算方法,其特征在于,基于两个参与者,分别是参与者P0和参与者P1,包括以下步骤:步骤1:初始化,具体是初始化参与者P0持有的集合X,以及参与者P1持有的集合Y;步骤2:协商公共参数,具体是参与者P0生成公共参数param,并将公共参数param发送给参与者P1;步骤3:保密发送集合X,具体是参与者P0将持有的集合X进行加密,并将加密后的集合参数发送给参与者P1;步骤4:保密发送集合Y,具体是参与者P1将持有的集合Y进行加密,并将加密后的集合参数发送给参与者P1;步骤5:计算交集索引,具体是参与者P0根据参与者P1传送过来的加密后的集合参数计算交集索引,并根据计算结果发送符合条件的交集索引给参与者P1;步骤6:公布交集,具体是参与者P1根据P0发送的交集索引计算集合交集,并将符合条件的集合交集发送给参与者P0。在上述的一种隐私保护的集合交集两方安全计算方法,步骤1的具体实现包括以下子步骤:步骤1.1:参与者P0持有大小为d的集合X,d是集合的势;P0将自己集合X=(x1,...,xd)用一个d次的多项式Q(x)=q0+q1x+...+qdxd表示,qi∈Zp(i=0,d..,.q,i代)表多项式每一项系数,Zp表示模p的同余类集合,其中p为素数;步骤1.2:参与者P1持有大小为m的集合Y=(y1,...,ym)。在上述的一种隐私保护的集合交集两方安全计算方法,步骤2的具体实现包括以下子步骤:步骤2.1:参与者P0生成(G,p,g)作为公共参数param,其中G是循环群,g是群G的生成元,群G中每一个元素都能由g的幂次方表示,p表示群G的阶,即群中元素的个数;步骤2.2:参与者P0将param发送给参与者P1。在上述的一种隐私保护的集合交集两方安全计算方法,步骤3的具体实现包括以下子步骤:步骤3.1:参与者P0选取一个随机数生成一个d次多项式R(x)=0r+r0x+...+0rdx,代表模p的非零同余类集合,其中p为素数;步骤3.2:参与者P0利用多项式R(x)对根据自己集合形成的多项式Q(x)进行隐藏,形成混淆的多项式隐藏的多项式Q'(x)每一项系数为将每项系数表示为步骤3.3:参与者P0将系数发送给参与者P1。在上述的一种隐私保护的集合交集两方安全计算方法,步骤4的具体实现包括以下子步骤:步骤4.1:参与者P1随机的从集合Y中选取n个元素yj,其中,1≤j≤n,m<n,m为集合Y的元素总个数,记录每个j值对应的元素yj,n>m表示随机取出的元素个数比集合Y中元素个数多,参与者P1需保证集合Y中的元素全部被选取且有一个或者多个元素被重复选择;步骤4.2:对于每一个被选出来的元素yj,P1都选取一个较大的随机数rj(rj≠0),然后根据参与者P0传送过来的多项式系数计算多项式的值;步骤4.3:参与者P1根据选取的大随机数rj计算的值;步骤4.4:参与者P1将计算后的Sj发送给参与者P0。在上述的一种隐私保护的集合交集两方安全计算方法,步骤5的具体实现包括以下子步骤:步骤5.1:参与者P0根据参与者P1传送过来的Sj值,然后结合步骤3.1中选取的随机数r0计算对于所有1≤j≤n,当且仅当记录j值;步骤5.2:参与者P0将满足条件的j值发送给P1,若果没有任何满足条件的j值,则发送0给P1。在上述的一种隐私保护的集合交集两方安全计算方法,步骤6的具体实现包括以下子步骤:步骤6.1:参与者P1根据P0发送过来的j值,若j≠0,则P1选取对应的yj放入集合I,若j=0,则令集合步骤6.2:,参与者P1过滤掉集合I中重复的元素后,由所剩余元素组成两者集合交集I';步骤6.3:参与者P1将两者集合交集I'发送给参与者P0。一种隐私保护的集合交集两方安全计算系统,其特征在于,基于两个参与者,分别是参与者P0和参与者P1,包括:初始化模块:用于初始化参与者P0持有的集合X,以及参与者P1持有的集合Y;协商模块:用于协商公共参数,具体是参与者P0生成公共参数param,并将公共参数param发送给参与者P1;加密模块:用于加密并送集合X和集合Y,具体是参与者P0将持有的集合X进行加密,并将加密后的集合参数发送给参与者P1;参与者P1将持有的集合Y进行加密,并将加密后的集合参数发送给参与者P1;交集索引计算模块:用于参与者P0根据参与者P1传送过来的加密后的集合参数计算交集索引,并根据计算结果发送符合条件的交集索引给参与者P1;公布交集计算模块:用于参与者P1根据P0发送的交集索引计算集合交集,并将符合条件的集合交集发送给参与者P0。本专利技术公开了一种隐私保护的集合交集计算本文档来自技高网
...

【技术保护点】
1.一种隐私保护的集合交集两方安全计算方法,其特征在于,基于两个参与者,分别是参与者P0和参与者P1,包括以下步骤:步骤1:初始化,具体是初始化参与者P0持有的集合X,以及参与者P1持有的集合Y;步骤2:协商公共参数,具体是参与者P0生成公共参数param,并将公共参数param发送给参与者P1;步骤3:保密发送集合X,具体是参与者P0将持有的集合X进行加密,并将加密后的集合参数发送给参与者P1;步骤4:保密发送集合Y,具体是参与者P1将持有的集合Y进行加密,并将加密后的集合参数发送给参与者P1;步骤5:计算交集索引,具体是参与者P0根据参与者P1传送过来的加密后的集合参数计算交集索引,并根据计算结果发送符合条件的交集索引给参与者P1;步骤6:公布交集,具体是参与者P1根据P0发送的交集索引计算集合交集,并将符合条件的集合交集发送给参与者P0。

【技术特征摘要】
1.一种隐私保护的集合交集两方安全计算方法,其特征在于,基于两个参与者,分别是参与者P0和参与者P1,包括以下步骤:步骤1:初始化,具体是初始化参与者P0持有的集合X,以及参与者P1持有的集合Y;步骤2:协商公共参数,具体是参与者P0生成公共参数param,并将公共参数param发送给参与者P1;步骤3:保密发送集合X,具体是参与者P0将持有的集合X进行加密,并将加密后的集合参数发送给参与者P1;步骤4:保密发送集合Y,具体是参与者P1将持有的集合Y进行加密,并将加密后的集合参数发送给参与者P1;步骤5:计算交集索引,具体是参与者P0根据参与者P1传送过来的加密后的集合参数计算交集索引,并根据计算结果发送符合条件的交集索引给参与者P1;步骤6:公布交集,具体是参与者P1根据P0发送的交集索引计算集合交集,并将符合条件的集合交集发送给参与者P0。2.根据权利要求1所述的一种隐私保护的集合交集两方安全计算方法,其特征在于,步骤1的具体实现包括以下子步骤:步骤1.1:参与者P0持有大小为d的集合X,d是集合的势;P0将自己集合X=(x1,...,xd)用一个d次的多项式Q(x)=q0+q1x+...+qdxd表示,qi代表多项式每一项系数,Zp表示模p的同余类集合,其中p为素数;步骤1.2:参与者P1持有大小为m的集合Y=(y1,...,ym)。3.根据权利要求2所述的一种隐私保护的集合交集两方安全计算方法,其特征在于,步骤2的具体实现包括以下子步骤:步骤2.1:参与者P0生成(G,p,g)作为公共参数param,其中G是循环群,g是群G的生成元,群G中每一个元素都能由g的幂次方表示,p表示群G的阶,即群中元素的个数;步骤2.2:参与者P0将param发送给参与者P1。4.根据权利要求3所述的一种隐私保护的集合交集两方安全计算方法,其特征在于,步骤3的具体实现包括以下子步骤:步骤3.1:参与者P0选取一个随机数生成一个d次多项式R(x)=r0+r0x+...+r0xd,代表模p的非零同余类集合,其中p为素数;步骤3.2:参与者P0利用多项式R(x)对根据自己集合形成的多项式Q(x)进行隐藏,形成混淆的多项式隐藏的多项式Q'(x)每一项系数为将每项系数表示为步骤3.3:参与者P0将系数发送给参与者P1。5.根据权利要求4所述的一种隐私保护的集合交集两...

【专利技术属性】
技术研发人员:阮鸥黄雄波周靖王子豪杨阳毛浩
申请(专利权)人:湖北工业大学
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1