数据处理方法、装置、系统及电子设备制造方法及图纸

技术编号:38614223 阅读:15 留言:0更新日期:2023-08-26 23:41
本申请提供一种数据处理方法、装置、系统及电子设备,元素数量多的第一参与方针对每个第一元素,将目标长度的随机数添加至第一元素,获得第一补位元素;按照目标循环次数,利用目标盐值对多个第一补位元素进行安全哈希计算,获得多个第一计算值;将由多个第一计算值构成的第一结果集合发送至元素数量少的第二参与方,供第二参与方针对第二集合中的每个第二元素,分别将预设取值范围内的多个候选随机数添加至第二元素,获得第二补位元素,按照目标循环次数,利用目标盐值对多个第二补位元素进行安全哈希计算,获得多个第二计算值,基于多个第二计算值中,位于第一结果集合中的多个目标计算值确定交集集合。本申请的方案提高了隐私数据的安全性。隐私数据的安全性。隐私数据的安全性。

【技术实现步骤摘要】
数据处理方法、装置、系统及电子设备


[0001]本申请实施例涉及数据处理领域,尤其涉及一种数据处理方法、装置、系统及电子设备。

技术介绍

[0002]隐私集合求交(Privacy

preserving Set Intersection,简称PSI)是一种保护隐私的协议,允许持有各自数据集合的多个参与方计算数据的交集,同时不泄露任何交集以外的信息,在数据隐私保护、密码学等领域具有广泛应用。
[0003]在两个参与方进行隐私集合求交的场景中,通常是由其中一个参与方在自己的数据集合上利用约定好的密码学哈希函数计算哈希值,并将计算结果发送至另一个参与方,由另一个参与方计算数据交集。
[0004]然而,当两个参与方各自的数据集合大小不一致时,即非平衡PSI,存在着数据集合较小的参与方,可以通过哈希碰撞的方式,在有限的时间内碰撞出另一个参与方传过来的哈希值,从而窃取到额外的信息的问题,影响隐私数据的安全性。

技术实现思路

[0005]本申请实施例提供一种数据处理方法、装置、系统及电子设备,用以提高隐私数据的安全性。
[0006]第一方面,本申请实施例提供了一种数据处理方法,应用于第一参与方,所述第一参与方对应第一集合,所述第一集合中包括多个第一元素,所述方法包括:针对每一个第一元素,将目标长度的随机数添加至所述第一元素后,获得第一补位元素;按照目标循环次数,利用目标盐值对多个第一补位元素进行安全哈希计算,获得多个第一计算值;将由所述多个第一计算值构成的第一结果集合发送至第二参与方,以供所述第二参与方针对第二集合中的每一个第二元素,分别将预设取值范围内的多个候选随机数添加至所述第二元素后,获得第二补位元素,并按照所述目标循环次数,利用所述目标盐值对多个第二补位元素进行安全哈希计算,获得多个第二计算值,以及基于所述多个第二计算值中,位于所述第一结果集合中的多个目标计算值确定交集集合;其中,所述第二参与方对应的第二集合中包括的第二元素的数量少于所述第一集合中包括的第一元素的数量;接收所述第二参与方发送的交集集合。
[0007]可选的,所述方法还包括:将第一公钥发送至所述第二参与方,以及接收所述第二参与方发送的第二公钥;利用所述第二公钥与第一私钥进行乘积计算,获得第一积值;基于所述第一积值与第二积值确定协商值,所述第二积值由所述第二参与方基于接收到的第一公钥与第二私钥进行乘积计算获得;
对所述协商值进行哈希计算,获得目标盐值;基于所述第一集合中包括的第一元素的数量,所述第二集合中包括的第二元素的数量,以及预设要求,确定目标长度及目标循环次数。
[0008]可选的,所述按照目标循环次数,利用目标盐值对多个第一补位元素进行安全哈希计算,获得多个第一计算值,包括:针对每一个第一补位元素,按照目标循环次数,利用目标盐值,按照如下公式对所述第一补位元素进行安全哈希计算,获得第一计算值:Hb_i = pbkdf2(P
A
,salt,times);其中,Hb_i 表示第一计算值,pbkdf2表示安全哈希函数,P
A
表示第一补位元素,salt表示目标盐值,times表示目标循环次数。
[0009]第二方面,本申请实施例提供了一种数据处理方法,应用于第二参与方,所述第二参与方对应第二集合,所述第二集合中包括多个第二元素,所述方法包括:接收第一参与方发送的第一结果集合;所述第一参与方对应第一集合,所述第一集合中包括多个第一元素,所述第一集合中包括的第一元素的数量多于所述第二集合中包括的第二元素的数量,所述第一结果集合中包括多个第一计算值,每个第一计算值由所述第一参与方按照目标循环次数,利用目标盐值对第一补位元素进行安全哈希计算获得,所述第一补位元素由所述第一参与方将目标长度的随机数添加至第一元素后获得;针对每一个第二元素,分别将预设取值范围内的多个候选随机数添加至所述第二元素后,获得第二补位元素;按照目标循环次数,利用目标盐值对多个第二补位元素进行安全哈希计算,获得多个第二计算值;基于所述多个第二计算值中,位于所述第一结果集合中的多个目标计算值确定交集集合;将所述交集集合发送至所述第一参与方。
[0010]可选的,所述按照目标循环次数,利用目标盐值对多个第二补位元素进行安全哈希计算,获得多个第二计算值,包括:针对每一个第二补位元素,按照目标循环次数,利用目标盐值,按照如下公式对所述第二补位元素进行安全哈希计算,获得第二计算值:Ha_i = pbkdf2(P
B
,salt,times);其中,Ha_i 表示第二计算值,pbkdf2表示安全哈希函数,P
B
表示第二补位元素,salt表示目标盐值,times表示目标循环次数。
[0011]第三方面,本申请实施例提供了一种数据处理装置,包括:第一补位模块,用于针对每一个第一元素,将目标长度的随机数添加至所述第一元素后,获得第一补位元素;第一计算模块,用于按照目标循环次数,利用目标盐值对多个第一补位元素进行安全哈希计算,获得多个第一计算值;第一发送模块,用于将由所述多个第一计算值构成的第一结果集合发送至第二参与方,以供所述第二参与方针对第二集合中的每一个第二元素,分别将预设取值范围内的多个候选随机数添加至所述第二元素后,获得第二补位元素,并按照所述目标循环次数,利用所述目标盐值对多个第二补位元素进行安全哈希计算,获得多个第二计算值,以及基于所述多个第二计算值中,位于所述第一结果集合中的多个目标计算值确定交集集合;其中,
所述第二参与方对应的第二集合中包括的第二元素的数量少于所述第一集合中包括的第一元素的数量;第一接收模块,用于接收所述第二参与方发送的交集集合。
[0012]第四方面,本申请实施例提供了一种数据处理装置,包括:第二接收模块,用于接收第一参与方发送的第一结果集合;所述第一参与方对应第一集合,所述第一集合中包括多个第一元素,所述第一集合中包括的第一元素的数量多于所述第二集合中包括的第二元素的数量,所述第一结果集合中包括多个第一计算值,每个第一计算值由所述第一参与方按照目标循环次数,利用目标盐值对第一补位元素进行安全哈希计算获得,所述第一补位元素由所述第一参与方将目标长度的随机数添加至第一元素后获得;第二补位模块,用于针对每一个第二元素,分别将预设取值范围内的多个候选随机数添加至所述第二元素后,获得第二补位元素;第二计算模块,用于按照目标循环次数,利用目标盐值对多个第二补位元素进行安全哈希计算,获得多个第二计算值;第一确定模块,用于基于所述多个第二计算值中,位于所述第一结果集合中的多个目标计算值确定交集集合;第二发送模块,用于将所述交集集合发送至所述第一参与方。
[0013]第五方面,本申请实施例提供了一种数据处理系统,包括第一参与方以及第二参与方,所述第一参与方对应第一集合,所述第一集合中包括多个第一元素,所述第二参与方对应第二集合,所述第二集合中包括多个第二元素,所述第一集合中包括的第一元素的数量多于所述第二集合中包括的第二元素的数量;本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,应用于第一参与方,所述第一参与方对应第一集合,所述第一集合中包括多个第一元素,所述方法包括:针对每一个第一元素,将目标长度的随机数添加至所述第一元素后,获得第一补位元素;按照目标循环次数,利用目标盐值对多个第一补位元素进行安全哈希计算,获得多个第一计算值;将由所述多个第一计算值构成的第一结果集合发送至第二参与方,以供所述第二参与方针对第二集合中的每一个第二元素,分别将预设取值范围内的多个候选随机数添加至所述第二元素后,获得第二补位元素,并按照所述目标循环次数,利用所述目标盐值对多个第二补位元素进行安全哈希计算,获得多个第二计算值,以及基于所述多个第二计算值中,位于所述第一结果集合中的多个目标计算值确定交集集合;其中,所述第二参与方对应的第二集合中包括的第二元素的数量少于所述第一集合中包括的第一元素的数量;接收所述第二参与方发送的交集集合。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:将第一公钥发送至所述第二参与方,以及接收所述第二参与方发送的第二公钥;利用所述第二公钥与第一私钥进行乘积计算,获得第一积值;基于所述第一积值与第二积值确定协商值,所述第二积值由所述第二参与方基于接收到的第一公钥与第二私钥进行乘积计算获得;对所述协商值进行哈希计算,获得目标盐值;基于所述第一集合中包括的第一元素的数量,所述第二集合中包括的第二元素的数量,以及预设要求,确定目标长度及目标循环次数。3.根据权利要求1所述的方法,其特征在于,所述按照目标循环次数,利用目标盐值对多个第一补位元素进行安全哈希计算,获得多个第一计算值,包括:针对每一个第一补位元素,按照目标循环次数,利用目标盐值,按照如下公式对所述第一补位元素进行安全哈希计算,获得第一计算值:Hb_i=pbkdf2(P
A
,salt,times);其中,Hb_i表示第一计算值,pbkdf2表示安全哈希函数,P
A
表示第一补位元素,salt表示目标盐值,times表示目标循环次数。4.一种数据处理方法,其特征在于,应用于第二参与方,所述第二参与方对应第二集合,所述第二集合中包括多个第二元素,所述方法包括:接收第一参与方发送的第一结果集合;所述第一参与方对应第一集合,所述第一集合中包括多个第一元素,所述第一集合中包括的第一元素的数量多于所述第二集合中包括的第二元素的数量,所述第一结果集合中包括多个第一计算值,每个第一计算值由所述第一参与方按照目标循环次数,利用目标盐值对第一补位元素进行安全哈希计算获得,所述第一补位元素由所述第一参与方将目标长度的随机数添加至第一元素后获得;针对每一个第二元素,分别将预设取值范围内的多个候选随机数添加至所述第二元素后,获得第二补位元素;按照目标循环次数,利用目标盐值对多个第二补位元素进行安全哈希计算,获得多个第二计算值;基于所述多个第二计算值中,位于所述第一结果集合中的多个目标计算值确定交集集
合;将所述交集集合发送至所述第一参与方。5.根据权利要求4所述的方法,其特征在于,所述按照目标循环次数,利用目标盐值对多个第二补位元素进行安全哈希计算,获得多个第二计算值,包括:针对每一个第二补位元素,按照目标循环次数,利用目标盐值,按照如下公式对所述第二补位元素进行安全哈希计算,获得第二计算值:Ha_i=pbkdf2(P
B
,salt,times);其中,Ha_i表示第二计算值,pbkdf2表示安全哈希函数,P
B
表示第二...

【专利技术属性】
技术研发人员:龚晓燕张庆勇胡进
申请(专利权)人:武汉信安珞珈科技有限公司
类型:发明
国别省市:

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

1