一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种隐私集合求交的方法和系统与流程

2022-04-27 07:30:10 来源:中国专利 TAG:


1.本发明涉及的是通信领域,特别涉及一种隐私集合求交的方法和系统。


背景技术:

2.目前,现有技术中提供一种高效批处理不经意伪随机函数在隐私集合求交中的应用(effificient batched oblivious prf with applications to private set intersection)的方法,该方法会在离线阶段客户端将自身集合进行布谷鸟哈希编号存储的基础上,并与服务器利用不经意传输扩展构造了批量的不经意伪随机函数(batch-oprf)。在线阶段服务器将自身集合经过batch-oprf处理后发送给客户端,客户端接收信息并与自身内容比对,进而得出双方交集。
3.但是现有技术提供的该方法存在明显的问题,即在线阶段服务器发送的信息量过大了,这在中慢速网络环境中会拖累该方案的整体效率,目前还未有此类方法来降低该方案中传输的信息量。


技术实现要素:

4.鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种隐私集合求交的方法。
5.为了解决上述技术问题,本技术实施例公开了如下技术方案:
6.一种隐私集合求交的方法,包括:
7.s100.当离线阶段时,服务器对自身数据集r使用布谷鸟哈希算法进行编号存储,得到新的数据集r1;
8.s200.服务器生成伪随机矩阵t,并利用一个伪随机函数c,结合新的数据集r1得到矩阵u;
9.s300.服务器与客户端合作,基于客户端的选择预设比特长的字符串p以及服务器矩阵t、u,通过不经意传输扩展得到矩阵q;
10.s400.当在线阶段时,服务器对矩阵t的每一行通过哈希算法计算h(ti),并形成一张真值表,将该真值表发送给客户端;
11.s500.客户端对自身每一个数据y通过哈希算法计算h(qj c(y)*p),其中,h是一个hash函数,输出定长,qj是矩阵q的第j行,c是一个伪随机函数,y是客户端数据,p是客户端的选择预设比特长的字符串;并将h(qj c(y)*p)与真值表h(tj)进行比对,若h(qj c(y)*p)与h(tj)相等,则认为数据y在客户端与服务器的交集当中。
12.进一步地,s100中,当自身数据集r为有n个数据时,通过布谷鸟哈希算法,新的数据集r1数据扩大为1.2n s个,即r={r1,r2,...,rn,...,r
1.2n s
},其中,s布谷鸟哈希算法为的特定参数。
13.进一步地,s200中,随机矩阵t为1.2n s行、k列矩阵,并且矩阵内元素为0或1随机分布。
14.进一步地,s200中,矩阵u的每一行ui=ti c(ri),其中ti表示矩阵t的第i行,ri服务器数据。
15.进一步地,s200中,伪随机函数c支持任意输入,输出一个满足安全性要求的k比特的字符串。
16.进一步地,s300中,矩阵q的每一行qi具体为:qi=ti c(ri)*p,其中ti表示矩阵t的第i行,ri服务器数据。
17.进一步地,s400中,通过哈希算法计算h(ti),通过计算的h(ti)输出一个定长的比特串。
18.进一步地,s500中,j等于h1(y),h2(y),h3(y),1.2n 1,1.2n 2,...,1.2n s公有3 s个取值,其中h1,h2,h3是布谷鸟哈希的哈希函数,其输出为闭区间[1,1.2n]中的一个整数。
[0019]
进一步地,本发明还公开了一种隐私集合求交的系统,包括:服务器和客户端,其中:
[0020]
服务器,用于在离线阶段时,对自身数据集r使用布谷鸟哈希算法进行编号存储,得到新的数据集r1;用于生成伪随机矩阵t,并利用一个伪随机函数c,结合新的数据集r1得到矩阵u;与客户端合作,基于客户端的选择预设比特长的字符串p以及服务器矩阵t、u,通过不经意传输扩展得到矩阵q;还用于在在线阶段时,对矩阵t的每一行通过哈希算法计算h(ti),并形成一张真值表,将该真值表发送给客户端;
[0021]
客户端,用于在在线阶段时,对自身每一个数据y通过哈希算法计算h(qj c(y)*p),其中,h是一个hash函数,输出定长,qj是矩阵q的第j行,c是一个伪随机函数,y是客户端数据,p是客户端的选择预设比特长的字符串;并将h(qj c(y)*p)与真值表h(tj)进行比对,若h(qj c(y)*p)与h(tj)相等,则认为数据y在客户端与服务器的交集当中。
[0022]
本发明实施例提供的上述技术方案的有益效果至少包括:
[0023]
本发明公开的一种隐私集合求交的方法,包括:当离线阶段时,服务器对自身数据集r使用布谷鸟哈希算法进行编号存储,得到新的数据集r1;服务器生成伪随机矩阵t,并利用一个伪随机函数c,结合新的数据集r1得到矩阵u;服务器与客户端合作,基于客户端的选择预设比特长的字符串p以及服务器矩阵t、u,通过不经意传输扩展得到矩阵q;当在线阶段时,服务器对矩阵t的每一行通过哈希算法计算h(ti),并形成一张真值表,将该真值表发送给客户端;客户端对自身每一个数据y通过哈希算法计算h(qj c(y)*p),并与真值表h(tj)进行比对,若h(qj c(y)*p)与h(tj)相等,则认为数据y在客户端与服务器的交集当中。本发明解决了现有技术在隐私集合求交中,在线阶段服务器发送的信息量过大,在中慢速网络环境中会拖累整体效率的问题。
[0024]
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
[0025]
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
[0026]
图1为本发明实施例1中,一种隐私集合求交的方法的流程图。
具体实施方式
[0027]
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0028]
为了解决现有技术中存在的问题,本发明实施例提供一种隐私集合求交的方法和系统。
[0029]
实施例1
[0030]
本实施例公开了一种隐私集合求交的方法,如图1,包括:
[0031]
s100.当离线阶段时,服务器对自身数据集r使用布谷鸟哈希算法进行编号存储,得到新的数据集r1;具体的,s100中,当自身数据集r为有n个数据时,通过布谷鸟哈希算法,新的数据集r1数据扩大为1.2n s个,即r={r1,r2,...,rn,...,r
1.2n s
},其中,s布谷鸟哈希算法为的特定参数。经过布谷鸟哈希算法编号后的数据需更大的集合来存储,s为cuckoo hash的特定参数,即大小为n的集合,会变为大小为1.2n s的编号集合,空位置填充虚拟项n越大s越小。
[0032]
s200.服务器生成伪随机矩阵t,并利用一个伪随机函数c,结合新的数据集r1得到矩阵u;具体的,s200中,随机矩阵t为1.2n s行、k列矩阵,并且矩阵内元素为0或1随机分布。生成的矩阵u的每一行ui=ti c(ri),其中ti表示矩阵t的第i行,ri服务器数据。伪随机函数c支持任意输入,输出一个满足安全性要求的k比特的字符串。
[0033]
s300.服务器与客户端合作,基于客户端的选择预设比特长的字符串p以及服务器矩阵t、u,通过不经意传输扩展得到矩阵q;具体的,矩阵q的每一行qi具体为:qi=ti c(ri)*p,其中ti表示矩阵t的第i行,ri服务器数据。客户端的选择的字符串p得长度为k,需要说明的是,qi并不是由ti c(ri)*p计算得到的,客户端无法知道具体ti,qi只是由于不经意传输扩展的特性恰好与此式相等。
[0034]
s400.当在线阶段时,服务器对矩阵t的每一行通过哈希算法计算h(ti),并形成一张真值表,将该真值表发送给客户端。具体的,通过哈希算法计算h(ti),通过计算的h(ti)输出一个定长的比特串。
[0035]
s500.客户端对自身每一个数据y通过哈希算法计算h(qj c(y)*p),其中,h是一个hash函数,输出定长,qj是矩阵q的第j行,c是一个伪随机函数,y是客户端数据,p是客户端的选择预设比特长的字符串;并将h(qj c(y)*p)与真值表h(tj)进行比对,若h(qj c(y)*p)与h(tj)相等,则认为数据y在客户端与服务器的交集当中。
[0036]
一种隐私集合求交的系统,其特征在于,包括:服务器和客户端,其中:服务器,用于在离线阶段时,对自身数据集r使用布谷鸟哈希算法进行编号存储,得到新的数据集r1;用于生成伪随机矩阵t,并利用一个伪随机函数c,结合新的数据集r1得到矩阵u;用于与客户端合作,基于客户端的选择预设比特长的字符串p和矩阵u,通过不经意拓展得到矩阵q;还用于在在线阶段时,对矩阵t的每一行通过哈希算法计算h(ti),并形成一张真值表,将该真值表发送给客户端;
[0037]
客户端,用于在在线阶段时,对自身每一个数据y通过哈希算法计算h(qj c(y)*p),其中,h是一个hash函数,输出定长,qj是矩阵q的第j行,c是一个伪随机函数,y是客户端
数据,客户端的选择预设比特长的字符串;并将h(qj c(y)*p)与真值表h(tj)进行比对,若h(qj c(y)*p)与h(tj)相等,则认为数据y在客户端与服务器的交集当中。
[0038]
本实施例公开的一种隐私集合求交的方法,包括:当离线阶段时,服务器对自身数据集r使用布谷鸟哈希算法进行编号存储,得到新的数据集r1;服务器生成伪随机矩阵t,并利用一个伪随机函数c,结合新的数据集r1得到矩阵u;服务器与客户端合作,基于客户端的选择预设比特长的字符串p,通过不经意拓展得到矩阵q;当在线阶段时,服务器对矩阵t的每一行通过哈希算法计算h(ti),并形成一张真值表,将该真值表发送给客户端;客户端对自身每一个数据y通过哈希算法计算h(qj c(y)*p),并与真值表h(tj)进行比对,若h(qj c(y)*p)与h(tj)相等,则认为数据y在客户端与服务器的交集当中。本发明解决了现有技术在隐私集合求交中,在线阶段服务器发送的信息量过大,在中慢速网络环境中会拖累整体效率的问题。
[0039]
应该明白,公开的过程中的步骤的特定顺序或层次是示例性方法的实例。基于设计偏好,应该理解,过程中的步骤的特定顺序或层次可以在不脱离本公开的保护范围的情况下得到重新安排。所附的方法权利要求以示例性的顺序给出了各种步骤的要素,并且不是要限于所述的特定顺序或层次。
[0040]
在上述的详细描述中,各种特征一起组合在单个的实施方案中,以简化本公开。不应该将这种公开方法解释为反映了这样的意图,即,所要求保护的主题的实施方案需要清楚地在每个权利要求中所陈述的特征更多的特征。相反,如所附的权利要求书所反映的那样,本发明处于比所公开的单个实施方案的全部特征少的状态。因此,所附的权利要求书特此清楚地被并入详细描述中,其中每项权利要求独自作为本发明单独的优选实施方案。
[0041]
本领域技术人员还应当理解,结合本文的实施例描述的各种说明性的逻辑框、模块、电路和算法步骤均可以实现成电子硬件、计算机软件或其组合。为了清楚地说明硬件和软件之间的可交换性,上面对各种说明性的部件、框、模块、电路和步骤均围绕其功能进行了一般地描述。至于这种功能是实现成硬件还是实现成软件,取决于特定的应用和对整个系统所施加的设计约束条件。熟练的技术人员可以针对每个特定应用,以变通的方式实现所描述的功能,但是,这种实现决策不应解释为背离本公开的保护范围。
[0042]
结合本文的实施例所描述的方法或者算法的步骤可直接体现为硬件、由处理器执行的软件模块或其组合。软件模块可以位于ram存储器、闪存、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、移动磁盘、cd-rom或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质连接至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于asic中。该asic可以位于用户终端中。当然,处理器和存储介质也可以作为分立组件存在于用户终端中。
[0043]
对于软件实现,本技术中描述的技术可用执行本技术所述功能的模块(例如,过程、函数等)来实现。这些软件代码可以存储在存储器单元并由处理器执行。存储器单元可以实现在处理器内,也可以实现在处理器外,在后一种情况下,它经由各种手段以通信方式耦合到处理器,这些都是本领域中所公知的。
[0044]
上文的描述包括一个或多个实施例的举例。当然,为了描述上述实施例而描述部件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施
例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书的保护范围内的所有这样的改变、修改和变型。此外,就说明书或权利要求书中使用的术语“包含”,该词的涵盖方式类似于术语“包括”,就如同“包括,”在权利要求中用作衔接词所解释的那样。此外,使用在权利要求书的说明书中的任何一个术语“或者”是要表示“非排它性的或者”。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献