用于联邦学习和隐私计算的密文计算装置及方法与流程

文档序号:28545929发布日期:2022-01-19 15:04阅读:来源:国知局

技术特征:
1.一种密文计算装置,应用于联邦学习和隐私计算,其特征在于,所述密文计算装置包括:蒙哥马利化模幂运算模块,其中,所述蒙哥马利化模幂运算模块包括第一层数据分发模块和与所述第一层数据分发模块连接的第一层模幂计算模块,所述第一层模幂计算模块包括并行的多个模幂计算引擎,所述第一层数据分发模块配置成每次发送多个密文明文对中的一个密文明文对并按照轮询的方式选择所述多个模幂计算引擎中的一个模幂计算引擎以接收被发送的密文明文对,被选择的模幂计算引擎对所述被发送的密文明文对中的密文进行蒙哥马利化运算得到蒙哥马利化密文以及对该蒙哥马利化密文和所述被发送的密文明文对中的明文进行蒙哥马利化模幂运算得到被选择的模幂计算引擎的蒙哥马利化模幂运算结果,所述多个模幂计算引擎各自生成的蒙哥马利化模幂运算结果被整合得到所述多个密文明文对的蒙哥马利化模幂运算结果;累加模乘运算模块,其中,所述累加模乘运算模块包括第二层数据分发模块和与所述第二层数据分发模块连接的第二层模乘计算模块,所述第二层模乘计算模块包括并行的多个模乘计算引擎,所述第二层数据分发模块配置成选择所述多个模乘计算引擎中的一个模乘计算引擎以接收所述多个密文明文对的蒙哥马利化模幂运算结果,被选择的模乘计算引擎对所述多个密文明文对的蒙哥马利化模幂运算结果进行累加模乘运算得到所述多个密文明文对的累加模乘运算结果;和去蒙哥马利化运算模块,其中,所述去蒙哥马利化运算模块被配置为对所述多个密文明文对的累加模乘运算结果进行去蒙哥马利化运算得到所述多个密文明文对的密文计算结果。2.根据权利要求1所述的密文计算装置,其特征在于,所述多个密文明文对根据要进行密态乘法的密文数据组和明文数据组确定。3.根据权利要求1所述的密文计算装置,其特征在于,所述多个密文明文对根据要进行密态矩阵乘法的密文矩阵的行向量和明文矩阵的列向量确定,或者,所述多个密文明文对根据所述密文矩阵的列向量和所述明文矩阵的行向量确定。4.根据权利要求1至3中任一项所述的密文计算装置,所述多个模幂计算引擎的数量和所述多个模乘计算引擎的数量均可调整。5.根据权利要求1所述的密文计算装置,其特征在于,所述密文计算装置还包括:参数计算分发模块,用于参数计算并通过所述第一层数据分发模块分发用于模幂计算的参数给所述第一层模幂计算模块以及通过所述第二层数据分发模块分发用于模乘计算的参数给所述第二层模乘计算模块。6.根据权利要求1所述的密文计算装置,其特征在于,所述密文计算装置还包括:任务管理模块,用于生成与所述多个密文明文对相对应的配置信息,所述配置信息包括数据头标识和数据尾标识,所述数据头标识指示了所述多个密文明文对中第一个被发送的密文明文对,所述数据尾标识指示了所述多个密文明文对中最后一个被发送的密文明文对。7.根据权利要求6所述的密文计算装置,其特征在于,所述配置信息还包括数据位宽和密文计算模式标识符。8.根据权利要求6所述的密文计算装置,其特征在于,所述第一层数据分发模块根据所
述配置信息生成第一层批次完成信号并在发送完所述多个密文明文对后将所述第一层批次完成信号发送给所述多个模幂计算引擎中的每一个模幂计算引擎,所述第二层数据分发模块根据所述配置信息生成第二层批次完成信号并在发送所述多个密文明文对的蒙哥马利化模幂运算结果后将所述第二层批次完成信号发送给被选择的模乘计算引擎。9.根据权利要求8所述的密文计算装置,其特征在于,所述多个模幂计算引擎中的每一个模幂计算引擎根据所述第一层批次完成信号来判断该模幂计算引擎是否适合接收新的用于模幂计算的参数,所述多个模乘计算引擎中的每一个模乘计算引擎根据所述第二层批次完成信号来判断该模幂计算引擎是否适合接收新的用于模乘计算的参数。10.根据权利要求8所述的密文计算装置,其特征在于,所述配置信息被添加到与所述多个密文明文对相对应的数据流中从而与所述多个密文明文对一起被发送给所述第一层数据分发模块,或者,所述配置信息通过配置信息通道被发送给所述第一层数据分发模块,所述配置信息通道不同于所述多个密文明文对被发送给所述第一层数据分发模块所经过的数据通道。11.根据权利要求1所述的密文计算装置,其特征在于,所述第二层数据分发模块配置成选择所述多个模乘计算引擎中的一个模乘计算引擎以接收所述多个密文明文对的蒙哥马利化模幂运算结果,包括:所述第二层数据分发模块配置成按照轮询的方式选择所述多个模乘计算引擎中的一个模乘计算引擎以接收所述多个密文明文对的蒙哥马利化模幂运算结果。12.一种密文计算系统,其特征在于,所述密文计算系统包括:密态加法器,用于进行密态加法计算;根据权利要求1至11中任一项所述的密文计算装置;和主处理器,用于将密态计算式拆分成密态加法计算式和密态乘法计算式的组合,以及调用所述密态加法器来完成所述密态加法计算式和调用所述密文计算装置来完成所述密态乘法计算式。13.一种密文计算方法,应用于联邦学习和隐私计算,其特征在于,所述方法包括:获得要进行密态乘法的多个密文明文对;通过第一层数据分发模块,每次发送多个密文明文对中的一个密文明文对并按照轮询的方式选择第一层模幂计算模块所包括的并行的多个模幂计算引擎中的一个模幂计算引擎以接收被发送的密文明文对,其中,所述第一层模幂计算模块与所述第一层数据分发模块连接;通过被选择的模幂计算引擎,对所述被发送的密文明文对中的密文进行蒙哥马利化运算得到蒙哥马利化密文以及对该蒙哥马利化密文和所述被发送的密文明文对中的明文进行蒙哥马利化模幂运算得到被选择的模幂计算引擎的蒙哥马利化模幂运算结果;将所述多个模幂计算引擎各自生成的蒙哥马利化模幂运算结果整合得到所述多个密文明文对的蒙哥马利化模幂运算结果;通过第二层数据分发模块,选择第二层模乘计算模块所包括的并行的多个模乘计算引擎中的一个模乘计算引擎以接收所述多个密文明文对的蒙哥马利化模幂运算结果,其中,所述第二层模乘计算模块与所述第二层数据分发模块连接;通过被选择的模乘计算引擎,对所述多个密文明文对的蒙哥马利化模幂运算结果进行
累加模乘运算得到所述多个密文明文对的累加模乘运算结果;和通过去蒙哥马利化运算模块,对所述多个密文明文对的累加模乘运算结果进行去蒙哥马利化运算得到所述多个密文明文对的密文计算结果。14.根据权利要求13所述的密文计算方法,其特征在于,所述多个模幂计算引擎的数量和所述多个模乘计算引擎的数量均可调整。15.根据权利要求13所述的密文计算方法,其特征在于,所述方法还包括:通过参数计算分发模块进行参数计算,和通过所述第一层数据分发模块分发用于模幂计算的参数给所述第一层模幂计算模块以及通过所述第二层数据分发模块分发用于模乘计算的参数给所述第二层模乘计算模块。16.根据权利要求13所述的密文计算方法,其特征在于,所述方法还包括:通过任务管理模块生成与所述多个密文明文对相对应的配置信息,其中,所述配置信息包括数据头标识和数据尾标识,所述数据头标识指示了所述多个密文明文对中第一个被发送的密文明文对,所述数据尾标识指示了所述多个密文明文对中最后一个被发送的密文明文对。17.根据权利要求16所述的密文计算方法,其特征在于,所述配置信息还包括数据位宽和密文计算模式标识符。18.根据权利要求16所述的密文计算方法,其特征在于,所述第一层数据分发模块根据所述配置信息生成第一层批次完成信号并在发送完所述多个密文明文对后将所述第一层批次完成信号发送给所述多个模幂计算引擎中的每一个模幂计算引擎,所述第二层数据分发模块根据所述配置信息生成第二层批次完成信号并在发送所述多个密文明文对的蒙哥马利化模幂运算结果后将所述第二层批次完成信号发送给被选择的模乘计算引擎。19.根据权利要求18所述的密文计算方法,其特征在于,所述多个模幂计算引擎中的每一个模幂计算引擎根据所述第一层批次完成信号来判断该模幂计算引擎是否适合接收新的用于模幂计算的参数,所述多个模乘计算引擎中的每一个模乘计算引擎根据所述第二层批次完成信号来判断该模乘计算引擎是否适合接收新的用于模乘计算的参数。20.根据权利要求18所述的密文计算方法,其特征在于,所述配置信息被添加到与所述多个密文明文对相对应的数据流中从而与所述多个密文明文对一起被发送给所述第一层数据分发模块,或者,所述配置信息通过配置信息通道被发送给所述第一层数据分发模块,所述配置信息通道不同于所述多个密文明文对被发送给所述第一层数据分发模块所经过的数据通道。

技术总结
本申请涉及一种用于联邦学习和隐私计算的密文计算装置及方法。装置包括:蒙哥马利化模幂运算模块,其包括第一层模幂计算模块,每次发送多个密文明文对中的一个并按照轮询的方式选择第一层模幂计算模块的多个模幂计算引擎中的一个,被选择的模幂计算引擎对密文明文对中的密文进行蒙哥马利化运算得到蒙哥马利化密文以及对该蒙哥马利化密文和密文明文对中的明文进行蒙哥马利化模幂运算得到蒙哥马利化模幂运算结果,多个模幂计算引擎各自生成的蒙哥马利化模幂运算结果被整合得到多个密文明文对的蒙哥马利化模幂运算结果;累加模乘运算模块用于累加模乘运算得到多个密文明文对的累加模乘运算结果;和去蒙哥马利化运算模块。如此提高计算效率。模块。如此提高计算效率。模块。如此提高计算效率。


技术研发人员:戴蒙 王玮 陈沫
受保护的技术使用者:深圳致星科技有限公司
技术研发日:2021.10.14
技术公布日:2022/1/18
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1