【技术实现步骤摘要】
一种基于同态加密的隐私求交及数据库检索方法
[0001]本专利技术涉及隐私计算领域,特别是涉及一种基于同态加密的隐私求交及数据库检索方法。
技术介绍
[0002]隐私集合求交(private set intersection,PSI)指的是由一个服务方和一个用户参与的协议,其中服务方和用户分别拥有一个私密的集合,协议的作用是给用户输出双方集合的交集,并满足不向任何一方泄露交集以外的任何信息。
[0003]隐私数据库查询(private queries to databases)在本文中指的是由一个服务方和一个用户参与的协议,其中服务方拥有一个私密的关键词
‑
值对的集合,用户分别拥有一个私密的关键词集合,协议的作用是给用户输出双方公共的关键词及其附属的值,并满足不向任何一方泄露除公共的关键词及其附属值以外的任何信息。在其它文献中,隐私数据库查询也被称作带标签的隐私集合求交(labeled PSI)或基于关键词的隐私信息检索(private information retrieval bykeywords,PIR by keywords)。
[0004]全同态加密指的是支持加法和乘法的同态加密:即给定现成的密文,人们可以在不知道私钥的情况下导出新的密文,其包含的消息是原来密文中的消息的和或者积。下面使用Enc(m)表示关于某个消息数据m的密文,则密文满足下列性质。注意这里的加密是有随机性的,因此对应同一个消息的密文是不唯一的,只是由于不影响下面的表述因此在符号上不作区分。
[00 ...
【技术保护点】
【技术特征摘要】
1.一种基于同态加密的隐私求交及数据库检索方法,其特征在于,包括以下内容:步骤1:服务方和用户分别将每个数据值进行处理,将处理后的数据进行隐私求交;步骤2:服务方和用户分别将每个数据值进行处理,将处理后的数据进行数据库检索。2.根据权利要求1所述的基于同态加密的隐私求交及数据库检索方法,其特征在于,服务方和用户分别将每个数据值进行处理,将处理后的数据进行隐私求交,具体为:步骤101:假设服务方拥有大小为n的数据集{x_1,x_2,...,x_n},用户拥有数据y,选择BFV/BGV明文模数为p;步骤102:服务方和用户分别对己方数据进行哈希,将每个数据值哈希到中,服务方得到{H(x_1),H(x_2),...,H(x_n)},用户得到H(y),其中H(
·
)表示哈希函数;步骤103:用户对其哈希值进行加密,得到Enc(H(y)),并发送给服务方,其中Enc(m)表示关于消息数据m的密文;步骤104:对于i={1,...,n},服务方计算Enc(H(y))
‑
H(x
i
)得到Enc(H(y)
‑
H(x
i
));步骤105:对于i={1,...,n},服务方使用平方
‑
乘算法,对上一步得到的对应密文求出其p
‑
1次幂,得到Enc((H(y)
‑
H(x
i
))
p
‑1),记这个密文为C
i
,服务方进一步计算1
‑
C
i
,即可得到Enc(Eq(H(y),H(x
i
))),Eq(
·
,
·
)表示相等判定函数;步骤106:服务方将所有Enc(Eq(H(y),H(x
i
)))相加,得到密文C
final1
;服务方对密文C
final1
进行40比特的噪声遮盖,即对密文加上一个额外的随机噪声;服务方将遮盖后的C
final1
发送给用户;步骤107:用户对C
final1
进行解密,如果结果为0,则用户判断y不在服务方的集合{x_1,...,x_n}中;如果结果为1,则用户判断y也在服务方的集合{x_1,...,x_n}中。3.根据权利要求1所述的基于同态加密的隐私求交及数据库检索方法,其特征在于,服务方和用户分别将每个数据值进行处理,将处理后的数据进行隐私求交,具体为:当协议要求使用较长的哈希值输出,而明文模数相对较小时,采取如下步骤:步骤101:假设服务方拥有大小为n的数据集{x_1,x_2,...,x_n},用户拥有数据y,选择BFV/BGV明文模数为p;步骤102:服务方和用户分别对己方数据进行哈希,将哈希值按log2(p)比特进行分割,将每个数据值哈希到两个中,服务方得到{H
(1)
(x_1),H
(2)
(x_1),H
(1)
(x_2),H
(2)
(x_2),...,H
(1)
(x_n),H
(2)
(x_n)},用户得到H
(1)
(y),H
(2)
(y);步骤103:用户对其分割后哈希值分别进行加密,得到Enc(H
(1)
(y)),Enc(H
(2)
(y)),并发送给服务方;步骤104:对于i={1,...,n},j=1,2,服务方计算Enc(H
(j)
(y))
‑
H
(j)
(x
i
)得到Enc(H
(j)
(y)
‑
H
(j)
(x
i
));步骤105:对于i={1,...,n},j=1,2,服务方使用平方
‑
乘算法,对上一步得到的对应密文求出其p
‑
1次幂,得到Enc((H
(j)
(y)
‑
H
(j)
(x
i
))
p
‑1)。记这个密文为C
i,j
;服务方计算1
‑
C
i,1
=Enc(Eq(H
(1)
(y),H
(1)
(x
i
))),1
‑
C
i,2
...
【专利技术属性】
技术研发人员:李延凯,梁栋,
申请(专利权)人:北京原语科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。