CN116401683A - 一种模型训练方法、装置、存储介质以及电子设备 - Google Patents

一种模型训练方法、装置、存储介质以及电子设备 Download PDF

Info

Publication number
CN116401683A
CN116401683A CN202310252668.4A CN202310252668A CN116401683A CN 116401683 A CN116401683 A CN 116401683A CN 202310252668 A CN202310252668 A CN 202310252668A CN 116401683 A CN116401683 A CN 116401683A
Authority
CN
China
Prior art keywords
encrypted data
gradient
sum
gradients
working
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310252668.4A
Other languages
English (en)
Inventor
周启贤
刘焱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202310252668.4A priority Critical patent/CN116401683A/zh
Publication of CN116401683A publication Critical patent/CN116401683A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本说明书公开了一种模型训练方法、装置、存储介质以及电子设备,针对训练系统中的每个工作单元,以该工作单元的梯度为参数,确定加密函数,并根据加密函数,确定该梯度对应于指定数值的切片加密数据。进而根据该梯度对应于指定数值的切片加密数据,以及其他工作单元的梯度对应于指定数值的切片加密数据,确定其他工作单元的梯度和该工作单元的梯度之和,以此来完成梯度的聚合,再根据聚合后的梯度完成模型训练任务。该模型训练方法的执行过程不需要参数服务器的参与,因此,即使在参数服务器不可信的情况下,也无法窃取到工作单元中的训练样本和模型参数的相关信息,保证了训练样本和模型参数的信息安全。

Description

一种模型训练方法、装置、存储介质以及电子设备
技术领域
本说明书涉及计算机技术领域,尤其涉及一种模型训练方法、装置、存储介质以及电子设备。
背景技术
随着计算机技术的发展和人们对自身隐私数据的愈发关注,采用联邦学习的方式来对模型进行训练,已在模型训练领域得到了广泛应用。
联邦学习系统通常包含多个工作节点和参数服务器,各工作节点中存储有不同的数据,参数服务器中存储模型参数。当需要执行模型训练任务时,由工作节点根据参数服务器下发的模型参数、自身存储的训练样本以及预先部署的模型结构,确定模型梯度,并将模型梯度返回给参数服务器。参数服务器根据接收到的各工作节点发送的模型梯度,更新自身保存的模型参数,并将更新后的模型参数下发至各工作节点,以此来完成上述模型训练任务。
但是,在参数服务器不可信的情况下,存在参数服务器根据自身存储的模型参数和梯度来反推各工作节点中的训练样本的情况,导致各工作节点中的训练样本存在安全隐患。
基于此,本说明书提供一种模型训练方法。
发明内容
本说明书提供一种模型训练方法、装置、存储介质以及电子设备,以部分的解决现有技术存在的上述问题。
本说明书采用下述技术方案:
本说明书提供一种模型训练方法,所述方法应用于训练系统,所述训练系统包含若干工作单元,每个工作单元存储不同的训练样本,包括:
针对每个工作单元,响应于模型训练任务,根据该工作单元自身存储的训练样本,确定梯度;
以所述梯度为加密函数的参数,确定该工作单元对应的加密函数;
针对每个指定数值,根据该指定数值和所述加密函数,确定所述梯度对应于该指定数值的切片加密数据,作为第一加密数据,其中,各指定数值的数量不小于执行所述模型训练任务的工作单元的数量;
接收其他工作单元发送的所述其他工作单元的梯度对应于该指定数值的切片加密数据,作为第二加密数据;
根据对应于各指定数值的切片加密数据,解密得到所述其他工作单元的梯度和该工作单元的梯度之和,并根据所述梯度之和,执行所述模型训练任务。
本说明书提供一种模型训练装置,所述装置应用于模型训练系统,所述训练系统包含若干工作单元,每个工作单元存储不同的训练样本,包括:
梯度确定模块,用于针对每个工作单元,响应于模型训练任务,根据该工作单元自身存储的训练样本,确定梯度;
函数确定模块,用于以所述梯度为加密函数的参数,确定该工作单元对应的加密函数;
切片确定模块,用于针对每个指定数值,根据该指定数值和所述加密函数,确定所述梯度对应于该指定数值的切片加密数据,作为第一加密数据,其中,各指定数值的数量不小于执行所述模型训练任务的工作单元的数量;
接收模块,用于接收其他工作单元发送的所述其他工作单元的梯度对应于该指定数值的切片加密数据,作为第二加密数据;
执行模块,用于根据对应于各指定数值的切片加密数据,确定所述其他工作单元的梯度和该工作单元的梯度之和,并根据所述梯度之和,执行所述模型训练任务。
本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述模型训练方法。
本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述模型训练方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
本说明书提供该模型训练方法,通过针对每个工作单元,以该工作单元的梯度为参数确定加密函数,再根据该加密函数,确定该梯度对应于指定数值的切片加密数据,并接收其他工作单元发送的其他工作单元的梯度对应于指定数值的切片加密数据,进而基于对应于各指定数值的切片加密数据,确定其他工作单元的梯度和该工作单元的梯度之和,以此来完成梯度的聚合,再根据聚合后的梯度完成模型训练任务。
该模型训练方法的执行过程不需要参数服务器的参与,因此,即使在参数服务器不可信的情况下,也无法窃取到工作单元中的训练样本和模型参数的相关信息,保证了训练样本和模型参数的信息安全。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附
图中:
图1为本说明书提供的模型训练方法的流程示意图;
图2为本说明书提供的模型训练装置的结构示意图;
图3为本说明书提供的对应于图1的电子设备示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
需要说明的是,本说明书中所有获取信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
深度学习是计算机科学与人工智能的重要分支领域,是神经网络的进一步延伸。通过从数据中自动地学习有效的特征表示,提升预测模型的准确度,已经被广泛应用于语音识别、图像识别以及目标检测等领域。
随着深度学习数据规模的急剧扩增,传统的模型训练中,迭代计算只能利用当前进程所在主机上的所有硬件资源,可是单机扩展性始终有限,因此,单机在面对海量数据和巨大规模的模型时是无能为力的,有必要把数据或者模型分割成为多个部分,在多个机器上借助不同主机上的硬件资源进行训练加速。基于此,采用多个工作节点并行执行模型训练作业的方式得到广泛应用。
联邦学习作为一种分布式训练系统,其模型训练过程通过包含以下过程:
首先,配置若干工作节点和参数服务器。
其次,参数服务器将自身存储的模型参数发送给各工作节点。
然后,各工作节点分别根据自身存储的模型结构、从训练样本集中分配到的训练样本和参数服务器发送的模型参数进行模型训练,确定模型梯度。再将确定出的模型梯度发送给参数服务器。
之后,参数服务器根据接收到的所有模型梯度,对模型参数进行更新,并将更新后的模型参数发送给工作节点。
最后,重复上述步骤,直至模型训练结束。
但是,在参数服务器不可信的情况下,存在参数服务器根据自身存储的模型参数和接收到的各工作节点发送的梯度,来反推各工作节点中的各训练样本的情况,导致该联邦学习系统中的各训练样本存在安全隐患的情况。
基于此,本说明书提供一种新的模型训练方法,使得在不需要参数服务器参与的情况下,该训练系统也可完成模型训练任务。保证工作单元中的训练样本的安全性。
需要说明的是,该模型训练任务对应的模型,通常为风控领域的模型。而对于风控领域的模型而言,一般都是基于用户的敏感数据来确定训练样本。因此,在参数服务器不可信的情况下,参数服务器可基于自身存储的模型参数和接收到的各工作节点发送的梯度,来反推各工作节点中的各训练样本的情况。显然,这就导致各工作单元中存储的用户的敏感数据被暴露的可能性大大增加,存在安全隐患。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为本说明书提供的模型训练方法的流程示意图,具体包括以下步骤:
S100:针对每个工作单元,响应于模型训练任务,根据该工作单元自身存储的训练样本,确定梯度。
区别于目前基于参数服务器和各工作单元协同完成模型训练任务,在参数服务器不可信的情况下,无法保证各工作单元中的训练样本的安全性。本说明书提供一种新的模型训练方法,应用于不包含参数服务器的训练系统。针对训练系统中的每个工作单元,以该工作单元的梯度为参数,确定加密函数,并根据加密函数,确定该梯度对应于指定数值的切片加密数据。进而根据该梯度对应于指定数值的切片加密数据,以及其他工作单元的梯度对应于指定数值的切片加密数据,确定其他工作单元的梯度和该工作单元的梯度之和,再根据梯度之和来完成模型训练任务。
该模型训练方法的执行过程不需要参数服务器的参与,因此,即使在参数服务器不可信的情况下,也无法窃取到工作单元中的训练样本的相关信息,保证了训练样本的信息安全。
基于上述对本说明书所提供的模型训练方法的简要说明,本说明书提供的模型训练方法,可应用在仅包含工作单元的训练系统中。其中,该训练系统中的各工作单元,可为不同的电子设备,也可为同一电子设备中的不同模块,该电子设备可为智能终端、服务器等,具体该电子设备的类型可根据需要进行设置,本说明书对此不做限制。
具体的,该训练系统可为数据并行的联邦学习系统。即,每个工作单元中预先部署有模型对应的完整网络结构,各工作单元中存储不同的训练样本。此时,可基于各工作单元中存储的不同训练样本,在各工作单元中并行训练,再将训练得到的梯度共享,基于共享后的梯度调整模型参数。
于是,针对每个工作单元,该工作单元可根据自身存储的用户的敏感数据,确定待风控数据,作为训练样本,并确定待风控数据对应的风控结果作为训练样本的标注。于是,该工作单元可将自身的训练样本作为输入,输入到待训练的模型训练任务对应的目标模型中,得到该目标模型输出的预测风控结果。
之后,该工作单元可基于预测风控结果和训练样本的标注,来确定该工作单元的训练样本对应的损失。
最后,该工作单元可根据自身存储的训练样本对应的的损失,确定梯度。
其中,该目标模型由模型训练任务对应的模型的网络结构和模型参数组成。该网络结构为预先部署在工作单元中的,或者由工作单元根据模型训练任务对应的模型标识,从已存储的各网络结构中确定出的。该模型参数为该工作单元根据上一次和执行该模型处理任务的其他工作单元共享加密数据后确定出的梯度之和进行调整的,也可为该工作单元接收到的执行该模型处理任务的其他工作单元发送的。具体该目标模型的网络结构和模型参数如何确定可根据需要进行设置,本说明书对此不做限制。
需要说明的是,本说明书中的梯度可为工作单元基于训练样本确定出的损失的梯度,也可为基于梯度确定出的模型参数的调整量。也就是说,该梯度可为训练系统在训练过程中任一需要进行聚合以便于根据聚合结果执行模型训练任务的调整量。
S102:以所述梯度为加密函数的参数,确定该工作单元对应的加密函数。
在本说明书提供的一个或多个实施例中,本说明书中采用了以加密函数来对执行模型训练任务的各工作单元的梯度进行同态加密的方式,来确定梯度对应的切片加密数据,进而基于切片加密数据,对执行模型训练任务的各工作单元的梯度之和进行解密,进而基于该梯度之和来执行模型训练任务。
基于此,该工作单元可确定用于对梯度进行加密的加密函数。其中,该加密函数可为同态加密的加密函数,如基于拉格朗日多项式的同态加密函数等。
具体的,该训练系统中的各工作单元中可预设有加密函数的范式。其中,以该加密函数的范式为f(x)=ax+b为例,假设x为自变量,f(x)为因变量,则上述范式中的a和b即为该加密函数的参数。
于是,该工作单元可根据预设的加密函数的范式和该梯度,确定生成该加密函数所需的参数。也就是说,该工作单元可根据该梯度,确定该加密函数对应的参数。其中,该工作单元可直接将该梯度作为该加密函数的参数中的至少一个,也可对该梯度进行同态计算后,再将处理结果作为该加密函数的参数中的至少一个。具体如何根据梯度确定生成该加密函数所需的参数可根据需要进行设置,本说明书对此不做限制。其中,同态计算是一种密文域的计算方式,它允许对密文进行特定形式的代数计算得到仍然是加密的结果,将其解密所得到的结果与对明文进行同样的计算结果一样。
在确定出生成该加密函数所需的参数后,该工作单元可根据该参数,确定以该梯度为参数的加密函数,作为该工作单元对应的加密函数。
S104:针对每个指定数值,根据该指定数值和所述加密函数,确定所述梯度对应于该指定数值的切片加密数据,作为第一加密数据,其中,各指定数值的数量不小于执行所述模型训练任务的工作单元的数量。
在本说明书提供的一个或多个实施例中,在确定出以梯度为参数的加密函数后,在指定数值处对该加密函数进行切片,则得到的切片加密数据为梯度对应于该指定数值的切片加密数据。在此基础上,若可获取到各工作单元分别对应的梯度对应于各指定数值的切片加密数据,则可基于同态加密原理,确定出各工作单元的梯度之和。上述即如前所述的使用加密函数对执行模型训练任务的各工作单元的梯度进行同态加密的思想。基于此,该工作单元可确定切片加密数据。
具体的,该工作单元中预设有多个指定数值。其中,该指定数值的数量不小于执行该模型训练任务的工作单元的数量,则后续才可基于梯度对应于各指定数值的切片加密数据,确对各工作单元的梯度之和进行解密。
于是,针对每个指定数值,该工作单元可根据该指定数值和该加密函数,确定该梯度对应于该指定数值的切片加密数据。以该加密函数为f(x)=ax+b,a、b为该加密函数的参数,b为该工作单元确定出的梯度为例,假设指定数值为1,则该工作单元可根据该加密函数和该指定数值,确定该梯度对应于该指定数值的切片加密数据f(1),即,a+b。
当然,该切片加密数据还可为[1,f(1)]。该切片加密数据对应的具体数据形式可根据需要进行设置,本说明书对此不做限制。
另外,为了方便区分该工作单元的梯度对应的切片加密数据以及执行该模型处理任务的其他工作单元确定出的梯度对应的切片加密数据,该工作单元可将自身的梯度对应的切片加密数据作为第一加密数据。
S106:接收其他工作单元发送的所述其他工作单元的梯度对应于该指定数值的切片加密数据,作为第二加密数据。
在本说明书提供的一个或多个实施例中,如前所述的,在获取到各工作单元分别对应的梯度对应于各指定数值的切片加密数据,则可解密出各工作单元的梯度之和。基于此,该工作单元可接收其他工作单元发送的切片加密数据。
具体的,该工作单元可向执行该模型训练任务的其他工作单元发送第一获取请求。
其他工作单元根据接收到的第一获取请求,将确定除的自身确定出的梯度对应于指定数值的切片加密数据发送至该工作单元。
该工作单元可对其他工作单元发送的其他工作单元的梯度对应于指定数值的切片加密数据进行接收,并将接收到的其他工作单元的梯度对应于指定数值的切片加密数据,作为第二加密数据。
当然,针对每个工作单元,在确定出自身的梯度对应于指定数值的切片加密数据后,可将自身的梯度对应于指定数值的切片加密数据,发送至执行该模型训练任务的其他工作单元。于是,该工作单元可直接接收该模型训练任务的其他工作单元发送的切片加密数据。
S108:根据对应于各指定数值的切片加密数据,确定所述其他工作单元的梯度和该工作单元的梯度之和,并根据所述梯度之和,执行所述模型训练任务。
在本说明书提供的一个或多个实施例中,如前所述的,在确定出各工作单元分别对应的梯度对应于各指定数值的切片加密数据后,可对执行模型训练任务的各工作单元的梯度之和进行解密。则后续可基于解密得到的梯度之和,执行该模型训练任务。
具体的,该工作单元可确定自身梯度对应于指定数值的切片加密数据,即,第一加密数据。以及接收其他工作单元的梯度对应于指定数值的切片加密数据,即,第二加密数据。
于是,该工作单元可根据第一加密数据和第二加密数据,确定对应于指定数值的各切片加密数据。其中,该对应于指定数值的各切片加密数据,为执行各切片加密数据的工作单元的梯度对应于该指定数值的切片加密数据。
然后,该工作单元可确定对应于各指定数值的切片加密数据。于是,针对每个指定数值,对应于该指定数值的各切片加密数据,可看作是由不同的加密函数和相同的指定数值对不同梯度进行加密的结果。而针对每个梯度,该梯度对应的各切片加密数据,可看作是相同的加密函数和不同的指定数值对该梯度进行加密的结果。
最后,该工作单元可根据对应于各指定数值的切片加密数据,解密得到执行该数据处理任务的各工作单元的梯度之和,即,其他工作单元的梯度和该工作单元的梯度之和。
则在解密得到梯度之和以后,该工作单元可判断是否达到迭代终止条件。其中,该迭代终止条件可为迭代次数达到预设的次数阈值,也可为根据步骤S100中确定出的损失小于预设的损失阈值。具体该迭代终止条件如何设置可根据需要进行设置,本说明书对此不做限制。
若是,则该工作单元可确定模型训练任务对应的模型已经被训练完成。即,本次联邦学习任务已结束。
若否,则该工作单元可根据确定出的梯度之和,调整该模型训练任务对应的模型的模型参数,并根据调整后的模型参数和该工作单元自身存储的训练样本,重新确定该工作单元的梯度。并根据确定出的梯度,重新确定第一加密数据,以及根据重新确定出的第一加密数据,继续确定执行该模型训练任务的各工作单元的梯度之和,直至达到迭代终止条件为止。
也就是说,在确定模型训练任务对应的模型尚未训练完成后,该工作单元可根据确定出的梯度之和,调整自身部署的模型的模型参数,并根据调整后的模型参数确定调整后的模型参数下的模型梯度,再根据确定出的梯度重新确定梯度对应于指定数值的切片加密数据,以根据对应于各指定数值的切片加密数据继续完成梯度的聚合,并以此来继续更新模型参数,以根据更新后的模型参数进行下一次迭代过程。重复迭代过程,直到模型训练结束。
于是,基于上述模型训练方法训练得到的风控模型,在用户执行业务的过程中,可确定基于用户的敏感数据等确定出的待风控数据对应的风控结果,再基于风控结果对用户进行风控。
基于本说明书提供的该模型训练方法,采用同态加密的思想,对各工作单元的梯度进行加密,则针对每个工作单元,该工作单元在接收到第一加密数据和第二加密数据后,无法直接确定其他工作单元的梯度,仅能确定出的其他工作单元和该工作单元的梯度之和。因此也无法反推其他工作单元的训练样本和模型参数,保证了数据安全。
如图1所示的模型训练方法,针对训练系统中的每个工作单元,以该工作单元的梯度为参数,确定加密函数,并根据加密函数,确定该梯度对应于指定数值的切片加密数据。进而根据该梯度对应于指定数值的切片加密数据,以及其他工作单元的梯度对应于指定数值的切片加密数据,确定其他工作单元的梯度和该工作单元的梯度之和,以此来完成梯度的聚合,再根据聚合后的梯度完成模型训练任务。该模型训练方法的执行过程不需要参数服务器的参与,因此,即使在参数服务器不可信的情况下,也无法窃取到工作单元中的训练样本和模型参数的相关信息,保证了训练样本和模型参数的信息安全。
且基于本说明书中的该模型训练方法训练风控模型的过程中,保证了该训练系统中各工作单元存储的敏感数据的数据安全。
另外,为了保证模型训练效率,避免出现已经重新确定出执行模型训练任务的各工作单元的梯度之和后,确定该模型训练任务已执行完毕的情况。上述判断达到迭代终止条件的步骤,还可为工作单元在步骤S100中执行。
进一步的,在步骤S102中,该工作单元还可直接将该梯度作为加密函数的参数,随机选择任一包含该参数和自变量的函数,作为加密函数,再将确定出的加密函数的函数类型进行广播,广播至执行该模型训练任务的其他工作单元中。
其他工作单元可根据接收到的函数类型和确定出的自身梯度,确定自身的加密函数。
更进一步的,针对每个第二加密数据,在该第二加密数据传输的过程中,可能出现该第二加密数据被拦截并篡改的情况,则该工作单元基于接收到的篡改后的第二加密数据执行后续步骤时,可能出现篡改第二加密数据的攻击方根据执行结果反推该工作单元中的训练样本和模型参数的情况。为了避免上述情况的发生,在步骤S108前,该工作单元可在接收到第二加密数据后,对第二加密数据进行验证。
具体的,该工作单元还可对自身对应的加密函数中的各参数进行加密,确定第一加密参数,并将该第一加密数据和第一加密参数进行广播。其中,该加密方式可为对该加密函数中的各参数进行同态计算,也可根据该加密函数中的各参数确定该工作单元的签名。
同样的,针对每个第二加密数据,该工作单元还可接收该第二加密数据对应的第二加密参数。其中,该第二加密参数和该第一加密参数的加密方式相同。该第二加密参数为发送该第二加密数据的工作单元发送的。
于是,该工作单元可根据该第二加密参数,对该第二加密数据进行验证。其中,若该第二加密参数的加密方式为同态计算,则该工作单元可对第二加密数据进行同态计算处理,并判断处理结果和该第二加密参数的乘积等是否相同来对该第二加密数据进行验证。若该第二加密参数的加密方式仅为对称加密或非对称加密,则该工作单元可根据第一加密参数的加密方式,反推该第二加密参数对应的明文。若该第二加密参数为签名,则该工作单元可根据接收到的数字签名对该第二加密数据进行验证。
若验证通过,则该工作单元可确定该第二加密数据为安全数据,可执行后续步骤。
若验证不通过,则该工作单元可确定该训练系统存在安全隐患。即,该训练系统中的各工作单元传输的数据可被攻击方拦截,或该训练系统中的各工作单元中,存在传输错误数据的工作单元。于是,该工作单元可返回用于表征训练系统存在安全隐患的提示信息。
另外,群作为密码学中的一个重要抽样模型,常被用于对数据进行加密。因此,在本说明书中,上述确定第一加密参数和第二加密参数时采用的加密方式,可为使用群的生成元进行加密的方式。
具体的,该工作单元可首先确定生成元:
该工作单元可预先定义一个较大的素数,作为模素数。并从模素数-1对应的数值的因数中,确定一个素数因子,作为阶素数。
在确定出模素数和阶素数后,该工作单元可构建乘法循环群ZP={1,2,……,p―1},并确定循环群的生成元。以模素数为p,阶素数为q,生成元为g为例,则gq=e。即,g为乘法循环群的生成元,且阶为q。
于是,在确定出模素数、阶素数和生成元后,该工作单元可将上述模素数、阶素数和生成元作为第三加密数据进行广播。
其他工作单元在可对接收到的第三加密数据进行验证。即,根据g为惩罚循环群的生成元,且阶为q是否成立,阶素数是否为素数,模素数是否为素数等任一条件对第三加密数据进行验证。
若验证通过,则该其他工作单元后续可基于该生成元对加密函数的参数进行加密。
若验证不通过,则该其他工作单元可发送用于表征该训练系统存在安全隐患的提示信息。
则在验证通过后,针对每个工作单元,该工作单元可将生成元作为底数,将参数作为指数,将其对应的结果基于模素数进行取模的方式,对该工作单元的梯度进行加密。
以该工作单元的加密函数为f(x)=ax+b,a、b为该加密函数的参数,b为该工作单元确定出的梯度为例,假设指定数值为1,则该工作单元可确定该指定数值的切片加密数据f(1),即,a+b。则该工作单元对应的第一加密参数为ga和gb
于是,其他工作单元可接收该工作单元的切片加密数据和该切片加密数据对应的第一加密参数,并基于第一加密参数对接收到的切片加密数据进行验证。
进一步的,一种常用的同态加密方式是对不同数据进行相同的处理,后续基于不同数据的处理结果之和,来反算出不同数据之和。同样的,本说明书中的步骤S110中,该工作单元同样可基于该原理对执行模型训练任务的各工作单元的梯度之和进行解密。
具体的,该工作单元可针对每个指定数值,将对应于该指定数值的切片加密数据做加和,得到对应于该指定数值的切片加密数据之和。
于是,该工作单元可根据各指定数值分别对应的切片加密数据之和,基于同态加密原理,对执行该模型训练任务的各工作单元的梯度之和进行解密。
以训练系统中存在工作单元1和工作单元2为例,假设工作单元1对应的加密函数为f1(x)=a1x+a2,工作单元2对应的加密函数为f2(x)=b1x+b2,且a2和b2分别为工作单元1和工作单元2的梯度。若指定数值分别为1和2,则对应于指定数值1的切片加密数据之和f1(1)+f2(1)=a1+b1+a2+b2。对应于指定数值2的切片加密数据之和f1(2)+f2(2)=2a1+2b1+a2+b2。于是,基于上述对应于指定数值1的切片加密数据之和,以及对应于指定数值2的切片加密数据之和,可确定出该工作单元1和工作单元2的梯度之和a2+b2对应的具体数值。则后续可基于该梯度之和,继续执行该模型训练任务。
需要说明的是,上述各指定数值的数量不小于执行模型训练任务的工作单元的数量,是因为只有在获取到执行模型训练任务的工作单元的数量的切片加密数据,才能解密得到准确的各工作单元的梯度之和。同时,若同一梯度对应的切片加密数据的数量过少的情况下,该工作单元还可解密得到梯度之和,则切片加密数据的安全性显然不够高,因此,为了保证安全性,将各指定数值的数量设置为不小于执行模型训练任务的工作单元的数量。
更进一步的,针对每个工作单元,若该工作单元确定出的梯度之和与其他工作单元确定出的梯度之和不一致,则可能存在该训练系统存在安全隐患的情况。
具体的,针对每个工作单元,该工作单元可向执行该模型训练任务的其他工作单元发送第二获取请求,该第二获取请求用于获取其他工作单元确定出的梯度之和。
其他工作单元可根据接收到的第二获取请求,将自身确定出的梯度之和返回给该工作单元。
于是,该工作单元可判断接收到的其他工作单元发送的梯度之和与自身确定出的梯度之和是否一致。
若一致,则该工作单元可根据确定出的梯度之和继续执行模型训练任务。
若不一致,则该工作单元可发送用于表征该训练系统存在安全隐患的提示信息。
另外,出于对工作单元中存储的训练样本的安全考虑,避免该训练系统存在安全隐患的情况下无法及时发现导致信息泄露的情况出现。该工作单元还可针对每个指定数值,通过第一加密参数和第二加密参数,将对应于该指定数值的切片加密数据之和进行验证。
具体的,该工作单元可针对每个指定数值,确定对应于该指定数值的切片加密数据之和。
然后,该工作单元可根据第一加密参数和第二加密参数,将对应于该指定数值的切片加密数据之和进行验证。
最后,若对应于各指定数值的切片加密数据之和均验证通过后,该工作单元根据对应于各指定数值的切片加密数据之和,解密得到该工作单元的梯度和其他工作单元的梯度之和。
若任一验证结果为不通过,则该工作单元可发送用于表征该训练系统存在安全隐患的提示信息。
进一步的,在本说明书中,每个工作单元可仅接收对应于该工作单元的目标数值的切片加密数据。其中,该工作单元用于完成对应于该工作单元的目标数值的切片加密数据的聚合。即,该工作单元用于确定对应于该工作单元的目标数值的切片加密数据之和。
于是,该工作单元还可接收其他工作单元发送的对应于该其他工作单元的目标数值的切片加密数据之和。并根据接收到的对应于该其他工作单元的目标数值的切片加密数据之和,确定对应于各指定数值的切片加密数据之和。
需要说明的是,本说明书中所有获取信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
基于同样思路,本说明书还提供一种模型训练装置,如图2所示。
图2为本说明书提供的模型训练装置,所述装置应用于模型训练系统,所述训练系统包含若干工作单元,每个工作单元存储不同的训练样本,其中:
梯度确定模块200,用于针对每个工作单元,响应于模型训练任务,根据该工作单元自身存储的训练样本,确定梯度。
函数确定模块202,用于以所述梯度为加密函数的参数,确定该工作单元对应的加密函数。
切片确定模块204,用于针对每个指定数值,根据该指定数值和所述加密函数,确定所述梯度对应于该指定数值的切片加密数据,作为第一加密数据,其中,各指定数值的数量不小于执行所述模型训练任务的工作单元的数量。
接收模块206,用于接收其他工作单元发送的所述其他工作单元的梯度对应于该指定数值的切片加密数据,作为第二加密数据。
执行模块208,用于根据对应于各指定数值的切片加密数据,确定所述其他工作单元的梯度和该工作单元的梯度之和,并根据所述梯度之和,执行所述模型训练任务。
可选地,所述函数确定模块202,用于根据预设的加密函数的范式和所述梯度,确定生成加密函数所需的参数,根据所述参数,确定以所述梯度为参数的加密函数,作为该工作单元对应的加密函数。
可选地,在根据对应于各指定数值的切片加密数据,解密得到所述其他工作单元的梯度和该工作单元的梯度之和前之前,所述接收模块206,用于对所述加密函数中的各参数进行加密,确定第一加密参数,将所述第一加密数据和所述第一加密参数进行广播,针对每个第二加密数据,接收该第二加密数据对应的第二加密参数,所述第二加密参数和所述第一加密参数的加密方式相同,所述第二加密参数为发送该第二加密数据的工作单元发送的,根据所述第二加密参数,确定所述第二加密数据验证通过。
可选地,所述执行模块208,用于针对每个指定数值,确定对应于该指定数值的各切片加密数据之和,根据各指定数值分别对应的切片加密数据之和,对所述其他工作单元的梯度和该工作单元的梯度之和进行解密。
可选地,所述执行模块208,用于根据所述梯度之和,调整该工作单元的模型参数,根据调整后的模型参数和该工作单元自身存储的训练样本,重新确定梯度,并根据重新确定出的梯度,重新确定第一加密数据,以及根据重新确定出的第一加密数据继续确定执行所述模型训练任务的各工作单元的梯度之和,直至达到迭代终止条件为止。
可选地,所述执行模块208,用于接收其他工作单元发送的所述其他工作单元解密得到的梯度之和,判断该工作单元自身解密得到的梯度之和与所述其他工作单元解密得到的梯度之和是否一致,若是,执行所述模型训练任务,若否,发送用于表征所述训练系统存在安全隐患的提示信息。
可选地,所述执行模块208,用于针对每个指定数值,根据所述第一加密参数和所述第二加密参数,将对应于该指定数值的切片加密数据之和进行验证,当对应于各指定数值的切片加密数据之和均验证通过后,根据对应于各指定数值的切片加密数据之和,解密得到所述其他工作单元的梯度和该工作单元的梯度之和。
本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1提供的模型训练方法。
本说明书还提供了图3所示的电子设备的示意结构图。如图3所述,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所述的模型训练方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元应用容器,也可以是硬件或逻辑器件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

Claims (10)

1.一种模型训练方法,所述方法应用于训练系统,所述训练系统包含若干工作单元,每个工作单元存储不同的训练样本,所述方法包括:
针对每个工作单元,响应于模型训练任务,根据该工作单元自身存储的训练样本,确定梯度;
以所述梯度为加密函数的参数,确定该工作单元对应的加密函数;
针对每个指定数值,根据该指定数值和所述加密函数,确定所述梯度对应于该指定数值的切片加密数据,作为第一加密数据,其中,各指定数值的数量不小于执行所述模型训练任务的工作单元的数量;
接收其他工作单元发送的所述其他工作单元的梯度对应于该指定数值的切片加密数据,作为第二加密数据;
根据对应于各指定数值的切片加密数据,解密得到所述其他工作单元的梯度和该工作单元的梯度之和,并根据所述梯度之和,执行所述模型训练任务。
2.如权利要求1所述的方法,根据所述梯度,以所述梯度为加密函数的参数,确定该工作单元对应的加密函数,具体包括:
根据预设的加密函数的范式和所述梯度,确定生成加密函数所需的参数;
根据所述参数,确定以所述梯度为参数的加密函数,作为该工作单元对应的加密函数。
3.如权利要求1所述的方法,在根据对应于各指定数值的切片加密数据,解密得到所述其他工作单元的梯度和该工作单元的梯度之和前,所述方法还包括:
对所述加密函数中的各参数进行加密,确定第一加密参数,将所述第一加密数据和所述第一加密参数进行广播;
针对每个第二加密数据,接收该第二加密数据对应的第二加密参数,所述第二加密参数和所述第一加密参数的加密方式相同,所述第二加密参数为发送该第二加密数据的工作单元发送的;
根据所述第二加密参数,确定所述第二加密数据验证通过。
4.如权利要求1所述的方法,根据对应于各指定数值的切片加密数据,解密得到所述其他工作单元的梯度和该工作单元的梯度之和,具体包括:
针对每个指定数值,确定对应于该指定数值的各切片加密数据之和;
根据各指定数值分别对应的切片加密数据之和,对所述其他工作单元的梯度和该工作单元的梯度之和进行解密。
5.如权利要求1所述的方法,根据所述梯度之和,执行所述模型训练任务,具体包括:
根据所述梯度之和,调整该工作单元的模型参数;
根据调整后的模型参数和该工作单元自身存储的训练样本,重新确定梯度,并根据重新确定出的梯度,重新确定第一加密数据,以及根据重新确定出的第一加密数据继续确定执行所述模型训练任务的各工作单元的梯度之和,直至达到迭代终止条件为止。
6.如权利要求1所述的方法,根据所述梯度之和,执行所述模型训练任务前,所述方法还包括:
接收其他工作单元发送的所述其他工作单元解密得到的梯度之和;
判断该工作单元自身解密得到的梯度之和与所述其他工作单元解密得到的梯度之和是否一致;
若是,执行所述模型训练任务;
若否,发送用于表征所述训练系统存在安全隐患的提示信息。
7.如权利要求3所述的方法,根据对应于各指定数值的切片加密数据,解密得到所述其他工作单元的梯度和该工作单元的梯度之和,具体包括:
针对每个指定数值,根据所述第一加密参数和所述第二加密参数,将对应于该指定数值的切片加密数据之和进行验证;
当对应于各指定数值的切片加密数据之和均验证通过后,根据对应于各指定数值的切片加密数据之和,解密得到所述其他工作单元的梯度和该工作单元的梯度之和。
8.一种模型训练装置,所述装置应用于模型训练系统,所述训练系统包含若干工作单元,每个工作单元存储不同的训练样本,所述装置包括:
梯度确定模块,用于针对每个工作单元,响应于模型训练任务,根据该工作单元自身存储的训练样本,确定梯度;
函数确定模块,用于以所述梯度为加密函数的参数,确定该工作单元对应的加密函数;
切片确定模块,用于针对每个指定数值,根据该指定数值和所述加密函数,确定所述梯度对应于该指定数值的切片加密数据,作为第一加密数据,其中,各指定数值的数量不小于执行所述模型训练任务的工作单元的数量;
接收模块,用于接收其他工作单元发送的所述其他工作单元的梯度对应于该指定数值的切片加密数据,作为第二加密数据;
执行模块,用于根据对应于各指定数值的切片加密数据,确定所述其他工作单元的梯度和该工作单元的梯度之和,并根据所述梯度之和,执行所述模型训练任务。
9.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~7任一项所述的方法。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述权利要求1~7任一项所述的方法。
CN202310252668.4A 2023-03-10 2023-03-10 一种模型训练方法、装置、存储介质以及电子设备 Pending CN116401683A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310252668.4A CN116401683A (zh) 2023-03-10 2023-03-10 一种模型训练方法、装置、存储介质以及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310252668.4A CN116401683A (zh) 2023-03-10 2023-03-10 一种模型训练方法、装置、存储介质以及电子设备

Publications (1)

Publication Number Publication Date
CN116401683A true CN116401683A (zh) 2023-07-07

Family

ID=87008326

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310252668.4A Pending CN116401683A (zh) 2023-03-10 2023-03-10 一种模型训练方法、装置、存储介质以及电子设备

Country Status (1)

Country Link
CN (1) CN116401683A (zh)

Similar Documents

Publication Publication Date Title
CN108932297B (zh) 一种数据查询、数据共享的方法、装置及设备
CN108063756B (zh) 一种密钥管理方法、装置及设备
CN113312667B (zh) 一种风险防控方法、装置及设备
CN110162981A (zh) 数据处理方法及装置
CN116011587A (zh) 一种模型训练方法、装置、存储介质及电子设备
CN113821817B (zh) 基于区块链的数据处理方法、装置、设备及系统
CN116167044A (zh) 一种应用容器的创建方法、装置及设备
CN114638005A (zh) 基于区块链的数据处理方法、装置及系统、存储介质
CN116257303B (zh) 一种数据安全处理的方法、装置、存储介质及电子设备
CN117349671A (zh) 一种模型训练的方法、装置、存储介质及电子设备
CN116629381A (zh) 一种联邦迁移学习方法、装置、存储介质及电子设备
CN116401683A (zh) 一种模型训练方法、装置、存储介质以及电子设备
CN115618375A (zh) 一种业务执行方法、装置、存储介质及电子设备
CN114819932B (zh) 基于区块链的业务处理方法及装置
CN114896635A (zh) 一种数据处理方法、装置、电子设备和存储介质
CN110995447B (zh) 一种数据存证方法、装置、设备以及介质
CN114638998A (zh) 模型更新方法、装置、系统及设备
CN111641499A (zh) 一种基于区块链的私钥还原方法、装置、设备及介质
CN117033442A (zh) 一种数据聚合的方法、装置、存储介质及电子设备
CN115987489B (zh) 一种轻量级的加密解密方法、装置和存储介质
CN114547641B (zh) 一种基于区块链的工业数据追踪方法、装置、设备及介质
CN114301710B (zh) 确定报文是否被篡改的方法、密管平台和密管系统
CN116611097B (zh) 基于行政数据的土地资源管理方法、装置及电子设备
CN116226902A (zh) 一种数据查询方法、装置、存储介质及电子设备
CN116561772B (zh) 可信静态度量值计算方法、装置、存储介质及处理器

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination