一种基于哈希及密钥交换的高效PSI方法技术

技术编号:30514889 阅读:14 留言:0更新日期:2021-10-27 22:57
本发明专利技术是一种基于哈希及密钥交换的高效PSI方法,该方法在哈希的过程加入盐值,并将具体PSI哈希匹配计算的过程将由引入的不知道盐值的半诚实第三方完成。本发明专利技术通过引入半诚实第三方,在不牺牲安全性的同时,能够大大提高现有的PSI算法的性能。现有的PSI算法的性能。现有的PSI算法的性能。

【技术实现步骤摘要】
一种基于哈希及密钥交换的高效PSI方法


[0001]本专利技术涉及基于哈希及密钥交换的高效PSI方法领域。

技术介绍

[0002]哈希算法也称散列函数,是把任意长度的输入变换成固定长度的输出的一种函数,哈希算法一般可以用来提高存储空间的利用率,提高数据的查询效率。密码学中也可以用做数字签名以及数据的唯一摘要,来保障数据传递的安全性。密码学中的哈希函数是不可逆的,即通过输入,可以轻松计算输出,反过来通过输出则不可以计算得到输入。此外,哈希函数还有确定性的性质,即输入确定的时候,输出也是确定的。
[0003]PSI是private set intersection的简称,两个或多个实体之间,每个实体都有一个隐私的数据集合,这些实体希望计算求得所有实体之间的共同交集,但又不希望泄露各自隐私集合的内容给对方。PSI就是实现这类需求的一项技术,实现PSI的途径多种多样,可基于公钥加密,或者不经意传输等。
[0004]密钥交换是用来在网络通信的双方之间通过交互,建立一个共同的密钥的过程,第三方无法通过截取通讯内容来获知这个密钥。密钥交换在如今的互联网中有大量的应用,如https协议,就是用的密钥交互建立通信双方的共享密钥,并用共享密钥做具体信息交互的加密密钥。密钥交互算法实现可以基于RSA,椭圆曲线离散对数,以及离散对数等。
[0005]PSI求隐私交集是多方计算中的一种,也是研究得非常深入的一种多方计算场景。最早的基于公钥模幂计算的PSI算法计算消耗大,并不实用。随着目前计算机性能越来越高,相关算法也不断提高发展,性能得到巨大提升。已经在现实生活中有了实际应用。比如微软的Edge浏览器中个人密码泄露的应用,就是使用了基于同态加密的PSI算法。此外,在社交网络中,也可以用来在两个人之间比较共同好友的时候,保护双方完整的好友信息不被泄露。此外PSI还可以用在僵尸网络发现、相似性检测、基因检测等等,实际应用价值方面,潜力巨大。
[0006]近期发展迅速的用来保护用户隐私的联邦机器学习,也使用了PSI算法来做联邦学习参与方之间的训练样本对齐。
[0007]目前PSI求隐私交集方法主要包括:
[0008](1)基于哈希的PSI:通过计算双方原始数据的哈希值,双方进行交换比较,并进一步得出隐私交集。此种方法比较简单直接,同时效率也是最快的。但存在安全性问题,因为用来做交集匹配的明文空间往往比较有限,比如身份证,手机号等。交互的双方通过对方的隐私数据哈希值,通过穷举爆破的方法,可以很容易推导出原始数据。
[0009](2)基于公钥计算的PSI:早期的PSI算法一般都是基于某一类流行的公钥密码算法,如基于RSA,离散对数等,但这一类的算法,往往涉及大整数的模幂运算,因而通常效率较慢,在双方数据集较大的情况下,效率比较低。
[0010](3)基于OT的:这一类算法基于OT(不经意传输),可以以少量的公钥计算和对称加密计算构造的一对多的高效OT组,并进行高效的PSI算法。
[0011](4)基于混淆电路:混淆电路最早由姚期智提出来解决百万富翁问题,是一个通用的安全多方计算框架,可以用来将任意计算转化为布尔计算后再运行安全多方计算,其性能近年来得到显著的发展,可以将PSI的计算转化为混淆电路安全多方计算。
[0012](5)基于同态加密:基于同态加密的PSI,微软将此技术用于解决双方数据集规模相差较大的密码泄露检查的场景。此类PSI技术通过将PSI的计算转换成多项式计算,并进一步使用同态算法加密,以保护交互双方的数据集隐私。
[0013]由于基于公钥计算的PSI是基于大量公钥的模幂运算,计算消耗大,效率很慢,基于OT的、基于混淆电路和基于同态加密,虽然性能较基于公钥计算的PSI有较大提升,但性能仍然无法与基于哈希的PSI比拟,但是,基于哈希的PSI方法中,如果交互双方的隐私数据集明文空间比较小,容易遭受穷举爆破攻击,因而限制了其投入实际应用。

技术实现思路

[0014]本专利技术针对目前基于哈希的PSI方法中的上述不足,提供一种基于哈希及密钥交换的高效PSI方法,实现一个既能在性能上达到基于哈希PSI算法的高效性,同时又能解决基于哈希PSI算法容易被穷举爆破的安全问题。
[0015]本专利技术为实现其技术目的所采用的技术方案是:一种基于哈希及密钥交换的高效PSI方法,该方法在哈希的过程加入盐值,并将具体PSI哈希匹配计算的过程将由引入的不知道盐值的半诚实第三方完成。
[0016]进一步的,上述的基于哈希及密钥交换的高效PSI方法:包括以下步骤:
[0017]S1、参与PSI计算的双方各自通过哈希算法计算自己隐私数据集中每个数据加入盐值后的哈希值并保存;
[0018]S2、双方各自将生成的哈希值传输给半诚实的第三方;
[0019]S3、所述的半诚实的第三方将各双方的哈希值进行比较,从双方的哈希值集合中,筛选出值相等的哈希值;
[0020]S4、在参与PSI计算的双方的任意方的要求下,所述的半诚实的第三方将筛选出值相等的哈希值发送给任意方的要求方;
[0021]S5、参与PSI计算任意方接收到所述的半诚实的第三方发送过来的筛选后出值相等的哈希值后,与本地保存的哈希值做一个比较,将与所述的半诚实的第三方筛选出值相等的哈希值与本地哈希值对应的原始数据输出,作为PSI算法的最终输出。
[0022]进一步的,上述的基于哈希及密钥交换的高效PSI方法:所述的步骤S1中加入盐值是由参与PSI计算的双方通过密钥交换协议生成共享的随机密钥。
[0023]进一步的,上述的基于哈希及密钥交换的高效PSI方法:所述的半诚实的第三方指的是第三方将遵循协议的步骤完成PSI计算,同时也会好奇,试图通过获取的数据推测参与PSI计算双方的一些敏感信息。
[0024]本专利技术通过引入半诚实第三方,在不牺牲安全性的同时,能够大大提高现有的PSI算法的性能。
[0025]下面结合附图和具体实施例对本专利技术进行详细地说明。
附图说明
[0026]附图1为本专利技术实施例1基于哈希及密钥交换的高效PSI方法流程图。
具体实施方式
[0027]如图1所示,本实施例主要思路来自于解决基于哈希的快速PSI的安全问题,既然基于哈希的PSI容易被暴力攻击,那么在哈希的过程加入盐值即可,哈希加盐也是目前很多公司解决后台密码哈希容易被爆破的方法。盐值的生成则由PSI双方通过密钥交换算法生成,具体PSI哈希匹配计算的过程则交由不知道盐值的半诚实第三方完成。
[0028]这里引入的半诚实指的是第三方将遵循协议的步骤完成PSI计算,同时也会好奇,希望通过获取的数据知道参与PSI计算双方的一些敏感信息。
[0029]由于哈希加入了盐值,半诚实第三方无法进行爆破攻击,而参与PSI计算的双方也无法获取对方非交集数据的哈希值。
[0030]本实施例的具体步如图1所示:
[0031]设参与PSI计算的两方分别为A方和B方,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于哈希及密钥交换的高效PSI方法,其特征在于:该方法在哈希的过程加入盐值,并将具体PSI哈希匹配计算的过程将由引入的不知道盐值的半诚实第三方完成。2.根据权利要求1所述的基于哈希及密钥交换的高效PSI方法,其特征在于:包括以下步骤:S1、参与PSI计算的双方各自通过哈希算法计算自己隐私数据集中每个数据加入盐值后的哈希值并保存;S2、双方各自将生成的哈希值传输给半诚实的第三方;S3、所述的半诚实的第三方将各双方的哈希值进行比较,从双方的哈希值集合中,筛选出值相等的哈希值;S4、在参与PSI计算的双方的任意方的要求下,所述的半诚实的第三方将筛选出值相等的哈希值发送给任意方的要求方;S5...

【专利技术属性】
技术研发人员:谈扬
申请(专利权)人:深圳前海新心数字科技有限公司
类型:发明
国别省市:

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

1