一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

分布式安全多方计算的制作方法

2022-08-17 08:20:46 来源:中国专利 TAG:

技术特征:
1.一种用于提供分布式数据处理服务30的计算机实现的方法(200),所述分布式数据处理服务30用于使用经由通信网络通信地耦合的至少第一和第二计算引擎对私有输入数据的至少第一和第二项(x1、x2)执行函数的安全多方计算,所述方法包括:-通过将至少第二计算引擎(vcp2)绑定到第一计算引擎,使用第一计算引擎(vcp1)建立(22)分布式数据处理服务;-使用由对应的第一和第二计算引擎(vcp1、2)管理的第一和第二密码引擎提供的分布式密码生成服务(cgs)生成(204)在安全多方计算的在线阶段期间所需的多个密码原语,其中在安全多方计算之前的离线阶段期间生成一部分密码原语,并且所述多个密码原语由相应的第一和第二计算引擎(vcp1、2)管理的对应的至少第一和第二密码数据存储提供的分布式密码数据存储服务(cds)存储;-由分布式数据处理服务获得(206)安全多方计算的服务调用以及私有输入数据的至少第一和第二项;-在由对应的第一和第二计算引擎(vcp1、2)管理的至少第一(ose1)和第二(ose2)对象存储引擎提供的分布式数据处理服务的分布式对象存储服务(oss)中存储(208)私有输入数据的至少第一和第二项;-在在线阶段期间,使用由对应的第一和第二计算引擎(vcp1、2)管理的第一和第二多方计算引擎(mpc1、2)提供的分布式数据处理服务的分布式多方计算服务(mcs)对私有输入数据的至少第一和第二项执行(210)分布式安全多方计算,其中第一多方计算引擎与至少第二多方计算引擎一起执行安全多方计算;和-经由分布式对象存储服务存储(212)安全多方计算的至少一个结果,和/或向至少第一或第二客户端输出所述至少一个结果。2.根据权利要求1所述的计算机实现的方法(200),其中建立分布式数据处理服务包括实例化包括至少第一和第二计算引擎(vcp1、2)的虚拟云,和/或将至少第二计算引擎(vcp2)绑定到第一计算引擎(vcp1)包括建立和交换初始密码原语以在至少第一和第二计算引擎之间建立至少一个认证的通信信道,其中初始密码原语可选地包括一个或多个同态密钥或共享消息认证码mac密钥。3.根据权利要求1或2中的一项所述的计算机实现的方法(200),进一步包括在建立分布式数据处理服务之后执行发现过程,其中所述发现过程包括:-经由第一多方计算引擎(mpc1)编排发现协议,以标识虚拟云中至少第二多方计算引擎(mpc2)的存在以及第二计算引擎和/或第二多方计算引擎的通信端点标识符;-建立通信信道,以将第一多方计算引擎(mpc1)通信地耦合到至少第二多方计算引擎(mpc2);-经由第一多方计算引擎,使用在通信信道上通信的至少第一和第二多方计算引擎来编排安全多方计算。4.根据前述权利要求中的一项所述的计算机实现的方法(200),其中用于执行函数的安全多方计算的分布式数据处理服务应用spdz协议中的一项,特别是fresco实现或scale mamba实现。5.根据前述权利要求中的一项所述的计算机实现的方法(200),其中,提供分布式密码生成服务、分布式密码数据存储服务、分布式对象存储服务和分
布式安全多方计算服务中的每一个的部分的至少第一和第二计算引擎(vcp1、2)使用基于容器编排的服务来实现,所述基于容器编排的服务可选地包括kubernetes(tm)、mesos(tm)或docker swarm(tm)。6.根据前述权利要求中的一项所述的计算机实现的方法(200),进一步包括:-经由分布式密码生成服务的负载监视器,监视分布式密码生成服务、分布式密码数据存储服务、分布式对象存储服务和分布式安全多方计算中的一个或多个上的当前或预期的计算负载;-如果负载监视器确定当前或预期的计算负载超过或将超过上负载阈值:-适当时,指令容器编排器增加提供分布式密码生成服务、分布式密码数据存储服务、分布式对象存储服务和分布式安全多方计算中的一个或多个的容器的数量;和/或-如果负载监视器确定当前或预期的计算负载落入下负载阈值以下或将落入下负载阈值以下:-适当时,指令容器编排器减少提供分布式密码生成服务、分布式密码数据存储服务、分布式对象存储服务和分布式安全多方计算中的一个或多个的容器的数量。7.根据前述权利要求中的一项所述的计算机实现的方法(200),进一步包括:-在由第一计算引擎(vcp1)管理的第一密码引擎处,监视分别存储在至少第一和第二密码数据存储中的密码原语的级别;-在第一密码引擎处,基于跨至少第一和第二密码数据存储之上存储的密码原语的级别,生成一个或多个密码原语生成时间表;-将所述一个或多个密码原语生成时间表分发到至少第二密码引擎;和-根据所述一个或多个密码原语生成时间表,使用第一密码引擎与使用第二密码引擎的第二多个密码原语同步地生成第一多个密码原语。8.根据前述权利要求中的一项所述的计算机实现的方法(200),进一步包括通过以下各项跨分布式数据处理服务30供应密码原语集:-从第一计算引擎(vcp1)向至少第二计算引擎(vcp2)传输密码原语块供应请求;-在第一计算引擎(vcp1)和至少第二计算引擎(vcp2)之间就密码原语标识符达成一致,所述标识符标识跨至少第一计算引擎(vcp1)和至少第二计算引擎(vcp2)之上的共享密码原语;-在至少第一和第二计算引擎之间发送用于具有特定密码原语标识符的密码原语块的状态更新请求;和-将密码原语块的状态标志设置为激活状态,以便使包含的元组共享可用于后续使用。9.根据权利要求8所述的计算机实现的方法(200),进一步包括通过以下各项使用密码原语:-从第一计算引擎(vcp1)向至少第二计算引擎(vcp2)传输密码原语预留请求;-将密码原语预留所引用的第二计算引擎(vcp2)的密码数据存储(cds)中的密码原语标记为预留;-当第一计算引擎(vcp1)确定所述密码原语预留已经与至少第二计算引擎(vcp2)成功共享时,在第一和第二计算引擎中激活由所述密码原语预留所引用的密码原语;-一旦所请求的密码原语已经被发送到第一计算引擎(vcp1),就将第二计算引擎
(vcp2)中的对应密码原语标记为已消耗。10.根据前述权利要求中的一项所述的计算机实现的方法(200),其中假定至少第一和第二计算引擎(vcp1、2)中的至少一个保持未受损,则用于执行安全多方计算的分布式数据处理服务保证第一私有输入数据对第一客户端是机密的,并且第二私有输入数据对第二客户端是机密的。11.一种用于提供分布式数据处理服务的系统,所述分布式数据处理服务用于对私有输入数据的至少第一和第二项(x1、x2)执行函数的安全多方计算,所述系统包括:-至少第一和第二客户端终端(vcc1、vcc2);-至少第一和第二计算引擎(vcp1、vcc2);和-通信网络(11),被配置为通信地耦合至少第一和第二客户端终端以及至少第一和第二计算引擎;其中所述至少第一和第二计算引擎被配置为建立绑定(18)以提供分布式数据处理服务(30,vc);-其中所述至少第一和第二计算引擎包括第一和第二密码引擎(cgs1、cgs2),所述第一和第二密码引擎(cgs1、cgs2)被配置为提供分布式密码生成服务(cgs),所述分布式密码生成服务被配置为提供在安全多方计算的在线阶段期间所需的多个密码原语,其中在安全多方计算之前的离线阶段期间生成一部分密码原语,并且所述多个密码原语由分布式密码数据存储服务(cds)存储,所述分布式密码数据存储服务(cds)由相应的第一和第二计算引擎(vcp1、vcp2)管理的对应的至少第一和第二密码数据存储(cds1、cds2)提供;其中所述分布式数据处理服务(30)被配置为获得安全多方计算的服务调用以及私有输入数据的至少第一和第二项(x1、x2);其中,所述第一和第二计算引擎(vcp1、vcp2)被配置为使用分布式数据处理服务的分布式对象存储服务(oss)来存储私有输入数据的至少第一和第二项,所述分布式对象存储服务通过由对应的第一和第二计算引擎管理的至少第一和第二对象存储引擎(ose1、ose2)提供;其中所述第一和第二计算引擎(vcp1、vcp2)被配置为在在线阶段期间,使用由对应的第一和第二计算引擎管理的第一和第二多方计算引擎提供的分布式数据处理服务(30,vc)的分布式多方计算服务(mpc)对私有输入数据的至少第一和第二项执行分布式安全多方计算,其中第一多方计算引擎与至少第二多方计算引擎一起执行所述安全多方计算;和-经由分布式对象存储服务存储安全多方计算的至少一个结果,和/或向至少第一或第二客户端输出所述至少一个结果。12.根据权利要求10所述的系统,进一步包括:-编排引擎,被配置为提供可选地包括kubernetes(tm)、mesos(tm)或docker swarm(tm)的基于容器编排的服务;其中所述至少第一和第二计算引擎(vcp1、vcp2)提供分布式密码生成服务、分布式密码数据存储服务、分布式对象存储服务和分布式安全多方计算服务中的每一个的部分,能够在编排引擎的命令下水平缩放。13.一种用于参与分布式数据处理服务的第一计算引擎(vcp1)的计算机实现的方法,
所述分布式数据处理服务用于使用经由通信网络通信地耦合的至少第一和第二计算引擎(vcp1、2)对私有输入数据的至少第一和第二项执行函数的安全多方计算,所述方法包括:-通过与至少第二计算引擎(vcp2)通信,通过将至少第二计算引擎绑定到第一计算引擎(vcp1)来发起分布式数据处理服务;-使用由第一计算引擎(vcp1)管理的第一密码引擎生成第一计算引擎(vcp1)在安全多方计算的在线阶段期间所需的第一多个密码原语,其中在安全多方计算之前的离线阶段期间生成一部分密码原语,并且由第一计算引擎(vcp1)生成的多个密码原语用由相应的第一引擎管理的第一密码数据存储来存储;-由分布式数据处理服务从至少第一客户端获得安全多方计算的服务调用和私有输入数据项;-将私有输入数据项存储在由第一计算引擎(vcp1)管理的第一对象存储引擎中;-在在线阶段期间,使用由对应的第一和第二计算引擎(vcp1、2)管理的第一和第二多方计算引擎提供的分布式数据处理服务的分布式多方计算服务,对私有输入数据的至少第一和第二项执行分布式安全多方计算,其中第一多方计算引擎执行安全多方计算的第一部分;和-经由分布式对象存储服务存储安全多方计算的第一结果,和/或向第一客户端输出至少第一结果。14.一种用于参与分布式数据处理服务的第二计算引擎(vcp2)的计算机实现的方法,所述分布式数据处理服务用于使用经由通信网络通信地耦合的至少第一和第二计算引擎(vcp1、2)对私有输入数据的至少第一和第二项执行函数的安全多方计算,所述方法包括:-从第一计算引擎(vcp1)确认绑定到第一计算引擎(vcp1)的请求,并且将至少第二计算引擎(vcp2)绑定到第一计算引擎(vcp1)以初始化分布式数据处理服务;-在第一计算引擎(vcp1)的命令下并使用第二计算引擎(vcp2)的第二密码引擎生成第二计算引擎在安全多方计算的在线阶段期间所需的多个密码原语,其中在安全多方计算之前的离线阶段期间生成一部分密码原语,并且由第二计算引擎(vcp2)生成的第二多个密码原语用由第二计算引擎管理的第二密码数据存储来存储;-由分布式数据处理服务从第二客户端获得私有输入数据的另外项;-在由第二计算引擎(vcp2)管理的第二对象存储引擎中存储私有输入数据的另外项;-在在线阶段期间,使用由对应的第一和第二计算引擎管理的第一和第二多方计算引擎提供的分布式数据处理服务的分布式多方计算服务,对私有输入数据的至少第一和第二项执行分布式安全多方计算,其中第二多方计算引擎执行安全多方计算的第二部分;和-经由分布式对象存储服务存储安全多方计算的第二结果,和/或向第二客户端输出第二结果。15.一种计算机可读介质或数据信号,其上编码有限定机器可读指令的至少一个计算机程序,所述机器可读指令当由计算机处理器执行时,能够实行(i)根据权利要求1至12中的一项的计算机实现的方法和/或(ii)根据权利要求13的计算机实现的方法和/或(iii)根据权利要求14的计算机实现的方法。

技术总结
分布式安全多方计算。安全多方计算(MPC)是一种使得多个方能够在私有输入上联合计算函数的密码计算技术。例如,假设相对于至少一个未受损方,SPDZ协议可以针对多方计算的多个受破坏方提供安全性。本说明书讨论了一种用于提供分布式数据处理服务的计算机实现的方法,该分布式数据处理服务用于使用经由通信网络通信地耦合的至少第一和第二计算引擎对私有输入数据的至少第一和第二项执行函数的安全多方计算。多方计算。多方计算。


技术研发人员:H
受保护的技术使用者:罗伯特
技术研发日:2022.02.10
技术公布日:2022/8/16
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献