【技术实现步骤摘要】
基于多方安全计算的选择问题处理方法
[0001]本说明书涉及信息
,特别涉及基于多方安全计算的选择问题处理方法。
技术介绍
[0002]安全多方计算又称为多方安全计算,即多方共同计算出一个函数的结果,而不泄露这个函数各方的输入数据,计算的结果以和共享形式存储于多方或公开给其中的一方或多方。因此,通过安全多方计算,能够让参与的各方在不暴露各自原始数据的情况下,计算出函数的结果。
[0003]一些安全多方计算过程涉及选择问题,所述选择问题可描述为从包含n个元素的集合中选出m个元素(简称n选m问题)。目前,希望提供一种基于多方安全计算的选择问题处理方法。
技术实现思路
[0004]本说明书实施例之一提供一种基于多方安全计算的选择问题处理方法。其中,安全计算的参与方包括第一方和第二方;第一方持有私密的单射f,单射f为集合X到集合A的单射;第二方持有私密的m个原像P1,P2,
…
,P
m
,m个原像P1,P2,
…
,P
m
均属于集合X, ...
【技术保护点】
【技术特征摘要】
1.一种基于多方安全计算的选择问题处理方法,其中,安全计算的参与方包括第一方和第二方;第一方持有私密的单射f,单射f为集合X到集合A的单射;第二方持有私密的m个原像P1,P2,...,P
m
,m个原像P1,P2,...,P
m
均属于集合X,集合X的元素个数为n;第一方和第二方共有单射q,单射q用于将集合X的元素映射到预设的向量空间;所述方法由第一方的设备执行,其包括:获得与单射f和单射q对应的多项式g;其中,多项式g以集合X中任一元素在单射q下的像的各向量元素为输入时的输出等于该元素在单射f下的像;获得多项式第一方获得的多项式与第二方获得的线性变换矩阵σ和多项式h1的满足,多项式在线性变换矩阵σ作用下得到的复合多项式的两个分片为多项式h0和多项式h1;其中,所述线性变换矩阵σ用于与向量运算,以改变向量中元素的位置,所述作用使得复合多项式以线性变换矩阵σ和第一向量的运算结果的各向量元素为输入时的输出,等于多项式以所述第一向量的各向量元素为输入时的输出;从第二方的设备接收与Q1,Q2,...,Q
m
分别对应的其中,Q1,Q2,...,Q
m
分别为m个原像P1,P2,...,P
m
在单射q下的像,中的每个向量为线性变换矩阵σ和Q1,Q2,...,Q
m
中相应向量的运算结果;计算多项式h0分别以的各向量元素为输入时的输出并基于获得[f(P1),f(P2),...,f(P
m
)]的第一分片;获得多项式δg,并将多项式δg发送给第二方的设备,以使第二方的设备能够获得[f(P1),f(P2),...,f(P
m
)]的第二分片。2.如权利要求1所述的方法,其中,所述向量空间中的向量为m维且汉明权重为k,且所述向量的每个向量元素为0或1;多项式均为m元k次齐次多项式,多项式中的单项式系数均为集合A中的元素。3.如权利要求1所述的方法,其中,所述获得多项式包括:利用伪随机函数生成多项式的单项式系数,以获得多项式利用伪随机函数生成多项式h0的单项式系数,以获得多项式h0。4.如权利要求1所述的方法,其中,所述获得多项式包括:利用伪随机函数生成多项式的单项式系数,以获得多项式从第三方设备接收多项式h0的单项式系数,以获得多项式h0。5.如权利要求1所述的方法,其中,所述基于获得[f(P1),f(P2),...,f(P
m
)]的第一分片,包括:将分别作为[f(P1),f(P2),...,f(P
m
)]的第一分片。6.如权利要求1所述的方法,其中,所述运算为矩阵乘积,所述线性变换矩阵σ的每个矩阵元素为0或1。
7.如权利要求2所述的方法,其中,所述向量空间的元素个数大于或等于集合A的元素个数。8.如权利要求2所述的方法,其中,所述m元k次齐次多项式表示为其中,a
i1,i2...ik
为集合A中的元素。9.一种基于多方安全计算的选择问题处理系统,其中,安全计算的参与方包括第一方和第二方;第一方持有私密的单射f,单射f为集合X到集合A的单射;第二方持有私密的m个原像P1,P2,...,P
m
,m个原像P1,P2,...,P
m
均属于集合X,集合X的元素个数为n;第一方和第二方共有单射q,单射q用于将集合X的元素映射到预设的向量空间;所述系统在第一方的设备上实现,其包括:第一获得模块,用于获得与单射f和单射q对应的多项式g;其中,多项式g以集合X中任一元素在单射q下的像的各向量元素为输入时的输出等于该元素在单射f下的像;第二获得模块,用于获得多项式第一方获得的多项式与第二方获得的线性变换矩阵σ和多项式h1的满足,多项式在线性变换矩阵σ作用下得到的复合多项式的两个分片为多项式h0和多项式h1;其中,所述线性变换矩阵σ用于与向量运算,以改变向量中元素的位置,所述作用使得复合多项式以线性变换矩阵σ和第一向量的运算结果的各向量元素为输入时的输出,等于多项式以所述第一向量的各向量元素为输入时的输出;第一接收模块,用于从第二方的设备接收与Q1,Q2,...,Q
m
分别对应的其中,Q1,Q2,...,Q
m
分别为m个原像P1,P2,...,P
m
在单射q下的像,中的每个向量为线性变换矩阵σ和Q1,Q2,...,Q
m
中相应向量的运算结果;第一计算模块,用于计算多项式h0分别以的各向量元素为输入时的输出并基于获得[f(P1),f(P2),...,f(P
m
)]的第一分片;第一发送模块,用于获得多项式δg,并将多项式δg发送给第二方的设备,以使第二方的设备能够获得[f(P1),f(P2),...,f(P
m
)]的第二分片。10.一种基于多方安全计算的选择问题处理装置,其中,包括处理器和存储设备,所述存储设备用于存储指令,当所述处理器执行指令时,实现如权利要求1~8中任一项所述的方法。11.一种基于多方安全计算的选择问题处理方法,其中,安全计算的参与方包括第一方和第二方;第一方持有私密的单射f,单射f为集合X到集合A的单射;第二方持有私密的m个原像P1,P2,...,P
m
,m个原像P1,P2,...,P
m
均属于集合X,集合X的元...
【专利技术属性】
技术研发人员:张祺智,李漓春,殷山,
申请(专利权)人:支付宝杭州信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。