基于不经意伪随机函数和哈希函数的批量隐私信息获取方法与流程

未命名 08-05 阅读:137 评论:0


1.本技术涉及隐私信息获取方法,尤其涉及基于不经意伪随机函数和哈希函数的批量隐私信息获取方法,属于隐私信息获取技术领域。


背景技术:

2.隐私信息检索(private information retrieval,pir)技术是一种在保护用户查询条件下的信息检索技术,能够保障个人隐私在公共网络平台上的私密性。当用户在数据库上检索信息时,pir将采用一定的方法来保护用户的查询隐私,防止数据库服务器知晓用户查询语句的相关信息。隐私信息检索的发展和普及需要隐私保密技术的不断提高,同时也需要人们对隐私保护意识的不断增强。
3.目前主流的pir查询系统分为两种:一种是基于同态加密的,另一种是基于不经意传输(oblivious transfer,ot)和不经意伪随机函数(oblivious pseudorandom function,oprf)的。然而,同态加密的复杂度较高,需要大量计算,并且通常不支持批量检索。


技术实现要素:

4.在下文中给出了关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
5.鉴于此,为解决现有技术中存在的计算量大、不支持批量检索的技术问题,本发明提供基于不经意伪随机函数和哈希函数的批量隐私信息获取方法。
6.方案一、基于不经意伪随机函数和哈希函数的批量隐私信息获取方法,包括查询方和数据方,数据方的数据集d包括在本地存储的数据对应的关键词d和消息m;查询方的数据集b包括需查询的数据对应的关键词b,当数据方本地存储的数据对应的关键词d与需查询的数据对应的关键词b匹配,数据方将消息发送给查询方,否则不提供信息,数据方无法获知查询方的数据集b;设数据方和查询方提前共享了伪随机函数f(
·
,
·
),具体包括以下步骤:
7.s1.查询方随机选取四个哈希函数h1,h2,h3,h并共享给数据方;
8.s2.查询方根据哈希函数h1,h2,h3对需查询的数据对应的关键词b做布谷鸟哈希;
9.s3.查询方和数据方执行oprf协议;
10.s4.数据方将加密的数据对应的关键词d和消息m发送给查询方;
11.s5.查询方接收数据方发送的加密数据对应的关键词和消息,查询方判断能否将消息成功解密。
12.优选的,s2具体是,将数据对应的关键词b映射到1.2n个bin中,记作h
z(b)
(b),其中,z(b)∈{1,2,3},若需查询的数据对应的关键词b无法使用哈希函数h1,h2,h3映射到bin
中,则将该数据映射在stash桶中,记作b。
13.优选的,s3具体是,查询方和数据方执行oprf协议时根据需查询的数据对应的关键词b的位置确定查询方输入值,数据方输入值为空;查询方的输出为f(ki,ri),其中,ki表示oprf协议随机生成的秘钥,ri表示查询方的输入值;数据方的输出为ki。
14.优选的,根据需查询的数据对应的关键词b的位置确定查询方输入值的方法是:
15.当需查询的数据对应的关键词b位于在bin时,bin中包含空位和b||z(b),则将空位设为随机值;oprf协议输入值为随机值和b||z(b);
16.当需查询的数据对应的关键词b位于stash桶时,oprf协议输入值为b。
17.优选的,s4具体是,包括以下步骤:
18.s41.将数据方根据oprf协议随机生成的秘钥和数据对应的关键词d连接哈希标志符输入至伪随机函数f(
·
,
·
)中,得到;
19.gq=f(ki,d||q),i∈{1,

,1.2n},d∈d,q∈{1,2,3}
20.其中,gq表示f(ki,d||q)的集合,q表示哈希标志符;
21.s42.数据方对数据对应的关键词d进行加密:
[0022][0023]
其中,c表示加密后数据对应的关键词d的集合,enc(
·
,k
sym
)表示对称密码加密,m表示数据方的消息,h(d)表示用h哈希函数对数据对应的关键词d进行哈希后的值,m(d)表示d对应的消息m;
[0024]
s43.将数据方根据oprf协议随机生成的秘钥和数据对应的关键词d输入至伪随机函数f(
·
,
·
)中,得到;
[0025]
s={f(ki,d)|d∈d},i∈{1.2n+1,

,1.2n+s}
[0026]
其中,s表示f(ki,d)的集合;
[0027]
s44.数据方对消息m进行加密:
[0028][0029]
其中,ci表示加密后的消息集合;
[0030]
s45.随机将发送给查询方的加密数据对应的关键词和消息进行顺序混淆。
[0031]
优选的,s45具体是:关于数据对应的关键词d,gq与c中的数据相互对应得到gqc={gq,c},s与ci中的数据相互对应得到sci={s,ci},将gqc和sc进行顺序混淆后发送给查询方。
[0032]
优选的,查询方判断能否将消息成功解密的方法是:查询方判断需查询的数据对应的关键词b的位置;
[0033]
当需查询的数据对应的关键词b位于bin中时,将f(ki,ri)与gqc中的f(ki,d||q)进行匹配,若匹配成功,则根据f(ki,d||q)在gqc找到对应的加密后的数据对应的关键词d进行解密,解密后得到消息;
[0034]
当需查询的数据对应的关键词b位于stash桶时,将f(ki,ri)与sci中的f(ki,d)进行匹配,若匹配成功,则根据f(ki,d)在sci中找到对应的加密后的消息ci进行解密,解密后得到消息。
[0035]
方案二、一种电子设备,包括存储器和处理器,存储器存储有计算机程序,所述的
处理器执行所述计算机程序时实现方案一所述的基于不经意伪随机函数和哈希函数的批量隐私信息获取方法的步骤。
[0036]
方案三、一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现方案一所述的基于不经意伪随机函数和哈希函数的批量隐私信息获取方法。
[0037]
本发明的有益效果如下:
[0038]
1.本发明可以传输任意大小任意数量的消息;
[0039]
2.发明通过将关键词查询视为基于不经意传输和不经意伪随机函数隐私集合求交集问题,然后将信息获取简化为对称加密解密,可批量进行隐私信息获取;
[0040]
3.本发明在双方数据库大小接近且较大时,计算复杂度低。
附图说明
[0041]
此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
[0042]
图1为基于不经意伪随机函数和哈希函数的批量隐私信息获取方法流程示意图。
具体实施方式
[0043]
为了使本技术实施例中的技术方案及优点更加清楚明白,以下结合附图对本技术的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本技术的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
[0044]
实施例1、参照图1说明本实施方式,基于不经意伪随机函数和哈希函数的批量隐私信息获取方法,包括查询方和数据方,数据方的数据集d包括在本地存储的数据对应的关键词d和消息m;查询方的数据集b包括需查询的数据对应的关键词b,当数据方本地存储的数据对应的关键词d与需查询的数据对应的关键词b匹配,数据方将消息发送给查询方,否则不提供信息,数据方无法获知查询方的数据集b;设数据方和查询方提前共享了伪随机函数f(
·
,
·
),具体包括以下步骤:
[0045]
s1.查询方随机选取四个哈希函数h1,h2,h3,h并共享给数据方;
[0046]
s2.查询方根据哈希函数h1,h2,h3对需查询的数据对应的关键词b做布谷鸟哈希,将其映射到1.2n个bin中,记作h
z(b)
(b),其中,z(b)∈{1,2,3},若需查询的数据对应的关键词b无法使用哈希函数h1,h2,h3映射到bin中,则将该数据映射在stash桶中,记作b;
[0047]
s3.查询方和数据方执行oprf协议:根据需查询的数据对应的关键词b的位置确定查询方输入值,数据方输入值为空;查询方的输出为f(ki,ri),其中,ki表示oprf协议随机生成的秘钥,表示查询方的输入值;数据方的输出为ki;
[0048]
根据需查询的数据对应的关键词b的位置确定查询方输入值的方法是:
[0049]
当需查询的数据对应的关键词b位于在bin时,bin中包含空位和b||z(b),则将空位设为随机值;oprf协议输入值为随机值和b||z(b);
[0050]
当需查询的数据对应的关键词b位于stash桶时,oprf协议输入值为b;
[0051]
s4.数据方将加密的数据对应的关键词d和消息m发送给查询方;
[0052]
s41.将数据方根据oprf协议随机生成的秘钥和数据对应的关键词d连接哈希标志符输入至伪随机函数f(
·
,
·
)中,得到;
[0053]gq
=f(ki,d||q),i∈{1,

,1.2n},d∈d,q∈{1,2,3}
[0054]
其中,gq表示f(ki,d||q)的集合,q表示哈希标志符;
[0055]
s42.数据方对数据对应的关键词d进行加密:
[0056][0057]
其中,c表示加密后数据对应的关键词d的集合,enc(
·
,k
sym
)表示对称密码加密,m表示数据方的消息,h(d)表示用h哈希函数对数据对应的关键词d进行哈希后的值,m(d)表示d对应的消息m;
[0058]
s43.将数据方根据oprf协议随机生成的秘钥和数据对应的关键词d输入至伪随机函数f(
·
,
·
)中,得到;
[0059]
s={f(ki,d)|d∈d},i∈{1.2n+1,

,1.2n+s}
[0060]
其中,s表示f(ki,d)的集合;
[0061]
s44.数据方对消息m进行加密:
[0062][0063]
其中,ci表示加密后的消息集合;
[0064]
s45.随机将发送给查询方的加密数据对应的关键词和消息进行顺序混淆。
[0065]
关于数据对应的关键词d,gq与c中的数据相互对应得到gqc={gq,c},s与ci中的数据相互对应得到sci={s,ci},将gqc和sc进行顺序混淆后发送给查询方。
[0066]
s5.查询方接收数据方发送的加密数据对应的关键词和消息,查询方判断能否将消息成功解密;
[0067]
查询方判断需查询的数据对应的关键词b的位置,当需查询的数据对应的关键词b位于bin中时,将f(ki,ri)与gqc中的f(ki,d||q)进行匹配,若匹配成功,则根据f(ki,d||q)在g
qc[0068]
找到对应的加密后的数据对应的关键词d进行解密,解密后得到消息,当需查询的数据对应的关键词b位于stash桶时,将f(ki,ri)与sci中的f(ki,d)进行匹配,若匹配成功,则根据f(ki,d)在sci中找到对应的加密后的消息ci进行解密,解密后得到消息。
[0069]
具体的,本实施例允许数据方对输入bi的消息mi有不同数量的标签。如b1的消息m1中可包含一个标签,b2的消息m2中可包含两个标签。
[0070]
实施例2、本发明的计算机装置可以是包括有处理器以及存储器等装置,例如包含中央处理器的单片机等。并且,处理器用于执行存储器中存储的计算机程序时实现上述的基于不经意伪随机函数和哈希函数的批量隐私信息获取方法的步骤。
[0071]
所称处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0072]
所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0073]
实施例3、计算机可读存储介质实施例
[0074]
本发明的计算机可读存储介质可以是被计算机装置的处理器所读取的任何形式的存储介质,包括但不限于非易失性存储器、易失性存储器、铁电存储器等,计算机可读存储介质上存储有计算机程序,当计算机装置的处理器读取并执行存储器中所存储的计算机程序时,可以实现上述的基于不经意伪随机函数和哈希函数的批量隐私信息获取方法的步骤。
[0075]
所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
[0076]
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

技术特征:
1.基于不经意伪随机函数和哈希函数的批量隐私信息获取方法,其特征在于,包括查询方和数据方,数据方的数据集d包括在本地存储的数据对应的关键词d和消息m;查询方的数据集b包括需查询的数据对应的关键词b,当数据方本地存储的数据对应的关键词d与需查询的数据对应的关键词b匹配,数据方将消息发送给查询方,否则不提供信息,数据方无法获知查询方的数据集b;设数据方和查询方提前共享了伪随机函数f(
·
,
·
),具体包括以下步骤:s1.查询方随机选取四个哈希函数h1,h2,h3,h并共享给数据方;s2.查询方根据哈希函数h1,h2,h3对需查询的数据对应的关键词b做布谷鸟哈希;s3.查询方和数据方执行oprf协议;s4.数据方将加密的数据对应的关键词d和消息m发送给查询方;s5.查询方接收数据方发送的加密数据对应的关键词和消息,查询方判断能否将消息成功解密。2.根据权利要求1所述基于不经意伪随机函数和哈希函数的批量隐私信息获取方法,其特征在于,s2具体是,将数据对应的关键词b映射到1.2n个bin中,记作h
z(b)
(b),其中,z(b)∈{1,2,3},若需查询的数据对应的关键词b无法使用哈希函数h1,h2,h3映射到bin中,则将该数据映射在stash桶中,记作b。3.根据权利要求2所述基于不经意伪随机函数和哈希函数的批量隐私信息获取方法,其特征在于,s3具体是,查询方和数据方执行oprf协议时根据需查询的数据对应的关键词b的位置确定查询方输入值,数据方输入值为空;查询方的输出为f(k
i
,r
i
),其中,k
i
表示oprf协议随机生成的秘钥,r
i
表示查询方的输入值;数据方的输出为k
i
。4.根据权利要求3所述基于不经意伪随机函数和哈希函数的批量隐私信息获取方法,其特征在于,根据需查询的数据对应的关键词b的位置确定查询方输入值的方法是:当需查询的数据对应的关键词b位于在bin时,bin中包含空位和b||z(b),则将空位设为随机值;oprf协议输入值为随机值和b||z(b);当需查询的数据对应的关键词b位于stash桶时,oprf协议输入值为b。5.根据权利要求4所述基于不经意伪随机函数和哈希函数的批量隐私信息获取方法,其特征在于,s4具体是,包括以下步骤:s41.将数据方根据oprf协议随机生成的秘钥和数据对应的关键词d连接哈希标志符输入至伪随机函数f(
·
,
·
)中,得到;g
q
=f(k
i
,d||q),i∈{1,

,1.2n},d∈d,q∈{1,2,3}其中,g
q
表示f(k
i
,d||q)的集合,q表示哈希标志符;s42.数据方对数据对应的关键词d进行加密:其中,c表示加密后数据对应的关键词d的集合,enc(
·
,k
sym
)表示对称密码加密,m表示数据方的消息,h(d)表示用h哈希函数对数据对应的关键词d进行哈希后的值,m(d)表示d对应的消息m;s43.将数据方根据oprf协议随机生成的秘钥和数据对应的关键词d输入至伪随机函数f(
·
,
·
)中,得到;
s={f(k
i
,d)|d∈d},i∈{1.2n+1,

,1.2n+s}其中,s表示f(k
i
,d)的集合;s44.数据方对消息m进行加密:其中,c
i
表示加密后的消息集合;s45.随机将发送给查询方的加密数据对应的关键词和消息进行顺序混淆。6.根据权利要求5所述基于不经意伪随机函数和哈希函数的批量隐私信息获取方法,其特征在于,s45具体是:关于数据对应的关键词d,g
q
与c中的数据相互对应得到g
q
c={g
q
,c},s与c
i
中的数据相互对应得到sc
i
={s,c
i
},将g
q
c和sc进行顺序混淆后发送给查询方。7.根据权利要求6所述基于不经意伪随机函数和哈希函数的批量隐私信息获取方法,其特征在于,查询方判断能否将消息成功解密的方法是:查询方判断需查询的数据对应的关键词b的位置;当需查询的数据对应的关键词b位于bin中时,将f(k
i
,r
i
)与g
q
c中的f(k
i
,d||q)进行匹配,若匹配成功,则根据f(k
i
,d||q)在g
q
c找到对应的加密后的数据对应的关键词d进行解密,解密后得到消息;当需查询的数据对应的关键词b位于stash桶时,将f(k
i
,r
i
)与sc
i
中的f(k
i
,d)进行匹配,若匹配成功,则根据f(k
i
,d)在sc
i
中找到对应的加密后的消息c
i
进行解密,解密后得到消息。8.一种电子设备,其特征在于,包括存储器和处理器,存储器存储有计算机程序,所述的处理器执行所述计算机程序时实现权利要求1-7任一项所述的基于不经意伪随机函数和哈希函数的批量隐私信息获取方法的步骤。9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任一项所述的基于不经意伪随机函数和哈希函数的批量隐私信息获取方法。

技术总结
本发明提出涉及基于不经意伪随机函数和哈希函数的批量隐私信息获取方法,属于隐私信息获取技术领域。具体包括以下步骤:S1.查询方随机选取四个哈希函数h1,h2,h3,H并共享给数据方;S2.查询方根据哈希函数h1,h2,h3对需查询的数据对应的关键词b做布谷鸟哈希;S3.查询方和数据方执行OPRF协议;S4.数据方将加密的数据对应的关键词d和消息m发送给查询方;S5.查询方接收数据方发送的加密数据对应的关键词和消息,查询方判断能否将消息成功解密。解决现有技术中存在的计算量大、不支持批量检索的技术问题,本发明可以传输任意大小任意数量的消息,可批量进行隐私信息获取。可批量进行隐私信息获取。可批量进行隐私信息获取。


技术研发人员:刘钊乾 李墨 曾庆明 吕世翰 付希明
受保护的技术使用者:圣牒(北京)科技有限公司
技术研发日:2023.06.08
技术公布日:2023/8/4
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐