一种保护隐私的多方数据处理方法、系统和设备技术方案

技术编号:36945350 阅读:44 留言:0更新日期:2023-03-22 19:06
一种保护隐私的多方数据处理方法、系统和设备,所述方法包括:第一方的设备将实数向量转换为N/2维复向量,通过同态加密算法基于公钥生成复向量的第一密文,将第一密文发送给第二方的设备,N为同态加密算法的参数值;第二方的设备将第一矩阵与实数向量的内积转换为N/2维参数向量和N/2维复向量的计算式,N/2维参数向量基于第一矩阵确定;基于计算式对第一密文进行同态计算,生成蕴含第一矩阵与实数向量的内积的第二密文,将第二密文发送给第一方的设备;第一方的设备根据同态加密算法,使用与公钥对应的私钥对第二密文进行处理,得到第一矩阵与实数向量的内积。阵与实数向量的内积。阵与实数向量的内积。

【技术实现步骤摘要】
一种保护隐私的多方数据处理方法、系统和设备


[0001]本说明书实施例属于数据处理
,尤其涉及一种保护隐私的多方数据处理方法、系统和设备。

技术介绍

[0002]在一些多方数据处理的场景下,通常包括矩阵持有方和向量持有方,矩阵持有方和向量持有方需要在保护各方隐私数据的情况下完成对矩阵和向量内积的计算。在相关技术中,可通过全同态加密算法实现该计算。全同态加密算法通常适用于对N/2维的向量进行处理,在实际中,向量持有方通常持有N维实数向量,矩阵持有方例如持有N阶方阵。为了适于进行同态加密,矩阵持有方和向量持有方需要分别将矩阵和向量拆分为N/2阶的矩阵和N/2维的向量,这样增加了计算量,需要占用较多的计算资源。

技术实现思路

[0003]本专利技术的目的在于提供一种多方数据处理方案,通过该方案可节省计算资源,提高计算效率。
[0004]本说明书第一方面提供一种保护隐私的多方数据处理方法,所述多方包括第一方和第二方,所述第一方拥有实数向量,所述第二方拥有用于与所述实数向量进行内积的第一矩阵,所述方法包括:
[0005]所述第一方的设备将所述实数向量转换为N/2维复向量,通过同态加密算法基于公钥生成所述复向量的第一密文,将所述第一密文发送给所述第二方的设备,所述N为预设的与所述同态加密算法对应的参数值;
[0006]所述第二方的设备将所述第一矩阵与所述实数向量的内积转换为N/2维参数向量和所述N/2维复向量的计算式,所述N/2维参数向量基于所述第一矩阵确定;基于所述计算式对所述第一密文进行同态计算,生成蕴含所述第一矩阵与所述实数向量的内积的第二密文,将所述第二密文发送给所述第一方的设备;
[0007]所述第一方的设备根据所述同态加密算法,使用与所述公钥对应的私钥对所述第二密文进行处理,得到所述第一矩阵与所述实数向量的内积。
[0008]本说明书第二方面提供一种保护隐私的多方数据处理方法,所述多方包括第一方和第二方,所述第一方拥有实数向量,所述第二方拥有用于与所述实数向量进行内积的第一矩阵,所述方法由第一方设备执行,包括:
[0009]将所述实数向量转换为N/2维复向量;
[0010]通过同态加密算法基于公钥生成所述复向量的第一密文,所述N为预设的与所述同态加密算法对应的参数值;
[0011]将所述第一密文发送给所述第二方的设备;
[0012]从所述第二方的设备接收蕴含所述第一矩阵与所述实数向量的内积的第二密文,所述第二密文通过基于N/2维参数向量和所述N/2维复向量的计算式对所述第一密文进行
同态计算而得到,所述N/2维参数向量基于所述第一矩阵确定;
[0013]根据所述同态加密算法,使用与所述公钥对应的私钥对所述第二密文进行处理,得到所述第一矩阵与所述实数向量的内积。
[0014]本说明书第三方面提供一种保护隐私的多方数据处理方法,所述多方包括第一方和第二方,所述第一方拥有实数向量,所述第二方拥有用于与所述实数向量进行内积的第一矩阵,所述方法由第二方设备执行,包括:
[0015]从所述第一方的设备接收第一密文,所述第一密文为通过同态加密算法基于公钥生成的N/2维复向量的密文,所述N/2维复向量基于所述实数向量生成,所述N为预设的与所述同态加密算法对应的参数值;
[0016]将所述第一矩阵与所述实数向量的内积转换为N/2维参数向量和所述N/2维复向量的计算式,所述N/2维参数向量基于所述第一矩阵确定;
[0017]基于所述计算式对所述第一密文进行同态计算,生成蕴含所述第一矩阵与所述实数向量的内积的第二密文;
[0018]将所述第二密文发送给所述第一方的设备。
[0019]本说明书第四方面提供一种保护隐私的多方数据处理系统,所述多方包括第一方和第二方,所述第一方拥有实数向量,所述第二方拥有用于与所述实数向量进行内积的第一矩阵,
[0020]所述第一方的设备用于:将所述实数向量转换为N/2维复向量,通过同态加密算法基于公钥生成所述复向量的第一密文,将所述第一密文发送给所述第二方的设备,所述N为预设的与所述同态加密算法对应的参数值;
[0021]所述第二方的设备用于:将所述第一矩阵与所述实数向量的内积转换为N/2维参数向量和所述N/2维复向量的计算式,所述N/2维参数向量基于所述第一矩阵确定;基于所述计算式对所述第一密文进行同态计算,生成蕴含所述第一矩阵与所述实数向量的内积的第二密文,将所述第二密文发送给所述第一方的设备;
[0022]所述第一方的设备还用于:根据所述同态加密算法,使用与所述公钥对应的私钥对所述第二密文进行处理,得到所述第一矩阵与所述实数向量的内积。
[0023]本说明书第五方面提供一种多方数据处理系统中的第一方设备,所述多方包括第一方和第二方,所述第一方拥有实数向量,所述第二方拥有用于与所述实数向量进行内积的第一矩阵,所述第一方设备包括:
[0024]转换单元,用于将所述实数向量转换为N/2维复向量;
[0025]生成单元,用于通过同态加密算法基于公钥生成所述复向量的第一密文,所述N为预设的与所述同态加密算法对应的参数值;
[0026]发送单元,用于将所述第一密文发送给所述第二方的设备;
[0027]接收单元,用于从所述第二方的设备接收蕴含所述第一矩阵与所述实数向量的内积的第二密文,所述第二密文通过基于N/2维参数向量和所述N/2维复向量的计算式对所述第一密文进行同态计算而得到,所述N/2维参数向量基于所述第一矩阵确定;
[0028]处理单元,用于根据所述同态加密算法,使用与所述公钥对应的私钥对所述第二密文进行处理,得到所述第一矩阵与所述实数向量的内积。
[0029]本说明书第六方面提供一种多方数据处理系统中的第二方设备,所述多方包括第
一方和第二方,所述第一方拥有实数向量,所述第二方拥有用于与所述实数向量进行内积的第一矩阵,所述第二方设备包括:
[0030]接收单元,用于从所述第一方的设备接收第一密文,所述第一密文为通过同态加密算法基于公钥生成的N/2维复向量的密文,所述N/2维复向量基于所述实数向量生成,所述N为预设的与所述同态加密算法对应的参数值;
[0031]转换单元,用于将所述第一矩阵与所述实数向量的内积转换为N/2维参数向量和所述N/2维复向量的计算式,所述N/2维参数向量基于所述第一矩阵确定;
[0032]计算单元,用于基于所述计算式对所述第一密文进行同态计算,生成蕴含所述第一矩阵与所述实数向量的内积的第二密文;
[0033]发送单元,用于将所述第二密文发送给所述第一方的设备。
[0034]本说明书第七方面提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第二方面或第三方面所述的方法。
[0035]本说明书第八方面提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种保护隐私的多方数据处理方法,所述多方包括第一方和第二方,所述第一方拥有实数向量,所述第二方拥有用于与所述实数向量进行内积的第一矩阵,所述方法包括:所述第一方的设备将所述实数向量转换为N/2维复向量,通过同态加密算法生成所述复向量的第一密文,将所述第一密文发送给所述第二方的设备,所述N为预设的与所述同态加密算法对应的参数值;所述第二方的设备将所述第一矩阵与所述实数向量的内积转换为N/2维参数向量和所述N/2维复向量的计算式,所述N/2维参数向量基于所述第一矩阵确定;基于所述计算式对所述第一密文进行同态计算,生成蕴含所述第一矩阵与所述实数向量的内积的第二密文,将所述第二密文发送给所述第一方的设备;所述第一方的设备根据所述同态加密算法对所述第二密文进行处理,得到所述第一矩阵与所述实数向量的内积。2.根据权利要求1所述的方法,所述第二方的设备将所述第一矩阵与所述实数向量的内积转换为N/2维参数向量和所述N/2维复向量的计算式,包括:所述第二方设备将所述第一矩阵与所述实数向量的内积转换为第一公式,所述第一公式中包括第二矩阵与所述复向量的内积、及第三矩阵与所述复向量的共轭向量的内积,基于所述第二矩阵和所述第三矩阵确定所述N/2维参数向量,将所述第一公式转换为所述N/2维参数向量、所述N/2维复向量、所述N/2维复向量的共轭向量的计算式。3.根据权利要求2所述的方法,所述实数向量为N维向量,所述第一方的设备将所述实数向量转换为N/2维复向量,包括:所述第一方的设备将所述实数向量中的前一半的分量或者后一半的分量转换为所述N/2维复向量中的虚部。4.根据权利要求2所述的方法,所述实数向量为M维向量,M小于N,且M整除N,所述第一方的设备将所述实数向量转换为N/2维复向量,包括:所述第一方的设备将所述实数向量中的前一半的分量或者后一半的分量转换为M/2维复向量中的虚部,将N/M个M/2维复向量拼接为N/2维复向量。5.根据权利要求1或2所述的方法,所述计算式中包括向量乘法、向量加法、常向量乘法、共轭变换和旋转变换中的至少一项。6.根据权利要求3所述的方法,所述第二矩阵和所述第三矩阵为N/2阶方阵,所述基于所述第二矩阵和所述第三矩阵确定所述N/2维参数向量,包括:从所述第二矩阵和所述第三矩阵的对角方向确定N/2维参数向量。7.根据权利要求3所述的方法,所述第二矩阵为M/2行N/2列矩阵,其中,M小于N,且M整除N,所述基于所述第二矩阵和所述第三矩阵确定所述N/2维参数向量,包括:将N/M个所述第二矩阵在其竖直方向进行拼接,得到N/2阶方阵,从所述N/2阶方阵的对角方向确定所述N/2维参数向量。8.根据权利要求4所述的方法,所述第二矩阵为N/2行M/2列矩阵,其中,M小于N,且M整除N,所述基于所述第二矩阵和所述第三矩阵确定所述N/2维参数向量,包括:将N/M个所述第二矩阵在其水平方向进行拼接,得到N/2阶方阵,从所述N/2阶方阵的对角方向确定所述N/2维参数向量。9.根据权利要求1所述的方法,其中,所述第一方为数据库持有方,第二方为数据查询
方,所述第一向量用于指示所述第一矩阵中的待查询的数据。10.一种保护隐私的多方数据处理方法,所述多方包括第一方和第二方,所述第一方拥有实数向量,所述第二方拥有用于与所述实数向量进行内积的第一矩阵,所述方法由第一方设备执行,包括:将所述实数向量转换为N/2维复向量;通过同态加密算法生成所述复向量的第一密文,所述N为预设的与所述同态加密算法对应的参数值;将所述第一密文发送给所述第二方的设备;从所述第二方的设备接收蕴含所述第一矩阵与所述实数向量的内积的第二密文,所述第二密文通过基于N/2维参数向量和所述N/2维复向量的计算式对所述...

【专利技术属性】
技术研发人员:何家兴王尧
申请(专利权)人:蚂蚁区块链科技上海有限公司
类型:发明
国别省市:

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

1