【技术实现步骤摘要】
多方安全计算的方法、装置及系统
[0001]本说明书一个或多个实施例涉及安全
,尤其涉及一种多方安全计算的方法、装置及系统。
技术介绍
[0002]多方安全计算(Secure Multi
‑
Party Computation,MPC)又称为安全多方计算,即多方共同计算出一个函数的结果,而不泄露这个函数各方的输入数据,计算的结果公开给其中的一方或多方。
[0003]混淆电路和秘密分享(secret sharing)都可实现多方安全计算,两者各有优缺点,可以配合一起使用。比如,先基于混淆电路进行第一安全运算,然后针对计算结果进行基于秘密分享的第二安全运算。需要说明,为了实现数据的隐私保护,上述计算结果不能暴露给任何一方,这就需要将混淆电路的计算结果转换为秘密分享分片。
[0004]传统技术中,为了实现上述转换,通常需要在混淆电路中引入额外的运算,比如减法,这极大地影响了多方安全计算效率。
技术实现思路
[0005]本说明书一个或多个实施例描述了一种多方安全计算的方法、装置及系统,可以提高多方安全计算效率。
[0006]第一方面,提供了一种多方安全计算的方法,包括:
[0007]针对混淆电路的n根输出线中任意的第i输出线,第一方随机生成第一比特串作为该第i输出线对应的第一方分片,其中,所述n根输出线的实际真值构成所述混淆电路计算结果的n个比特;
[0008]所述第一方基于所述第一比特串,确定两个第二比特串,该两个第二比特串分别对应于所述第i输出 ...
【技术保护点】
【技术特征摘要】
1.一种多方安全计算的方法,包括:针对混淆电路的n根输出线中任意的第i输出线,第一方随机生成第一比特串作为该第i输出线对应的第一方分片,其中,所述n根输出线的实际真值构成所述混淆电路计算结果的n个比特;所述第一方基于所述第一比特串,确定两个第二比特串,该两个第二比特串分别对应于所述第i输出线的两个真值;所述第一方利用所述混淆电路中针对该第i输出线的两个真值分别标注的两个混淆串,对应加密所述两个第二比特串,并将两个加密结果提供给第二方;所述第二方利用该第i输出线的实际真值对应的实际混淆串,解密所述两个加密结果,得到第i输出线对应的第二方分片;其中,所述实际混淆串通过与所述第一方联合执行所述混淆电路而获得;所述第一方和第二方,各自分别基于所述n根输出线中各输出线对应的本方分片,确定所述计算结果的本方分片。2.根据权利要求1所述的方法,其中,所述确定所述计算结果的本方分片,包括:针对第i输出线,所述第一方计算2的i次方与对应的第一方分片的乘积,得到第i个第一乘积;基于针对所述n根输出线计算得到的n份第一乘积,确定所述计算结果的第一方分片;其中,0≤i≤n
‑
1;针对第i输出线,所述第二方计算2的i次方与对应的第二方分片的乘积,得到第i个第二乘积;基于针对所述n根输出线计算得到的n份第二乘积,确定所述计算结果的第二方分片。3.根据权利要求2所述的方法,其中,所述两个第二比特串各自的全部比特均被加密;所述确定所述计算结果的第一方分片,包括:对所述n份第一乘积求和,并将求和结果作为所述计算结果的第一方分片;所述确定所述计算结果的第二方分片,包括:对所述n份第二乘积求和,并将求和结果作为所述计算结果的第二方分片。4.根据权利要求2所述的方法,其中,所述第二比特串包括t个比特,且n≤t;所述对应加密所述两个第二比特串,包括:利用所述两个混淆串,对应加密所述两个第二比特串各自的从最低位开始的t
‑
i个比特;将所述两个第二比特串各自的经过加密的t
‑
i个比特,作为所述两个加密结果。5.根据权利要求4所述的方法,其中,所述确定所述计算结果的第一方分片,包括:对所述n份第一乘积求和,并将求和结果对2的t次方取模后的取模结果,作为所述计算结果的第一方分片;所述确定所述计算结果的第二方分片,包括:对所述n份第二乘积求和,并将求和结果对2的t次方取模后的取模结果,作为所述计算结果的第二方分片。6.根据权利要求1所述的方法,其中,所述第i输出线的两个真值包括真值0和真值1;所
述确定两个第二比特串,包括:将真值0与所述第一比特串的差值,作为所述两个第二比特串中的一个第二比特串;将真值1与所述第一比特串的差值,作为所述两个第二比特串中的另一个第二比特串。7.根据权利要求6所述的方法,其中,所述对应加密所述两个第二比特串,包括:利用针对所述第i输出线的真值0标注的第一混淆串,加密所述一个第二比特串;利用针对所述第i输出线的真值1标注的第二混淆串,加密所述另一个第二比特串。8.根据权利要求1所述的方法,其中,所述将两个加密结果提供给第二方,包括:将所述两个加密结果乱序后提供给第二方;所述解密所述两个加密结果,包括:所述第二方利用所述第i输出线的实际真值对应的实际混淆串,解密乱序后的所述两个加密结果。9.根据权利要求1所述的方法,还包括:所述第一方和第二方,基于各自确定的所述计算结果的本方分片,联合执行基于秘密分享的目标运算。10.一种多方安全计算的方法,通过第一方执行,包括:针对混淆电路的n根输出线中任意的第i输出线,随机生成第一比特串作为该第i输出线对应的第一方分片,其中,所述n根输出线的实际真值构成所述混淆电路计算结果的n个比特;基于所述第一比特串,确定两个第二比特串,该两个第二比特串分别对应于所述第i输出线的两个真值;利用所述混淆电路中针对该第i输出线的两个真值分别标注的两个混淆串,对应加密所述两个第二比特串,并将两个加密结果提供给第二方,以供所述第二方通过解密所述两个加密结果得到第i输出线对应的第二方分片,进而确定出所述计算结果的第二方分片;基于所述n根输出线中各输出线对应的第一方分片,确定所述计算结果的第一方分片。11.一种多方安全计算的系统,包括:第一方,用于针对混淆电路的n根输出线中任意的第i输出线,随机生成第一比特串作为该第i输出线对应的第一方分片,其中,所述n根输出线...
【专利技术属性】
技术研发人员:李漓春,张祺智,尹栋,赵原,
申请(专利权)人:支付宝杭州信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。