【技术实现步骤摘要】
【国外来华专利技术】用于利用SPDZ的更快速的安全多方内积计算的方法优先权要求本申请要求题为“MethodforFasterSecureMultipartyInnerProductwithSPDZ”并且在2017年9月29日提交的申请号为62/565,729的美国临时申请的权益,所述美国临时申请的全部内容由此通过引用被明确地并入本文中。
本公开内容一般地涉及信息安全的领域,并且更具体地涉及执行多方内积计算、而同时保持对计算的单独的输入的隐私性的系统和方法。
技术介绍
安全多方计算(MPC)系统使得能够实现包括多方的群组,其中各“方”是计算设备,所述计算设备用于执行产生由所有方共享的结果的联合计算,而同时保持各自仅仅对于单方是已知的单独数据元素的隐私性。例如,在MPC系统中解决的一个经典问题是确定群组中的哪一方具有最大值,而不将所述最大值或任何方的任何其它值泄漏(divulge)给群组中的其它方。安全MPC协议可以实现对于该问题以及对于宽范围的数学运算的解决方案。一种类型的安全MPC协议被称为SPDZ协议,其使得宽范围的数学运算能够由群组中的多方来执行,所述群组中的多方各自存储不与群组中的其它方共享的数据的单独集合。SPDZ协议使得两个或更多方的群组能够执行加法/减法以及乘法运算,其中各方能够访问可用信息的仅仅一部分,并且不能仅仅使用信息的可访问部分以及SPDZ计算的最终结果来确定由其它方持有的信息,使所述SPDZ计算的最终结果可用于群组中的所有方。虽然SPDZ协议可以用于执行能够被分解成加法/减法以及乘法 ...
【技术保护点】
1.一种用于内积的安全多方计算的方法,包括:/n利用第一节点中的处理器来执行多个多方加法,每个多方加法在来自第一向量和第二向量中的对应元素对的元素的交替共享之间生成第一总和共享与第二总和共享之一;/n利用所述第一节点中的所述处理器和网络接口设备来执行与至少一个其它节点的多个多方乘法,每个多方乘法生成内积对共享,所述内积对共享与同所述第一向量和第二向量中的每个元素对相对应的所述第一总和共享与第二总和共享的乘积相对应;以及/n利用所述第一节点中的处理器来执行来自所述多个多方乘法的每个内积对共享与同所述第一向量中的元素对相对应的对乘积的第一多个经取负的共享以及同所述第二向量中的元素对相对应的对乘积的第二多个经取负的共享的另一多方加法,以生成所述第一向量与第二向量的内积的共享。/n
【技术特征摘要】 【专利技术属性】
【国外来华专利技术】20170929 US 62/5657291.一种用于内积的安全多方计算的方法,包括:
利用第一节点中的处理器来执行多个多方加法,每个多方加法在来自第一向量和第二向量中的对应元素对的元素的交替共享之间生成第一总和共享与第二总和共享之一;
利用所述第一节点中的所述处理器和网络接口设备来执行与至少一个其它节点的多个多方乘法,每个多方乘法生成内积对共享,所述内积对共享与同所述第一向量和第二向量中的每个元素对相对应的所述第一总和共享与第二总和共享的乘积相对应;以及
利用所述第一节点中的处理器来执行来自所述多个多方乘法的每个内积对共享与同所述第一向量中的元素对相对应的对乘积的第一多个经取负的共享以及同所述第二向量中的元素对相对应的对乘积的第二多个经取负的共享的另一多方加法,以生成所述第一向量与第二向量的内积的共享。
2.根据权利要求1所述的方法,其中所述第一向量和第二向量各自具有第一数目的元素,并且由所述第一节点中的所述处理器和网络接口所执行的多方乘法的数目是所述第一数目的一半。
3.根据权利要求1所述的方法,此外包括:
利用所述第一节点中的处理器和网络接口设备来在执行所述多个多方乘法之前生成多个Beaver三元组,每个Beaver三元组包括在所述第一节点与所述至少一个其它节点之间重共享的三个值的共享,在所述多个多方乘法中的每个多方乘法消耗所述多个Beaver三元组中的一个Beaver三元组的所述三个值的共享。
4.根据权利要求1所述的方法,此外包括:
利用所述第一节点中的处理器、通过在所述第一节点中的存储器中被存储的所述第一向量中的元素对的乘法来生成第一多个对乘积;
利用所述第一节点中的处理器、使用公共密钥来对所述第一多个对乘积中的每个对乘积进行加密,以生成第一多个经加密的对乘积;
利用所述第一节点中的处理器、使用经加密的消息认证码(MAC)密钥来为所述第一多个经加密的对乘积生成第一多个经加密的签名;以及
利用所述第一节点中的处理器和网络接口设备来执行多个重共享操作,以在所述第一节点与所述至少一个其它节点之间分布每个经加密的签名的共享。
5.根据权利要求1所述的方法,其中所述至少一个其它节点包括多个其它节点。
6.一种用于内积的安全多方计算的方法,包括:
利用第一节点中的处理器和网络接口设备来执行第一多个共享分布操作,以在所述第一节点与至少一个其它节点之间分布第一多个共享,所述第一多个共享与在所述第一节点的存储器中被存储的第一向量中的多个元素相对应;
利用所述第一节点中的处理器、基于所述第一向量中的所述第一多个元素中的至少一对元素的乘法来生成至少一个对乘积;
利用所述第一节点中的所述处理器和网络接口设备来执行至少一个共享分布操作,以在所述第一节点与所述至少一个其它节点之间分布所述至少一个第一对乘积的共享;
利用所述第一节点中的所述处理器和网络接口设备来从所述至少一个其它节点接收第二多个共享,所述第二多个共享对应于第二向量中的多个元素;
利用所述第一节点中的所述处理器和网络接口设备来从所述至少一个其它节点接收至少一个第二对乘积共享,所述至少一个第二对乘积共享对应于所述第二向量中的两个元素的至少一个对乘积;
利用所述第一节点中的所述处理器来执行多个多方加法,每个多方加法在来自第一向量和第二向量中的对应元素对的元素的交替共享之间生成第一总和共享与第二总和共享之一;
利用所述第一节点中的所述处理器和网络接口设备来执行与所述至少一个其它节点的至少一个多方乘法,每个多方乘法生成内积对共享,所述内积对共享与同所述第一向量和第二向量中的每个元素对相对应的所述第一总和共享与第二总和共享的乘积相对应;以及
利用所述第一节点中的所述处理器来执行来自所述至少一个多方乘法的每个内积对共享与所述至少一个第一对乘积共享的取负以及所述至少一个第二对乘积共享的取负的另一多方加法,以生成所述第一向量与第二向量的内积的共享。
技术研发人员:范欣欣,郑清吉,JG梅尔尚,
申请(专利权)人:罗伯特·博世有限公司,
类型:发明
国别省市:德国;DE
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。