CN116011590A - 联邦学习方法、装置和系统 - Google Patents
联邦学习方法、装置和系统 Download PDFInfo
- Publication number
- CN116011590A CN116011590A CN202310078998.6A CN202310078998A CN116011590A CN 116011590 A CN116011590 A CN 116011590A CN 202310078998 A CN202310078998 A CN 202310078998A CN 116011590 A CN116011590 A CN 116011590A
- Authority
- CN
- China
- Prior art keywords
- data
- execution environment
- sample data
- trusted execution
- objective function
- 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
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本公开提供了一种联邦学习方法、装置和系统,涉及联邦学习技术领域以及计算机技术领域。具体实现方案为:根据开发任务调用目标函数,目标函数用于配置算法模型及可信执行环境;在目标函数鉴权通过的情况下,获取来自至少一个数据拥有方的加密样本数据;响应于数据解密请求,可信执行环境利用密钥对加密样本数据进行解密,得到解密后的样本数据;将解密后的样本数据输入算法模型,得到输出结果。通过以上过程,能够通过目标函数配置算法程序及可信执行环境,分别获取来自数据拥有方的加密数据以及密钥,如此提高了算法的可扩展性及性能,在此基础上能够实现明文数据不出域,进而实现了算力平台与数据拥有方的端到端加密。
Description
技术领域
本公开涉及联邦学习技术领域以及计算机技术领域,具体涉及一种联邦学习方法、装置和系统。
背景技术
联邦学习(Federated Learning)是一种打破数据孤岛、释放人工智能应用潜能的分布式机器学习技术。现有的联邦学习技术中,一般通过多个拥有样本数据的分布式边缘设备或者服务器,联合多个参与者构建通用鲁棒的机器学习模型。相比于传统的集中式机器学习算法,联邦学习技术在学习过程中不交换数据,数据安全性较高,但这种方式存在系统开销大、性能较差的问题。
因此,如何开发一种新的联邦学习方法和系统,在提升算法性能的同时保证数据安全,成为亟待解决的问题。
发明内容
本公开提供了一种联邦学习方法、装置和系统。
根据本公开的一方面,提供了一种联邦学习方法,该方法可以包括以下步骤:
根据开发任务调用目标函数,目标函数用于配置算法模型及可信执行环境;
在目标函数鉴权通过的情况下,获取来自至少一个数据拥有方的加密样本数据;
响应于数据解密请求,可信执行环境利用密钥对加密样本数据进行解密,得到解密后的样本数据;
将解密后的样本数据输入算法模型,得到输出结果。
根据本公开的另一方面,提供了一种联邦学习装置,该装置可以包括:
函数调用模块,用于根据开发任务调用目标函数,目标函数用于配置算法模型及可信执行环境;
数据获取模块,用于在目标函数鉴权通过的情况下,获取来自至少一个数据拥有方的加密样本数据;
数据解密模块,用于响应于数据解密请求,可信执行环境利用密钥对加密样本数据进行解密,得到解密后的样本数据;
算法执行模块,用于将解密后的样本数据输入算法模型,得到输出结果。
根据本公开的另一方面,提供了一种联邦学习系统,该系统可以包括:
算力平台,用于根据开发任务调用目标函数,目标函数用于配置算法程序及可信执行环境;在目标函数鉴权通过的情况下,获取来自至少一个数据拥有方的加密样本数据;响应于数据解密请求,可信执行环境利用密钥对加密样本数据进行解密,得到解密后的样本数据;将解密后的样本数据输入算法模型,得到输出结果;
业务开发方,用于向算力平台发送开发请求;
数据拥有方,用于存储加密样本数据以及与加密样本数据对应的密钥;在目标函数鉴权通过的情况下,向算力平台提供加密样本数据,并向可信执行环境发送密钥。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与该至少一个处理器通信连接的存储器;其中,
该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行本公开任一实施例中的方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行本公开任一实施例中的方法。
根据本公开提供的技术方案,通过目标函数配置算法程序及可信执行环境,并在鉴权通过的情况下,分别获取来自数据拥有方的加密数据以及密钥,如此提高了算法的可扩展性及性能,在此基础上能够实现明文数据不出域,进而实现了算力平台与数据拥有方的端到端加密。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开联邦学习方法的流程图;
图2是根据本公开数据解密方法的流程图;
图3是根据本公开获取密钥方法的流程图;
图4是根据本公开联邦学习装置的结构图;
图5是根据本公开联邦学习系统的结构图;
图6是实现本公开实施例的系统启动的电子设备框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
如图1所示,本公开涉及一种联邦学习方法,该方法可以包括以下步骤:
S101:根据开发任务调用目标函数,目标函数用于配置算法程序及可信执行环境;
S102:在目标函数鉴权通过的情况下,获取来自至少一个数据拥有方的加密样本数据;
S103:响应于数据解密请求,利用密钥对加密样本数据进行解密,得到解密后的样本数据;
S104:将解密后的样本数据输入算法模型,得到输出结果。
本实施例可以应用于具备数据通信功能的硬件平台,包括各种云端算力平台,例如FaaS(Functions as a Service,函数即服务)平台。FaaS平台作为一种面对云端函数的、构建和部署服务端软件的新方式,在FaaS服务调度平台中,去掉主机实例层和应用软件层,取而代之的是云函数平台,从而大幅简化开发流程。
在一种实施方式中,用户上传开发请求后,自动生成对应的开发任务。该开发任务是一种联邦学习任务,FaaS平台根据联邦学习任务进行过程调度。具体地,FaaS平台根据生成的开发任务调用特定的目标函数,根据目标函数配置与开发任务对应的配置算法程序及可信执行环境。其中,开发请求可以是一个任务开发方发送的,也可以是多个任务开发方发送的,此处不做限定。此外,任务开发方与数据拥有方可以是同一用户,也可以是不同用户,此处不做限定。开发任务可以是包含有至少一个开发请求的消息队列。具体地,在消息中心接收到各个任务开发方发送的开发请求后,按开发请求的时间顺序生成消息队列,作为算力平台的开发任务。
任务开发方是任务开发人员所使用的电子设备,数据拥有方是数据拥有者所使用的电子设备,本实施例中不对电子设备的具体类型作限定。
开发任务可以包括任务ID、任务目标、任务开发方信息、任务所需数据的数据提供方信息以及其他合作伙伴信息等,此处不做穷举。其中,任务目标可以是利用至少一个数据拥有方提供的样本数据对待训练模型进行训练,或者是利用已训练好的模型对至少一个数据拥有方提供的样本数据进行预测。其中,样本数据可以是图像数据、声音数据等,此处不做限定,具体可以根据任务开发方的具体需求进行确定。
FaaS平台根据开发任务调用特定的目标函数的实现方式可以是,利用FaaSGateway将开发任务的路由和对应的处理函数进行映射,并将响应结果代理返回给任务开发方。
函数是FaaS平台的基本单元,算力平台上的各个应用逻辑单元均可以视为一个函数,用户只需关注如何实现这些逻辑,而不用提前考虑性能优化。任务开发过程中,可以根据开发任务中的任务ID、任务目标、任务开发方等信息调用特定目标函数。
根据开发任务调用的目标函数用于配置算法程序以及可信执行环境,其中,算法程序可以是待训练模型以及对应的程序代码,或者是已训练好的模型以及对应的程序代码,此处不做限定。算法程序可以是通过不同方式获取的,例如,可以是由算力平台中的函数代码管理服务预先发布的,也可以是用户根据需要定制生成,生成的算法程序经授权后由函数代码管理服务发布至算力平台,此处不做限定。
可信执行环境(Trusted execution environment,简称TEE)是一种具有运算和储存功能,能提供安全性和完整性保护的独立处理环境,在硬件中为敏感数据单独分配一块隔离的内存,所有敏感数据的计算均在这块内存中进行,并且除了经过授权的接口外,硬件中的其他部分不能访问隔离的内存中的信息。本公开实施例通过可信执行环境节点来获取数据拥有方的加密样本数据对应的密钥,并进行相关处理操作,以保护联邦学习各参与方的隐私数据。
根据开发任务完成目标函数调用之后,执行步骤S102,在目标函数鉴权通过的情况下,获取来自至少一个数据拥有方的加密样本数据。其中,目标函数的鉴权可以通过多种方式实现,优选的,由数据拥有方的数据库对目标函数进行鉴权,该数据库存储有加密样本数据,只有在鉴权通过的情况下,数据库才授权将加密样本数据发送给算力平台。
鉴权过程可以是由数据库判断目标函数的函数ID是否属于认证函数白名单中的函数。其中,函数ID可以是各个函数独有的不可逆唯一标识,例如可以是哈希值,此处不做限定。认证函数白名单是存储在数据拥有方数据库中的数据清单,包括至少一个认证函数ID,白名单中的认证函数均是通过算力平台中的函数代码管理服务平台发布的,预先经过算力平台及各个任务参与方的审计,满足相关认证条件。
在完成目标函数的鉴权以及获取到加密样本数据之后,执行步骤S103,包括响应于数据解密请求,利用密钥对加密样本数据进行解密,得到解密后的样本数据。其中,数据解密请求可以由目标函数发起,响应于数据解密请求,在可信执行环境中对加密样本数据执行解密,将数据密文转变为数据明文。
在得到解密后的样本数据后,执行步骤S104,将解密后的样本数据输入算法模型,得到输出结果。其中,解密后的样本数据可以是机器学习所需的训练数据,利用训练数据对待训练算法模型进行训练,直至模型收敛或满足迭代训练次数之后停止训练,将训练好的模型作为输出结果。解密后的样本数据还可以是待检测数据,将待检测数据输入至算法模型得到预测值,将预测值作为输出结果。
通过以上过程,利用集中式算力平台实现了联邦学习,同时,基于以上系统架构,能够确保数据拥有方对本方样本数据的完全控制,对数据拥有方而言,能够实现明文不出域,提升了数据安全性。
在一种实施方式中,在根据输入的开发任务调用目标函数之前,还包括:
在各个业务开发方全部鉴权通过的情况下,接收由至少一个业务开发方发送的开发请求;
根据开发请求生成开发任务。
其中,业务开发方的鉴权方式可以根据需要进行设定,例如,可以通过业务开发方输入的密码进行鉴权,也可以是业务开发方远程认证后,从可信执行环境中获取公钥,业务开发发对开发请求进行加密,发送至算力平台后再由可信执行环境进行解密。
在各个业务开发方均鉴权通过的情况下,算力平台按时间顺序逐个接收各个开发请求,形成消息队列,进而根据消息队列生成开发任务。其中,开发任务包括任务详情信息、调用模型信息等,此处不做限定。
如图2所示,在一种实施方式中,响应于数据解密请求,利用密钥对加密样本数据进行解密,包括:
S201:可信执行环境接收目标函数发送的数据解密请求;
S202:在目标函数鉴权通过的情况下,通过可信执行环境获取与加密样本数据对应的密钥;
S203:利用密钥对加密样本数据进行解密。
在目标函数从数据拥有方接收到加密样本数据后,目标函数可以向可信执行环境发送数据解密请求。可信执行环境接收目标函数发送的数据解密请求后,首先对目标函数进行鉴权,鉴权方式可以根据需要进行设定,此处不做限制。在目标函数鉴权通过的情况下,通过可信执行环境获取与加密样本数据对应的密钥,具体地,可信执行环境获取密钥的时间可以根据需要进行设定,例如,可以在可信执行环境硬件出厂时获取对应的密钥,或者在可信执行环境硬件启动的时候获取,也可以是在任务执行过程中获取,此处不做限定。获取加密样本数据对应的密钥后,在可信执行环境中利用密钥对加密样本数据完成解密。
如图3所示,在一种实施方式中,通过可信执行环境获取与加密样本数据对应的密钥,包括:
S301:可信执行环境通过网卡远程访问位于数据拥有方的密钥管理单元;密钥管理单元预先存储有与数据解密请求对应的密钥;
S302:在可信执行环境的身份验证通过的情况下,接收由密钥管理单元发送的密钥;
S303:将密钥存储于可信执行环境的内存中。
其中,可信执行环境通过网卡远程访问位于数据拥有方的密钥管理单元,可以是通过位于可信执行环境中的安全芯片或者协议处理器,远程登陆位于数据拥有方的密钥管理单元。登陆过程可以是基于目标函数发送的指令自动实现,也可以是基于人工操作实现,此处不做限定。
密钥管理单元可以是预先存储有加密样本数据对应密钥的硬件或者软件单元,例如,可以是HSM(Hardware security module,硬件安全模块)或者KMS(Key ManagementService,密钥管理服务),此处不做限定。
在可信执行环境远程登陆HSM/KMS之后,HSM/KMS对提出密钥请求的可信执行环境进行身份验证,验证过程可以根据需要进行设定。例如,可信执行环境将验证信息发送给HSM/KMS,HSM/KMS反馈验证结果。验证信息包括以下至少一种:可信执行环境的标识信息、时间戳信息、受信任的函数信息。其中,可信执行环境的标识信息可以是可信执行环境的硬件标识,函数信息可以是函数的签名信息等。
在可信执行环境验证通过的情况下,HSM/KMS将密钥发送给可信执行环境,为进一步降低被攻击的风险,可信执行环境将密钥保存在内存环境中。如此可以避免密钥在算力平台落盘,减小攻击面。
在一种实施方式中,通过可信执行环境获取与加密样本数据对应的密钥,包括:
可信执行环境通过专有网络请求获取密钥,密钥预先存储于数据拥有方的密钥管理单元中;
请求成功后,接收密钥并存储于可行执行环境的内存中。
其中,专有网络可以根据需要进行设定,可以是可信执行环境与HSM/KMS之间建立的私有网络,也可以是其他形式的专有网络,此处不做限定。
通过以上过程,利用位于数据拥有方的数据库对目标函数进行鉴权,以及利用位于数据拥有方的密钥管理单元对可信执行环境进行验证,由此提升了样本数据使用的安全性。通过采用专有网络或者远程认证的方式,位于数据拥有方的HSM/KMS直通可信执行环境,数据传输不会被中间人攻击,密钥使用的安全性得到保证。同时,通过将密钥存储在可信执行环境的内存,进一步减小了攻击面,保护密钥在算力平台不被窃取。
如图4所示,本公开涉及一种联邦学习装置,该装置包括:
函数调用模块401,用于根据开发任务调用目标函数,目标函数用于配置算法模型及可信执行环境;
数据获取模块402,用于在目标函数鉴权通过的情况下,获取来自至少一个数据拥有方的加密样本数据;
数据解密模块403,用于响应于数据解密请求,可信执行环境利用密钥对加密样本数据进行解密,得到解密后的样本数据;
算法执行模块404,用于将解密后的样本数据输入算法模型,得到输出结果。
如图5所示,本公开涉及一种联邦学习系统,该系统包括:
算力平台501,用于根据开发任务调用目标函数,目标函数用于配置算法模型及可信执行环境;在目标函数鉴权通过的情况下,获取来自至少一个数据拥有方的加密样本数据;响应于数据解密请求,可信执行环境利用密钥对加密样本数据进行解密,得到解密后的样本数据;将解密后的样本数据输入算法模型,得到输出结果;
业务开发方502,用于向算力平台发送开发请求;
数据拥有方503,用于存储加密样本数据以及与加密样本数据对应的密钥;在目标函数鉴权通过的情况下,向算力平台提供加密样本数据,并向可信执行环境发送密钥。
本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图6示出了可以用来实施本公开的实施例的示例电子设备600的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图6所示,设备600包括计算单元601,其可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序,来执行各种适当的动作和处理。在RAM603中,还可存储设备600操作所需的各种程序和数据。计算单元601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如联邦学习的方法。例如,在一些实施例中,联邦学习的方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到RAM 603并由计算单元601执行时,可以执行上文描述的联邦学习的方法的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行联邦学习的方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (10)
1.一种联邦学习方法,包括:
根据开发任务调用目标函数,所述目标函数用于配置算法模型及可信执行环境;
在所述目标函数鉴权通过的情况下,获取来自至少一个数据拥有方的加密样本数据;
响应于数据解密请求,所述可信执行环境利用密钥对所述加密样本数据进行解密,得到解密后的样本数据;
将所述解密后的样本数据输入所述算法模型,得到输出结果。
2.根据权利要求1所述的方法,在所述根据开发任务调用目标函数之前,还包括:
在各个业务开发方全部鉴权通过的情况下,接收由至少一个业务开发方发送的开发请求;
根据所述开发请求生成开发任务。
3.根据权利要求1所述的方法,其中,所述响应于数据解密请求,所述可信执行环境利用密钥对所述加密样本数据进行解密,包括:
所述可信执行环境接收所述目标函数发送的数据解密请求;
在所述目标函数鉴权通过的情况下,通过可信执行环境获取与所述加密样本数据对应的密钥;
利用所述密钥对加密样本数据进行解密。
4.根据权利要求3所述的方法,其中,所述通过可信执行环境获取与所述加密样本数据对应的密钥,包括:
所述可信执行环境通过网卡远程访问位于所述数据拥有方的密钥管理单元;所述密钥管理单元预先存储有与所述数据解密请求对应的密钥;
在所述可信执行环境的身份验证通过的情况下,接收由所述密钥管理单元发送的密钥;
将所述密钥存储于所述可信执行环境的内存中。
5.根据权利要求4所述的方法,其中,所述可信执行环境的身份验证过程,包括:
所述可信执行环境将验证信息发送给密钥管理单元,得到验证结果;所述验证信息包括以下至少一种:可信执行环境的标识信息、时间戳信息、受信任的函数信息。
6.根据权利要求3所述的方法,其中,所述通过可信执行环境获取与所述加密样本数据对应的密钥,包括:
所述可信执行环境通过专有网络请求获取所述密钥,所述密钥预先存储于数据拥有方的密钥管理单元中;
请求成功后,接收所述密钥并存储于可行执行环境的内存中。
7.一种联邦学习装置,包括:
函数调用模块,用于根据开发任务调用目标函数,所述目标函数用于配置算法模型及可信执行环境;
数据获取模块,用于在所述目标函数鉴权通过的情况下,获取来自至少一个数据拥有方的加密样本数据;
数据解密模块,用于响应于数据解密请求,所述可信执行环境利用密钥对所述加密样本数据进行解密,得到解密后的样本数据;
算法执行模块,用于将所述解密后的样本数据输入所述算法模型,得到输出结果。
8.一种联邦学习系统,包括:
算力平台,用于根据开发任务调用目标函数,所述目标函数用于配置算法模型及可信执行环境;在所述目标函数鉴权通过的情况下,获取来自至少一个数据拥有方的加密样本数据;响应于数据解密请求,所述可信执行环境利用密钥对所述加密样本数据进行解密,得到解密后的样本数据;将所述解密后的样本数据输入所述算法模型,得到输出结果;
业务开发方,用于向算力平台发送开发请求;
数据拥有方,用于存储加密样本数据以及与所述加密样本数据对应的密钥;在目标函数鉴权通过的情况下,向算力平台提供加密样本数据,并向可信执行环境发送所述密钥。
9.一种计算机可读存储介质,其中存储有计算机指令,所述计算机指令被计算机执行以实现如权利要求1-6中任一项所述的方法。
10.一种电子设备,包括处理器和存储器,其中,所述存储器存储有可被所述处理器执行的指令,所述指令被所述处理器执行以实现如权利要求1-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310078998.6A CN116011590A (zh) | 2023-02-06 | 2023-02-06 | 联邦学习方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310078998.6A CN116011590A (zh) | 2023-02-06 | 2023-02-06 | 联邦学习方法、装置和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116011590A true CN116011590A (zh) | 2023-04-25 |
Family
ID=86023366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310078998.6A Pending CN116011590A (zh) | 2023-02-06 | 2023-02-06 | 联邦学习方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116011590A (zh) |
-
2023
- 2023-02-06 CN CN202310078998.6A patent/CN116011590A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111683071B (zh) | 区块链的隐私数据处理方法、装置、设备以及存储介质 | |
US10491399B2 (en) | Cryptographic method for secure communications | |
CN106664302B (zh) | 使用信令撤销会话的方法和系统 | |
CN111737366B (zh) | 区块链的隐私数据处理方法、装置、设备以及存储介质 | |
CN107249004B (zh) | 一种身份认证方法、装置及客户端 | |
US9720673B2 (en) | System, method, and computer program product for collaboratively installing a computer application | |
US9374360B2 (en) | System and method for single-sign-on in virtual desktop infrastructure environment | |
US10601590B1 (en) | Secure secrets in hardware security module for use by protected function in trusted execution environment | |
CN112039826B (zh) | 应用于小程序端的登录方法和装置,电子设备,可读介质 | |
US20210243024A1 (en) | User Security Token Invalidation | |
CN109154968B (zh) | 用于组织内的安全且高效的通信的系统和方法 | |
CN109981576B (zh) | 密钥迁移方法和装置 | |
US20220182388A1 (en) | Transfer of trust between authentication devices | |
CN113630412B (zh) | 资源下载方法、资源下载装置、电子设备以及存储介质 | |
CN111400743B (zh) | 基于区块链网络的事务处理方法、装置、电子设备和介质 | |
CN109802927B (zh) | 一种安全服务提供方法及装置 | |
US11818574B2 (en) | Provisioning devices securely using zero touch deployments | |
CN116011590A (zh) | 联邦学习方法、装置和系统 | |
CN115941217A (zh) | 用于安全通信的方法和其相关产品 | |
US11876790B2 (en) | Authenticating computing devices based on a dynamic port punching sequence | |
CN116018580A (zh) | 用于跨云壳层的实例持久化数据的技术 | |
WO2020098346A1 (zh) | 用于推送节点信息的方法和装置 | |
CN114024780B (zh) | 一种基于物联网设备的节点信息处理方法及装置 | |
Ali et al. | AI-enabled cybernetic analytics of security models for smart serious games-based Mobile Operating Systems | |
CN114978626B (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 |