多方联合进行模型数据处理的方法及装置制造方法及图纸

技术编号:23561780 阅读:18 留言:0更新日期:2020-03-25 06:31
本说明书实施例提供一种保护数据隐私的多方联合进行模型数据处理的方法和装置。根据该方法,模型拥有方在对k个模型参数进行同态加密后,还选取第一随机数对第一消息进行加密,得到辅助密文。此外,双方共同确定出根挑战数,并基于根挑战数得到k个挑战元素。之后,模型拥有方将k个挑战元素分别与模型参数和第一消息,以及加密随机数和第一随机数进行组合,生成验证随机数和验证消息作为零知识证明。数据拥有方可以验证,基于k个挑战元素对参数密文和辅助密文同态操作的结果,与用验证随机数加密验证消息的结果是否相等。在相等的情况下,用其样本特征进行同态运算,返回给模型拥有方,从而确保了模型数据过程中各方隐私数据的安全性。

Method and device of model data processing by multi parties

【技术实现步骤摘要】
多方联合进行模型数据处理的方法及装置
本说明书一个或多个实施例涉及机器学习领域和数据安全领域,尤其涉及多方联合进行模型数据处理的方法和装置。
技术介绍
随着计算机技术的发展,机器学习已经应用到各种各样的
,用于分析、处理各种业务数据。机器学习所需要的数据往往会涉及到多个领域,例如在基于机器学习的商户分类分析场景中,电子支付平台拥有商户的交易流水数据,电子商务平台存储有商户的销售数据,银行机构拥有商户的借贷数据。数据往往以孤岛的形式存在。由于行业竞争、数据安全、用户隐私等问题,数据整合面临着很大阻力,将分散在各个平台的数据整合在一起训练机器学习模型难以实现。因此,提出多方联合训练和使用机器学习模型进行业务处理的方式。在多方联合训练和使用机器学习模型的场景下,数据隐私的保护和安全性成为值得关注的问题。例如,在一个多方计算的场景下,A方持有待处理的用户样本特征数据,B方持有数据处理模型。在通过该数据处理模型对样本特征数据实施处理时,如果A方将样本数据直接发送至B方,会导致用户样本的特征取值被暴露,泄露用户隐私;如果B方将数据处理模型提供至A方进行使用,会导致数据处理模型的模型参数被暴露。因此,希望提供改进的方案,在多方联合进行模型数据处理的过程中,保护各方隐私数据的安全。
技术实现思路
本说明书一个或多个实施例描述了多方联合进行模型数据处理的方法和装置,其中模型拥有方在对多个模型参数进行同态加密后,还生成密文合法性的零知识证明,以供数据拥有方验证,从而进一步保护各方隐私数据的安全不泄露。根据第一方面,提供了一种保护数据隐私的多方联合进行模型数据处理的方法,所述多方包括模型拥有方和数据拥有方,所述方法通过所述模型拥有方执行,包括:采用同态加密算法,基于预先生成的公钥和分别生成的k个随机数,对所拥有的第一模型中的k个模型参数分别进行加密,得到k个参数密文;随机选择第一消息和第一随机数;并采用所述同态加密算法,基于所述公钥和所述第一随机数,对所述第一消息进行加密,得到辅助密文;向所述数据拥有方发送所述k个参数密文和所述辅助密文;获取根挑战数,并基于所述根挑战数的幂操作,得到k个挑战元素;将所述k个挑战元素与所述k个模型参数线性组合,并与所述第一消息进行叠加,基于叠加结果得到验证消息;将所述k个挑战元素与所述k个随机数和所述第一随机数进行组合,得到验证随机数;向所述数据拥有方发送零知识证明,其中包括所述验证消息和验证随机数,使得所述数据拥有方验证,使用所述k个挑战元素对所述辅助密文和所述k个参数密文进行同态加和运算的第一结果,与采用所述同态加密算法,基于所述公钥和所述验证随机数对所述验证消息进行加密的第二结果是否相等;接收所述数据拥有方发送的特征运算密文,所述特征运算密文是所述数据拥有方在所述验证通过的情况下,使用其拥有的k个样本特征对所述k个参数密文进行同态加和运算的结果,用于所述模型拥有方还原出特征运算结果,从而基于特征运算结果进行业务处理。在一个实施例中,所述第一模型为线性回归模型,或逻辑回归模型。根据一种实施方式,所述公钥包括,自然数N和由该自然数N限定的随机数空间中的一个循环子群的生成元h;在这样的情况下,对所述第一消息进行加密得到辅助密文的步骤可以包括:使用所述第一消息,对(N+1)进行幂操作,得到第一中间结果;使用所述第一随机数,基于所述生成元h进行群操作,得到第二中间结果;基于所述第一中间结果和第二中间结果,得到所述辅助密文。相应的,在上述实施方式的一个示例中,验证随机数可以通过如下方式得到:将所述k个挑战元素与所述k个随机数线性组合,并与所述第一随机数进行叠加,得到所述验证随机数。根据另一种实施方式,所述公钥至少包括自然数N;在这样的情况下,对所述第一消息进行加密得到辅助密文的步骤可以包括:使用所述第一消息,对(N+1)进行幂操作,得到第一中间结果;对所述第一随机数进行N次幂操作,得到第二中间结果;基于所述第一中间结果和第二中间结果,得到所述辅助密文。相应的,在上述实施方式的一个示例中,验证随机数可以通过如下方式得到:依次对于第i挑战元素和第i随机数,使用第i挑战元素对第i随机数进行幂操作,得到k个幂操作结果;将所述k个幂操作结果与所述第一随机数连乘,得到所述验证随机数。在一个实施例中,所述根挑战数通过以下方式获取:从所述数据拥有方接收其随机选择的根挑战数。在另一实施例中,所述根挑战数通过以下方式获取:基于所述k个参数密文和所述辅助密文,使用与所述数据拥有方约定的哈希算法,计算得到所述根挑战数。更具体的,在一个示例中,基于所述根挑战数的幂操作,得到k个挑战元素包括,对所述根挑战数进行从1依次到k次幂操作,得到所述k个挑战元素。在另一个示例中,基于所述根挑战数的幂操作,得到k个挑战元素包括:对所述根挑战数随机进行k种不同的幂操作,得到所述k个挑战元素。根据一种实施方式,基于第一叠加结果得到验证消息的步骤可以包括:将所述第一叠加结果对N取模,将取模结果作为所述验证消息,其中N为公钥中的自然数。在一个实施例中,所述方法还包括:采用与所述同态加密算法对应的解密算法,使用与所述公钥对应的私钥,对所述特征运算密文进行解密,得到所述特征运算结果,所述特征运算结果对应于,所述k个样本特征和所述k个模型参数的线性组合。根据第二方面,提供了一种保护数据隐私的多方联合进行模型数据处理的方法,所述多方包括模型拥有方和数据拥有方,所述方法通过所述数据拥有方执行,包括:从所述模型拥有方接收加密合法性有待验证的k个参数密文以及辅助密文;在合法加密的情况下,所述k个参数密文是所述模型拥有方采用同态加密算法,基于预先生成的公钥和分别生成的k个随机数,对k个模型参数分别加密得到的,所述辅助密文是采用所述同态加密算法,基于所述公钥和第一随机数,对随机的第一消息进行加密得到的;确定根挑战数,并基于所述根挑战数的幂操作,得到k个挑战元素;从所述模型拥有方接收零知识证明,其中包括验证消息和验证随机数;其中,所述验证消息是基于所述k个挑战元素与所述k个模型参数的线性组合,以及与所述第一消息的叠加得到的,所述验证随机数是基于所述k个挑战元素与所述k个随机数和所述第一随机数组合得到的;使用所述k个挑战元素对所述k个参数密文和所述辅助密文进行同态加和运算,得到第一结果;并采用所述同态加密算法,基于所述公钥和所述验证随机数对所述验证消息进行加密,得到第二结果;在验证第一结果等于第二结果的情况下,使用拥有的k个样本特征对所述k个参数密文进行同态加和运算,得到特征运算密文;向所述模型拥有方发送所述特征运算密文,用于所述模型拥有方还原出特征运算结果,从而基于特征运算结果进行业务处理。在一个实施例中,所述公钥包括,自然数N和由该自然数N限定的随机数空间中的一个循环子群的生成元h;相应的,所述第二结果可以通过以下步骤得到:使用验证消息,对(N+1本文档来自技高网...

【技术保护点】
1.一种保护数据隐私的多方联合进行模型数据处理的方法,所述多方包括模型拥有方和数据拥有方,所述方法通过所述模型拥有方执行,包括:/n采用同态加密算法,基于预先生成的公钥和分别生成的k个随机数,对所拥有的第一模型中的k个模型参数分别进行加密,得到k个参数密文;/n随机选择第一消息和第一随机数;并采用所述同态加密算法,基于所述公钥和所述第一随机数,对所述第一消息进行加密,得到辅助密文;/n向所述数据拥有方发送所述k个参数密文和所述辅助密文;/n获取根挑战数,并基于所述根挑战数的幂操作,得到k个挑战元素;/n将所述k个挑战元素与所述k个模型参数线性组合,并与所述第一消息进行叠加,基于叠加结果得到验证消息;将所述k个挑战元素与所述k个随机数和所述第一随机数进行组合,得到验证随机数;/n向所述数据拥有方发送零知识证明,其中包括所述验证消息和验证随机数,使得所述数据拥有方验证,使用所述k个挑战元素对所述辅助密文和k个参数密文进行同态加和运算的第一结果,与采用所述同态加密算法,基于所述公钥和所述验证随机数对所述验证消息进行加密的第二结果是否相等;/n接收所述数据拥有方发送的特征运算密文,所述特征运算密文是所述数据拥有方在所述验证通过的情况下,使用其拥有的k个样本特征对所述k个参数密文进行同态加和运算的结果,用于所述模型拥有方还原出特征运算结果,从而基于特征运算结果进行业务处理。/n...

【技术特征摘要】
1.一种保护数据隐私的多方联合进行模型数据处理的方法,所述多方包括模型拥有方和数据拥有方,所述方法通过所述模型拥有方执行,包括:
采用同态加密算法,基于预先生成的公钥和分别生成的k个随机数,对所拥有的第一模型中的k个模型参数分别进行加密,得到k个参数密文;
随机选择第一消息和第一随机数;并采用所述同态加密算法,基于所述公钥和所述第一随机数,对所述第一消息进行加密,得到辅助密文;
向所述数据拥有方发送所述k个参数密文和所述辅助密文;
获取根挑战数,并基于所述根挑战数的幂操作,得到k个挑战元素;
将所述k个挑战元素与所述k个模型参数线性组合,并与所述第一消息进行叠加,基于叠加结果得到验证消息;将所述k个挑战元素与所述k个随机数和所述第一随机数进行组合,得到验证随机数;
向所述数据拥有方发送零知识证明,其中包括所述验证消息和验证随机数,使得所述数据拥有方验证,使用所述k个挑战元素对所述辅助密文和k个参数密文进行同态加和运算的第一结果,与采用所述同态加密算法,基于所述公钥和所述验证随机数对所述验证消息进行加密的第二结果是否相等;
接收所述数据拥有方发送的特征运算密文,所述特征运算密文是所述数据拥有方在所述验证通过的情况下,使用其拥有的k个样本特征对所述k个参数密文进行同态加和运算的结果,用于所述模型拥有方还原出特征运算结果,从而基于特征运算结果进行业务处理。


2.根据权利要求1所述的方法,其中,所述第一模型为线性回归模型,或逻辑回归模型。


3.根据权利要求1所述的方法,其中,所述公钥包括,自然数N和由该自然数N限定的随机数空间中的一个循环子群的生成元h;
采用所述同态加密算法,基于所述公钥和所述第一随机数,对所述第一消息进行加密,得到辅助密文,包括:
使用所述第一消息,对(N+1)进行幂操作,得到第一中间结果;
使用所述第一随机数,基于所述生成元h进行群操作,得到第二中间结果;
基于所述第一中间结果和第二中间结果,得到所述辅助密文。


4.根据权利要求3所述的方法,其中,将所述k个挑战元素与所述k个随机数和所述第一随机数进行组合,得到验证随机数,包括:
将所述k个挑战元素与所述k个随机数线性组合,并与所述第一随机数进行叠加,得到所述验证随机数。


5.根据权利要求1所述的方法,其中,所述公钥至少包括自然数N;
采用所述同态加密算法,基于所述公钥和所述第一随机数,对所述第一消息进行加密,得到辅助密文,包括:
使用所述第一消息,对(N+1)进行幂操作,得到第一中间结果;
对所述第一随机数进行N次幂操作,得到第二中间结果;
基于所述第一中间结果和第二中间结果,得到所述辅助密文。


6.根据权利要求5所述的方法,其中,将所述k个挑战元素与所述k个随机数和所述第一随机数进行组合,得到验证随机数,包括:
依次对于第i挑战元素和第i随机数,使用第i挑战元素对第i随机数进行幂操作,得到k个幂操作结果;
将所述k个幂操作结果与所述第一随机数连乘,得到所述验证随机数。


7.根据权利要求1所述的方法,其中,所述获取根挑战数,包括:
从所述数据拥有方接收其随机选择的根挑战数。


8.根据权利要求1所述的方法,其中,所述获取根挑战数,包括:
基于所述k个参数密文和所述辅助密文,使用与所述数据拥有方约定的函数算法,计算得到所述根挑战数。


9.根据权利要求1所述的方法,其中,基于所述根挑战数的幂操作,得到k个挑战元素包括:对所述根挑战数进行从1依次到k次幂操作,得到所述k个挑战元素。


10.根据权利要求1所述的方法,其中,基于所述根挑战数的幂操作,得到k个挑战元素包括:对所述根挑战数随机进行k种不同的幂操作,得到所述k个挑战元素。


11.根据权利要求3所述的方法,其中,所述基于叠加结果得到验证消息,包括:
将所述叠加结果对N取模,将取模结果作为所述验证消息。


12.根据权利要求1所述的方法,还包括:采用与所述同态加密算法对应的解密算法,使用与所述公钥对应的私钥,对所述特征运算密文进行解密,得到所述特征运算结果,所述特征运算结果对应于,所述k个样本特征和所述k个模型参数的线性组合。


13.一种保护数据隐私的多方联合进行模型数据处理的方法,所述多方包括模型拥有方和数据拥有方,所述方法通过所述数据拥有方执行,包括:
从所述模型拥有方接收加密合法性有待验证的k个参数密文以及辅助密文;在合法加密的情况下,所述k个参数密文是所述模型拥有方采用同态加密算法,基于预先生成的公钥和分别生成的k个随机数,对k个模型参数分别加密得到的,所述辅助密文是采用所述同态加密算法,基于所述公钥和第一随机数,对随机的第一消息进行加密得到的;
确定根挑战数,并基于所述根挑战数的幂操作,得到k个挑战元素;
从所述模型拥有方接收零知识证明,其中包括验证消息和验证随机数;其中,所述验证消息是基于所述k个挑战元素与所述k个模型参数的线性组合,以及与所述第一消息的叠加得到的,所述验证随机数是基于所述k个挑战元素与所述k个随机数和所述第一随机数组合得到的;
使用所述k个挑战元素对所述k个参数密文和所述辅助密文进行同态加和运算,得到第一结果;并采用所述同态加密算法,基于所述公钥和所述验证随机数对所述验证消息进行加密,得到第二结果;
在验证第一结果等于第二结果的情况下,使用拥有的k个样本特征对所述k个参数密文进行同态加和运算,得到特征运算密文;
向所述模型拥有方发送所述特征运算密文,用于所述模型拥有方还原出特征运算结果,从而基于特征运算结果进行业...

【专利技术属性】
技术研发人员:韩帅陈宇马环宇雷浩
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1