一种分布式可信隐私计算方法技术

技术编号:32269447 阅读:15 留言:0更新日期:2022-02-12 19:32
本发明专利技术涉及信息技术领域,具体涉及一种分布式可信隐私计算方法,包括:新建隐私计算任务:接入节点为隐私计算任务分配任务编号;建立形式目标函数,参与节点记录对应的参量化名;提交目标函数或样本数据;准备隐私计算任务:建立多项式拟合函数;将多项式拟合函数展开为乘积项的加权和,为每个乘积项分配项编号;执行隐私计算任务:将隐私数拆分为若干个乘数;将系数进行M次开方作为拆分系数;各自计算乘积项的项中间值;项中间值关联项编号发送给中继节点;中继节点将关联相同项编号的项中间值相乘,获得单项乘积,将获得的单项乘积求和;全部和再求和即获得结果。本发明专利技术的实质性效果是:具有较广的适用范围,构建和执行隐私计算效率高。计算效率高。计算效率高。

【技术实现步骤摘要】
一种分布式可信隐私计算方法


[0001]本专利技术涉及信息
,具体涉及一种分布式可信隐私计算方法。

技术介绍

[0002]随着信息技术的发展,数据起到了越来越重要的作用。目前数据已经被当做一种新型生产要素,与土地、劳动力、资本、技术等传统要素并列。数据对于构建机器学习,用于执行智慧决策任务具有至关重要的作用。通过对数据蕴含价值的分析,能够指导生产或经营活动的优化调度,实现降低生产成本,提高生产资料利用效率的作用。然而,出于隐私保护、竞争关系等需要,企业之间的数据的流通共享还只能在可控的小范围内进行应用。业内提出了安全多方计算和同态加密技术,用于实现数据的可用不可见应用。虽然能够实现在保持数据隐私的前提下,实现对数据的使用。但无论是基于OT传输和混淆电路的安全多方计算还是同态加密技术,都存在计算效率低下的问题。
[0003]如中国专利CN112883408B,公开日2021年7月16日,公开了一种用隐私计算的加解密系统和芯片,该芯片包括:接收多个待处理数据的输入接口;模幂计算子系统,包括多个计算单元及其模幂计算引擎,根据多个待处理数据分别生成多个模幂计算结果。该芯片针对多个待处理数据中的每一个:当与该待处理数据对应的算子操作是用于隐私计算加密算法时,调用前处理模块和加密模块从而与模幂计算子系统协同完成该算子操作,当与该待处理数据对应的算子操作是用于隐私计算解密算法时,调用解密模块从而与模幂计算子系统协同完成该算子操作,当与该待处理数据对应的算子操作是用于密态运算算法时,调用模幂计算子系统完成该算子操作。如此复用计算资源而有利于提高计算性能和节省功耗。但其需要借助专用的硬件才能实现隐私计算,限制了隐私计算的应用范围。

技术实现思路

[0004]本专利技术要解决的技术问题是:目前缺乏高效率隐私计算方案的技术问题。提出了一种分布式可信隐私计算方法,能够快速的构建并执行隐私计算,进一步在保持数据隐私的前提下,发挥数据的价值。
[0005]为解决上述技术问题,本专利技术所采取的技术方案为:一种分布式可信隐私计算方法,用于包括若干个参与节点、多个中继节点和接入节点的隐私计算系统,参与节点拥有隐私数,包括以下步骤:新建隐私计算任务:若干个参与节点向接入节点注册获得节点标识,任一参与节点请求新建隐私计算任务并提供欲参与隐私计算的节点标识表,接入节点为隐私计算任务分配任务编号;接入节点建立形式目标函数,所述形式目标函数为:标签值=f(参量化名i),i∈[1,m],m为隐私数的数量,形式目标函数及参量化名均关联任务编号,参量化名分配给隐私数,参与节点记录对应的参量化名;发出请求的参与节点提交目标函数或样本数据,所述样本数据的参量按照参量化名的排序对齐;准备隐私计算任务:接入节点根据对应目标函数或样本数据,建立多项式拟合函数;将多项式拟合函数展开为若干个乘积项的加权和,为每个乘积项分配项编号,通知参与节点执行隐私计算任务;执行隐私计算
任务:参与节点将隐私数拆分为若干个乘数,乘数的数量与参与节点数量相同,将乘数分配给参与节点;参与节点将乘积项的项系数进行M次开方作为拆分系数,M为参与节点的数量;参与节点使用分配到乘数各自计算每个乘积项的值,再乘对应的拆分系数作为项中间值;多个所述中继节点具有预设的排序,项编号对中继节点数量取余,根据余数为项中间值指定中继节点,参与节点将项中间值关联项编号发送给中继节点;中继节点将关联相同项编号的项中间值相乘,获得单项乘积,中继节点将获得的全部单项乘积求和,将和发送给接入节点;接入节点将获得的全部和再求和,即获得多项式拟合函数的结果,即为隐私计算的结果。
[0006]作为优选,执行隐私计算任务时,参与节点采用异步的方式分配乘数,具体包括以下步骤:接入节点建立乘数表,乘数表为二维表且初值为空,乘数表和行为参量化名,乘数表的列数量与参与节点数量相同,乘数表的列关联节点标识;参与节点收到执行隐私计算任务的通知后,连接接入节点;参与节点读取所拥有的隐私数对应的参量化名所在的行,若行中的列存在非空值,则接受所述非空值作为已有乘数,在已有乘数的基础上,生成若干个乘数补满行的空值列,使行中全部乘数的乘积等于隐私数;参与节点读取乘数表中对应自身节点标识的列,若列中的行存在空值,则生成随机值填入,使得所述列的每一行均存在非空的乘数;所述列中的乘数即为参与节点分配到的乘数;其中,参与节点生成乘数补满所述行的空值列时,使用列对应的参与节点的公钥加密乘数,参与节点生成随机数填入所述列的空值行时,使用行对应参量化名隶属的参与节点的公钥加密所述随机值后再填入。
[0007]作为优选,建立多项式拟合函数的方法包括:若发出请求的参与节点提交目标函数,则根据目标函数获得样本数据,建立全部参量化名的多项式展开式,多项式展开式的最高次为n,则多项式展开式具有n^m个乘积项,即具有n^m个项系数,为项系数赋予初始值;使用优化算法获得项系数的最优解,最优解使得多项式拟合函数与样本数据的差值最小,即获得多项式拟合函数。
[0008]作为优选,使用优化算法获得项系数的最优解时,若乘积项的项系数被调整到小于预设阈值a,则将所述乘积项删除。
[0009]作为优选,预设阈值a随着项系数被调整次数的增加而减小。
[0010]作为优选,根据目标函数获得样本数据的方法包括:向发出请求的参与节点索要每个参量化名的取值范围,若参与节点未返回取值范围,则使用预设的初始取值范围;在参量化名的取值范围内,随机生成参量化名的多个取值,获得多组参量化名的取值,作为输入向量;将输入向量代入目标函数,获得目标函数的输出,将所述输出作为标签标记所述输入向量作为样本数据。
[0011]作为优选,发出请求的参与节点提供参量化名的取值范围和分布概率函数,在参量化名的取值范围内,随机生成参量化名的多个取值,取值的分布基本符合所述分布概率函数。
[0012]作为优选,所述接入节点保存乘积项的值,隐私数隶属的参与节点分配到的乘数记为保留数,当参与节点的隐私数发生更新时,参与节点生成新的保留数,自行计算全部乘积项的值,获得保留数更新前乘积项的值,获得修正系数,将修正系数发送给接入节点,接入节点使用修正系数更新乘积项的值,重新计算出结果,反馈给参与节点。
[0013]本专利技术的实质性效果是:采用多项式拟合函数拟合目标函数或者建立样本数据的
拟合函数,能够实现复杂的函数计算,具有较广的适用范围;参与节点不需要同时在线即可进行隐私计算,构建和执行隐私计算更为方便;不需要借助混淆电路及同态加密,计算效率高。
附图说明
[0014]图1为实施例一隐私计算方法示意图。
[0015]图2为实施例一参与节点分配乘数方法示意图。
[0016]图3为实施例一建立多项式拟合函数方法示意图。
[0017]图4为实施例一目标函数获得样本数据方法示意图。
具体实施方式
[0018]下面通过具体实施例,并结合附图,对本专利技术的具体实施方式作进一步具体说明。
[0019]一种分布式可信隐私计算方法,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式可信隐私计算方法,用于包括若干个参与节点、多个中继节点和接入节点的隐私计算系统,参与节点拥有隐私数,其特征在于,包括以下步骤:新建隐私计算任务:若干个参与节点向接入节点注册获得节点标识,任一参与节点请求新建隐私计算任务并提供欲参与隐私计算的节点标识表,接入节点为隐私计算任务分配任务编号;接入节点建立形式目标函数,所述形式目标函数为:标签值=f(参量化名i),i∈[1,m],m为隐私数的数量,形式目标函数及参量化名均关联任务编号,参量化名分配给隐私数,参与节点记录对应的参量化名;发出请求的参与节点提交目标函数或样本数据,所述样本数据的参量按照参量化名的排序对齐;准备隐私计算任务:接入节点根据对应目标函数或样本数据,建立多项式拟合函数;将多项式拟合函数展开为若干个乘积项的加权和,为每个乘积项分配项编号,通知参与节点执行隐私计算任务;执行隐私计算任务:参与节点将隐私数拆分为若干个乘数,乘数的数量与参与节点数量相同,将乘数分配给参与节点;参与节点将乘积项的项系数进行M次开方作为拆分系数,M为参与节点的数量;参与节点使用分配到乘数各自计算每个乘积项的值,再乘对应的拆分系数作为项中间值;多个所述中继节点具有预设的排序,项编号对中继节点数量取余,根据余数为项中间值指定中继节点,参与节点将项中间值关联项编号发送给中继节点;中继节点将关联相同项编号的项中间值相乘,获得单项乘积,中继节点将获得的全部单项乘积求和,将和发送给接入节点;接入节点将获得的全部和再求和,即获得多项式拟合函数的结果,即为隐私计算的结果。2.根据权利要求1所述的一种分布式可信隐私计算方法,其特征在于,执行隐私计算任务时,参与节点采用异步的方式分配乘数,具体包括以下步骤:接入节点建立乘数表,乘数表为二维表且初值为空,乘数表和行为参量化名,乘数表的列数量与参与节点数量相同,乘数表的列关联节点标识;参与节点收到执行隐私计算任务的通知后,连接接入节点;参与节点读取所拥有的隐私数对应的参量化名所在的行,若行中的列存在非空值,则接受所述非空值作为已有乘数,在已有乘数的基础上,生成若干个乘数补满行的空值列,使行中全部乘数的乘积等于隐私数;参与节点读取乘数表中对应自身节点标识的列,若列中的行存在空值,则生成随机值...

【专利技术属性】
技术研发人员:张金琳高航
申请(专利权)人:浙江数秦科技有限公司
类型:发明
国别省市:

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

1