【技术实现步骤摘要】
生成安全计算密钥、进行安全计算的方法及装置
[0001]本说明书一个或多个实施例涉及数据隐私安全领域,尤其涉及生成安全计算密钥及进行安全计算的方法和装置。
技术介绍
[0002]随着计算机技术的发展,机器学习已经应用到各种各样的
,用于分析、处理各种业务数据。机器学习所需要的数据往往会涉及到多个领域,例如在基于机器学习的商户分类分析场景中,电子支付平台拥有商户的交易流水数据,电子商务平台存储有商户的销售数据,银行机构拥有商户的借贷数据。数据往往以孤岛的形式存在。由于行业竞争、数据安全、用户隐私等问题,数据整合面临着很大阻力,将分散在各个平台的数据整合在一起进行机器学习模型的训练难以实现。因此,提出多方联合训练和使用机器学习模型进行业务处理的方式。
[0003]在多方联合训练和使用机器学习模型的场景下,数据隐私的保护和安全性成为值得关注的问题。例如,在一个多方计算的场景下,A方持有待处理的用户样本特征数据形成的特征矩阵,B方持有数据处理模型的模型参数形成的参数矩阵。为了各方隐私数据安全,A方和B方需要在不暴露各自 ...
【技术保护点】
【技术特征摘要】
1.一种双方联合生成安全计算密钥的方法,所述安全计算使用分布式点函数,该函数用于将预设整数α映射为k比特整数环中的预定值β;该预设整数α和预定值β均以分片形式分布于双方之中,所述双方包括第一方和第二方,所述方法通过双方中的任一方执行,包括:生成二叉树,并初始化根节点的标签值;逐层对所述二叉树进行标签赋值处理,其中针对第j层的标签赋值处理包括:对于第j层各个节点,根据其父节点的标签值,生成该节点的临时标签值;基于所述临时标签值和所述预设整数α的本方分片,通过与对方提供的对应数据进行第一安全运算,确定该第j层对应的修正因子;利用所述修正因子修正各个节点的临时标签值,得到各个节点的第一标签值和第二标签值,使得:对于刺穿节点,第一方与第二方分别得到的第二标签值之差为常数c,对于非刺穿节点,双方的第一标签值和第二标签值对应相同;所述刺穿节点是从根节点到刺穿叶节点所经过的节点,所述刺穿叶节点是索引编号对应于所述预设整数α的叶节点;基于各个叶节点的第一标签值和所述预定值β的本方分片,通过与对方提供的对应数据进行第二安全计算,确定输出修正值;生成计算密钥,其中包括根节点的标签值,各个层的修正因子,和所述输出修正值。2.根据权利要求1所述的方法,所述分布式点函数的定义域为包含M个元素的整数环;所述二叉树的叶节点层至少包括对应于所述M个元素的M个叶节点。3.根据权利要求1所述的方法,其中,初始化根节点的标签值,包括:随机生成第一比特串,作为根节点的第一标签值;根据约定方式,将固定值赋值给根节点的第二标签值;其中,所述约定方式确保,第一方的固定值与第二方的固定值之差为所述常数c。4.根据权利要求1所述的方法,其中,对于第j层各个节点,根据其父节点的标签值,生成该节点的临时标签值,具体包括:对于第j层中任意的第一节点,根据该第一节点的父节点的第一标签值,利用伪随机生成器生成对应的伪随机值,作为该第一节点的临时标签值。5.根据权利要求1所述的方法,其中,确定该第j层对应的修正因子,包括:对第j层左侧节点和右侧节点的临时标签值分别进行求和,得到左侧和值和右侧和值;利用所述左侧和值、右侧和值和所述预设整数α的本方分片,与对方提供的对应和值以及所述预设整数α的对方分片,进行所述第一安全运算,得到该第j层对应的修正因子。6.根据权利要求1或5所述的方法,其中,所述修正因子包括,第一标签因子,左侧标签因子和右侧标签因子;其中:所述第一标签因子指示,在所述刺穿节点的另一侧,第一方临时标签值之和与第二方临时标签值之和的差值;所述左侧标签因子,基于左侧差值以及刺穿节点所在侧而确定,所述左侧差值为,第一方左侧节点临时标签值之和与第二方左侧节点临时标签值之和的差值;所述右侧标签因子,基于右侧差值以及刺穿节点所在侧而确定,所述右侧差值为,第一方右侧节点临时标签值之和与第二方右侧节点临时标签值之和的差值。7.根据权利要求6所述的方法,其中,利用所述修正因子修正各个节点的临时标签值包
括:对于第j层中任意的第一节点,利用其父节点的第二标签值和所述第一标签因子,修正所述临时标签值,得到该第一节点的第一标签值;根据所述第一节点所在侧,从所述左侧标签因子和右侧标签因子中选择对应因子,利用所述父节点的第二标签值和所选择的对应因子,修正所述临时标签值,得到该第一节点的第二标签值。8.根据权利要求1所述的方法,其中,确定输出修正值,包括:计算各个叶节点的第一标签值之和,作为本方的标签和值;利用本方的标签和值和所述预定值β的本方分片,与对方的标签和值和所述预定值β的对方分片进行第二安全计算,得到输出修正值,其中,所述输出修正值等于,第一方的标签和值减去第二方的标签和值,再减去所述预定值β的结果。9.一种进行安全计算的方法,所述安全计算使用分布式点函数,该函数用于将预设整数α映射为k比特整数环中的预定值β;所述双方包括第一方和第二方,该方法通过双方中的任一方执行,包括:获取根据权利要求1的方法生成的计算密钥,其中包括根节点的标签值,二叉树各个层的修正因子,和输出修正值;获取输入整数;将所述输入整数映射到所述二叉树的叶节点层中的目标叶节点,并确定从根节点到目标叶节点在各层经过的目标节点;根据所述根节点的标签值,各个层的修正因子,逐层计算各层目标节点的标签值,直到确定出所述目标叶节点的第一标签值和第二标签值;根据所述目标叶节点的第一标签值,第二标签值,所述输出修正值,确定本方输出分片,所述本方输出分片用于与对方的输出分片组合,作为所述分布式点函数针对所述输入整数的输出值。10.根据权利要求9所述的方法,其中,根据所述根节点的标签值,各个层的修正因子,逐层计算各层目标节点的标签值,具体包括:对于第j层中的目标节点,根据其父节点的标签值,生成该目标节点的临时标签值;利用该第j层的修正因子修正该目标节点的临时标签值,得到目标节点的第一标签值和第二标签值。11.根据权利要求10所述的方法,其中,所述修正因子包括,第一标签因子,左侧标签因子和右侧标签因子;利用该第j层的修正因子修正该目标节点的临时标签值,包括:利用所述父节点的第二标签值和所述第一标签因子,修正所述临时标签值,得到该目标节点的第一标签值;根据所述目标节点所在侧,从所述左侧标签因子和右侧标签因子中选择对应因子,利用所述父节点的第二标签值和所选择的对应因子,修正所述临时标签值,得到该目标节点的第二标签值。12.根据权利要求9所述的方法,其中:当所述任一方为第一方时,确定本方输出分片,包括:
计算所述目标叶节点的第二标签值与所述输出修正值的乘积,将所述目标叶节点的第一标签值和所述乘积在所述k比特整数环中的和值,确定为本方输出分片;当所述任一方为第二方时,确定本方输出分片,包括:计算所述目标叶节点的第二标签值与所述输出修正值的乘积,将所述目标叶节点的第一标签值和所述乘积在所述k比特整数环中的和值的相反数,确定为本方输出分片。13.一种双方联合生成安全计算密钥的装置,所述安全计算使用分布式点函数,该函数用于将预设整数α映射为k比特整数环中的预定值β;该预设整数α和预定值β...
【专利技术属性】
技术研发人员:黄章杰,马宝利,雷浩,
申请(专利权)人:支付宝杭州信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。