一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种业务处理方法、装置及设备与流程

2021-12-15 00:06:00 来源:中国专利 TAG:


1.本文件涉及计算机技术领域,尤其涉及一种业务处理方法、装置及设备。


背景技术:

2.当前,很多企业或组织以私有云的方式将其某些业务的业务模型部署到业务方本地,此方式中的业务模型的模型结构和相关数据极易被攻击者窃取,而业务模型(如ocr模型和人脸识别模型等)通常是该企业或组织的核心资产,一旦业务模型被泄露,不但会暴露隐藏在业务模型中的用户隐私数据,而且还会给企业或组织造成难以估量的损失。目前对业务模型的保护手段异常薄弱,例如,通常可以采用加密的方式对业务模型进行保护,但此方式下,只需找到解密点进行hook处理,就可以很容易的通过如dump内存的方式窃取到业务模型的模型结构和相关数据。为此,需要提供一种更有效的保护业务模型的模型结构和相关数据,以防止被恶意攻击者窃取的技术方案。


技术实现要素:

3.本说明书实施例的目的是提供一种更有效的保护业务模型的模型结构和相关数据,以防止被恶意攻击者窃取的技术方案。
4.为了实现上述技术方案,本说明书实施例是这样实现的:
5.本说明书实施例提供的一种业务处理方法,应用于业务处理设备,所述业务处理设备包括可信执行环境,所述方法包括:获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于所述可信执行环境中,并能够在所述可信执行环境中运行。将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果。通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果。
6.本说明书实施例提供的一种业务处理方法,应用于区块链系统,所述区块链系统中包括区块链节点,所述区块链节点中包括可信执行环境,所述方法包括:获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于所述区块链节点的可信执行环境中,并能够在所述可信执行环境中运行。基于预先部署于所述区块链系统中的第一智能合约将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果,所述第一智能合约用于触发所述第一子模型对获取的业务数据进行处理。基于预先部署于所述区块链系统中的第二智能合约,通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境
中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果,所述第二智能合约用于触发将所述第一子模型的输出结果传递至可信执行环境中,并在所述可信执行环境中触发对所述第一子模型的输出结果进行处理。
7.本说明书实施例提供的一种业务处理装置,所述装置包括可信执行环境,所述装置包括:数据获取模块,获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于所述可信执行环境中,并能够在所述可信执行环境中运行。第一结果确定模块,将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果。模型预测模块,通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果。
8.本说明书实施例提供的一种业务处理装置,所述装置为区块链系统中的装置,所述装置中包括可信执行环境,所述装置包括:数据获取模块,获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于所述装置的可信执行环境中,并能够在所述可信执行环境中运行。第一结果确定模块,基于预先部署于所述区块链系统中的第一智能合约将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果,所述第一智能合约用于触发所述第一子模型对获取的业务数据进行处理。预测结果确定模块,基于预先部署于所述区块链系统中的第二智能合约,通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果,所述第二智能合约用于触发将所述第一子模型的输出结果传递至可信执行环境中,并在所述可信执行环境中触发对所述第一子模型的输出结果进行处理。
9.本说明书实施例提供的一种业务处理设备,所述业务处理设备设置有可信执行环境,包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于所述可信执行环境中,并能够在所述可信执行环境中运行。将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果。通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果。
10.本说明书实施例提供的一种业务处理设备,所述设备为区块链系统的设备,所述业务处理设备设置有可信执行环境,包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和
第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于所述设备的可信执行环境中,并能够在所述可信执行环境中运行。基于预先部署于所述区块链系统中的第一智能合约将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果,所述第一智能合约用于触发所述第一子模型对获取的业务数据进行处理。基于预先部署于所述区块链系统中的第二智能合约,通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果,所述第二智能合约用于触发将所述第一子模型的输出结果传递至可信执行环境中,并在所述可信执行环境中触发对所述第一子模型的输出结果进行处理。
11.本说明书实施例还提供了一种存储介质,其中,所述存储介质用于存储计算机可执行指令,所述可执行指令在被执行时实现以下流程:获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于可信执行环境中,并能够在所述可信执行环境中运行。将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果。通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果。
12.本说明书实施例还提供了一种存储介质,其中,所述存储介质用于存储计算机可执行指令,所述可执行指令在被执行时实现以下流程:获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于区块链节点的可信执行环境中,并能够在所述可信执行环境中运行。基于预先部署于所述区块链系统中的第一智能合约将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果,所述第一智能合约用于触发所述第一子模型对获取的业务数据进行处理。基于预先部署于所述区块链系统中的第二智能合约,通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果,所述第二智能合约用于触发将所述第一子模型的输出结果传递至可信执行环境中,并在所述可信执行环境中触发对所述第一子模型的输出结果进行处理。
附图说明
13.为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
14.图1为本说明书一种业务处理方法实施例;
15.图2为本说明书一种业务处理设备中的执行环境的示意图;
16.图3为本说明书另一种业务处理方法实施例;
17.图4a为本说明书又一种业务处理方法实施例;
18.图4b为本说明书一种业务处理过程示意图;
19.图5为本说明书一种业务处理装置实施例;
20.图6为本说明书另一种业务处理装置实施例;
21.图7为本说明书一种业务处理设备实施例。
具体实施方式
22.本说明书实施例提供一种业务处理方法、装置及设备。
23.为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
24.实施例一
25.如图1所示,本说明书实施例提供一种业务处理方法,该方法的执行主体可以为业务处理设备,该业务处理设备可以是终端设备或服务器,其中,该终端设备可以如笔记本电脑或台式电脑等计算机设备,或者,可以为iot设备等。服务器可以是某项业务(如进行交易的业务或金融业务等)的服务器,具体如,该服务器可以是支付业务的服务器,也可以是与金融或即时通讯等相关业务的服务器等。该业务处理设备中可以设置有可信执行环境,该可信执行环境可以是tee(trusted execution environment),该可信执行环境可以通过预定的编程语言编写的程序来实现(即可以是以软件的形式实现),也可以通过硬件设备和预先编写的程序共同实现(即可以是以硬件 软件的形式实现)等,该可信执行环境可以为进行数据处理的安全运行环境。该方法具体可以包括以下步骤:
26.在步骤s102中,获取针对目标业务的业务数据,目标业务对应有对业务数据进行处理的业务模型,业务模型被分割为第一子模型和第二子模型,第二子模型中包括目标业务对应的模型保护规则中记载的待保护的模型参数,且第二子模型设置于可信执行环境中,并能够在可信执行环境中运行。
27.其中,目标业务可以是任意业务,如信息推荐业务、金融体系中的风险防控业务或商品交易业务等。业务数据可以是与目标业务相关的数据,其中可以包括用户触发目标业务,以及目标业务在执行的过程中产生的数据,还可以包括用户触发目标业务,以及目标业务在执行的过程中所提供的相关数据等。业务模型可以是针对目标业务的相关模型,可以基于不同的目标业务构建不同的业务模型,例如,如果目标业务为信息推荐业务,则业务模型可以是用于进行信息推荐的模型,如果目标业务为金融体系中的风险防控业务,则业务模型可以是用于对该金融体系进行风险防控的模型,如果目标业务的商品交易业务,则业务模型可以是用于对某商品的销量进行预测的模型等。业务模型可以包括多种,不同的业务模型可以通过不同的方式构建,例如,可以通过分类算法构建用于进行信息推荐的模型,或者,可以通过卷积神经网络算法构建用于对金融体系进行风险防控的模型等。模型保护
规则可以是用于对业务模型的结构和模型参数等进行有效保护,以防止被恶意攻击者窃取的规则,模型保护规则中可以记录有哪个或哪些模型需要被保护,以及各个模型中需要被保护的相关数据等。模型参数可以根据业务模型的不同而不同,模型参数可以包括如某权重、系数或某向量等。可信执行环境可以是安全并与其它环境相隔离的数据处理环境,即在可信执行环境中执行的处理,以及数据处理的过程中产生的数据等无法被可执行环境外的其它执行环境或应用程序所访问。如图2所示,可信执行环境可以通过创建一个可以在可信区域(如trustzone等)中独立运行的小型操作系统实现,可信执行环境可以以系统调用(如由trustzone内核直接处理)的方式直接提供的服务。设备中可以包括ree(通用执行环境)和可信执行环境,ree下可以运行终端设备安装的操作系统,如android操作系统、ios操作系统、windows操作系统、linux操作系统等,ree的特点可包括如功能强大,开放性和扩展性较好等,可以为上层应用程序提供该设备的所有功能,比如摄像功能,触控功能等,但是,ree中存在很多安全隐患,例如,操作系统可以获得某应用程序的所有数据,但很难验证该操作系统或该应用程序是否被篡改,如果被篡改,则用户的信息将存在很大的安全隐患,针对于此,就需要设备中的可信执行环境进行处理。可信执行环境具有其自身的执行空间,也即是在可信执行环境下也存在一个操作系统,可信执行环境比ree的安全级别更高,可信执行环境所能访问的该设备中的软件和硬件资源是与ree分离的,但可信执行环境可以直接获取ree的信息,而ree不能获取可信执行环境的信息。可信执行环境可以通过提供的接口来进行验证等处理,从而保证用户信息(如支付信息、用户隐私信息等)不会被篡改、密码不会被劫持、指纹或面部等信息不会被盗用。
28.在实施中,当前,很多企业或组织以私有云的方式将其某些业务的业务模型部署到业务方本地,此方式中的业务模型的模型结构和相关数据极易被攻击者窃取,而业务模型(如ocr模型和人脸识别模型等)通常是该企业或组织的核心资产,一旦业务模型被泄露,不但会暴露隐藏在业务模型中的用户隐私数据,而且还会给企业或组织造成难以估量的损失。目前对业务模型的保护手段异常薄弱,例如,通常可以采用加密的方式对业务模型进行保护,但此方式下,只需找到解密点进行hook处理,就可以很容易的通过如dump内存的方式窃取到业务模型的模型结构和相关数据。为此,需要提供一种更有效的保护业务模型的模型结构和相关数据,以防止被恶意攻击者窃取的技术方案。本说明书实施例提供一种可实现的处理方式,具体可以包括以下内容:
29.通常,不同的业务模型可以分为公共部分和私有部分,私有部分为企业或组织的业务模型中的需要保护的模型结构或相关数据所在的子模型。基于此,对于任意目标业务,可以为目标业务设置对该目标业务的业务数据进行处理的业务模型,并可以根据目标业务的要求或根据实际情况,将该业务模型进行分割,从而得到分割出的多个不同的部分。在实际应用中,也可以根据目标业务的要求或根据实际情况,预先设定目标业务对应的模型保护规则,该模型保护规则中可以记载有目标模型中需要保护的模型参数和模型架构等信息,因此,也可以基于上述模型保护规则对该业务模型进行分割,从而分割出多个不同的部分。其中分割出的各部分子模型经过拼接可以得到该业务模型,此外,在业务模型中,排列在前的子模型的输出数据可以作为分割出的该子模型之后的一个子模型的输入数据。本实施例中,可以将业务模型分割为两个部分,其中的一个部分可以是公共部分,另一个部分可以是私有部分,即业务模型可以被分割为第一子模型和第二子模型,在实际应用中,还可以
将业务模型分割为两个以上的部分,例如,可以将业务模型分割为部分1、部分2和部分3,然后,可以根据实际情况对上述多个部分进行分类,确定可以作为公共部分的部分和可以作为私有部分的部分,例如,上述的部分1可以作为公共部分,上述的部分2和部分3可以作为私有部分等。可以将能够作为公共部分的部分作为第一子模型,可以将能够作为私有部分的部分作为第二子模型。
30.考虑到业务处理设备中往往会设置有可信执行环境,而可信执行环境作为业务处理设备中的安全隔离环境,可以与业务处理设备中的其它环境相隔离,从而保证可信执行环境中数据的安全,基于此,可以将需要保护模型架构和相关数据的子模型设置于可信执行环境运行,即可以对业务模型中的第二子模型进行分析,基于得到的分析结果,可以将第二子模型设置于可信执行环境中运行,从而实现将第二子模型设置于可信执行环境中,并能够在可信执行环境中运行的目的。对于第一子模型,可以将其设置于业务处理设备的通用执行环境中,或者,也可以是将其设置于预先设定或指定的环境参数的执行环境中,或者,也可以将其设置于可信执行环境中,具体可以根据实际情况设定,本说明书实施例对此不做限定。
31.通过上述方式部署了业务模型后,当某用户请求目标业务或触发目标业务执行时,业务处理设备可以获取该用户请求目标业务或触发目标业务时的相关数据,以及目标业务执行所产生的相关数据,并可以将上述作为针对目标业务的业务数据。
32.在步骤s104中,将上述业务数据输入到目标业务对应的业务模型中分割出的第一子模型中,得到该业务数据对应的第一输出结果。
33.在实施中,通常,业务模型在处理业务数据时,随着对业务数据处理的不断深入,业务模型中越是靠后的数据处理越是复杂或机密性越强,而业务模型中越是靠前的数据处理越是基础的或机密性较低的处理,如对业务数据进行向量化或对业务数据进行特征提取等处理,由于数据的向量化处理和数据的特征提取通常是较常用的数据处理手段,其具体处理方式和过程包括多种,因此,上述处理可以是很容易实现的处理,而对于得到向量化的数据或提取的特征之后的处理方式和处理过程则可以使机密性越强的处理,可以是需要保护的部分。基于此,在业务模型中,第一子模型可以是先于第二子模型执行的子模型,即在业务模型运行的过程中,业务数据将先由第一子模型对应的部分进行处理,之后处理结果再由第二子模型继续处理,最终得到业务模型的输出结果,为此,可以将上述业务数据输入到目标业务对应的业务模型中分割出的第一子模型中,通过第一子模型对业务数据进行相应处理,得到相应的输出结果,该输出结果即可以作为该业务数据对应的第一输出结果。
34.在步骤s106中,通过目标业务对应的应用将第一输出结果传递至可信执行环境中,并在可信执行环境中,将第一输出结果输入到第二子模型中,得到上述业务数据对应的模型预测结果。
35.其中,目标业务对应的应用可以是预先设定的、可以用于在业务模型的不同部分之间进行数据传递,且具体向可信执行环境传递数据的权限的应用,目标业务对应的应用可以是需要安装在业务处理设备中的应用程序,也可以是预先植入业务处理设备某硬件设备中的代码程序,还可以是以插件的形式设置于业务处理设备的操作系统的后台运行的程序等,目标业务对应的应用可以是具有指定权限的部件或组件(如可信执行环境对应的组件或中央处理器等)才能够调用的应用,具体可以根据实际情况设定。
36.在实施中,为了保证第一输出结果的准确性,可信执行环境对应的组件可以触发目标业务对应的应用运行,目标业务对应的应用对该组件进行验证通过后,业务处理设备可以调用目标业务对应的应用,并通过目标业务对应的应用将第一输出结果传递至可信执行环境中,由于第一输出结果由目标业务对应的应用进行传递,而用户无法通过其它部件或组件获取第一输出结果,而且,也无法从目标业务对应的应用中提取明文的第一输出结果,因此,可以防止第一输出结果在传递的过程中被篡改。此外,为了进一步保证数据传输的安全性,还可以将第一输出结果进行加密处理等,其中的加密方式可以包括多种,例如对称加密方式或非对称加密方式等,具体可以根据实际情况设定,本说明书实施例对此不做限定。
37.第一输出结果传递至可信执行环境中后,可以在可信执行环境中继续对第一输出结果进行处理,即在可信执行环境中,将第一输出结果输入到第二子模型中,通过第二子模型对第一输出结果的处理,可以得到相应的输出结果,该输出结果即可以为上述业务数据对应的模型预测结果。此外,对于对第一输出结果进行加密处理的情况,在将加密后的第一输出结果传递至可信执行环境中后,可以在可信执行环境中对加密后的第一输出结果进行解密处理,得到解密后的第一输出结果(即第一输出结果),然后,再基于解密后的第一输出结果执行后续处理,具体可以参见上述相关内容,在此不再赘述。最终,可信执行环境可以将得到的模型预测结果进行输出。
38.本说明书实施例提供一种业务处理方法,应用于业务处理设备,该业务处理设备包括可信执行环境,其中:在获取针对目标业务的业务数据后,将该业务数据输入到目标业务对应的业务模型中分割出的第一子模型中,得到该业务数据对应的第一输出结果,其中,目标业务对应有对该业务数据进行处理的业务模型,该业务模型被分割为第一子模型和第二子模型,第二子模型中包括目标业务对应的模型保护规则中记载的待保护的模型参数,且第二子模型设置于可信执行环境中,并能够在可信执行环境中运行,然后,通过目标业务对应的应用将第一输出结果传递至可信执行环境中,并在可信执行环境中,将第一输出结果输入到第二子模型中,得到该业务数据对应的模型预测结果,这样,通过将需要保护的模型架构和模型参数设置于可信执行环境构成的安全环境中,并在该安全环境中进行后续的数据处理,从而可以有效地保护组织或机构私有部分的子模型的模型结构和模型参数不被攻击者窃取,最后输出结果也不会处于可信执行环境之外,这样很好地防止模型提取攻击和模型逆向攻击,保证了业务处理和业务模型的安全性,保护了企业或组织的核心资产。
39.实施例二
40.如图3所示,本说明书实施例提供一种业务处理方法,该方法的执行主体可以为业务处理设备,该业务处理设备可以是终端设备或服务器,其中,该终端设备可以如笔记本电脑或台式电脑等计算机设备。服务器可以是某项业务(如进行交易的业务或金融业务等)的服务器,具体如,该服务器可以是支付业务的服务器,也可以是与金融或即时通讯等相关业务的服务器等。该业务处理设备中可以设置有可信执行环境,该可信执行环境可以是tee,该可信执行环境可以通过预定的编程语言编写的程序来实现(即可以是以软件的形式实现),也可以通过硬件设备和预先编写的程序共同实现(即可以是以硬件 软件的形式实现)等,该可信执行环境可以为进行数据处理的安全运行环境。该方法具体可以包括以下步骤:
41.在步骤s302中,,获取针对目标业务的业务模型。
42.其中,业务模型可以为深度学习模型等,例如,神经网络模型、决策树模型或生成式对抗网络模型等。
43.在步骤s304中,,基于目标业务对应的模型保护规则,将业务模型分割为第一子模型和第二子模型,第二子模型中包括该模型保护规则中记载的待保护的模型参数。
44.其中,第一子模型可以由主干特征网络backbone模型构建,第二子模型可以由特征数据处理neck模型和利用特征做预测head模型构建,第二子模型可以以图graph的方式呈现。其中的模型参数可以包括权重weights参数和/或偏移bias参数等。主干特征网络backbone模型具体可以为特征提取模型,如卷积神经网络模型或残差网络模型等。
45.在步骤s306中,将第二子模型设置于可信执行环境中,以使第二子模型能够在可信执行环境中运行。
46.在实施中,可以预先基于不同的模型设置其中的第二子模型对应的转换规则或转换算法,该转换规则或转换算法可以包括多种,具体可以根据实际情况设定,本说明书实施例对此不做限定。为了将目标业务的业务模型中的第二子模型设置于可信执行环境中,可以获取该业务模型中的第二子模型对应的转换规则或转换算法,可以通过获取的转换规则或转换算法对第二子模型进行转换,从而可以将其转换为能够在可信执行环境中运行的数据,然后再将其设置于可信执行环境中。
47.在实际应用中,上述步骤s306的具体处理可以多种多样,以下在提供一种可选的处理方式,具体可以包括以下步骤a2~步骤a6的处理:
48.在步骤a2中,将第二子模型转换为能够在可信执行环境中运行的预设类型的数据。
49.其中,预设类型包括图graph文件类型、参数类型中的一种或多种。此外,为了方便可信执行环境能够高效的执行被保护的子模型,还可以在可信执行环境中设置参数索引表,具体可以通过以下方式处理:如果预设类型包括参数类型,则可以基于转换后的该参数类型的数据,生成相应的参数索引信息,然后,将该参数索引信息进行加密处理,并将加密后的参数索引信息设置于可信执行环境中,可以在可信执行环境中对加密后的参数索引信息进行解密处理,得到原始的参数索引信息。
50.在实施中,如图2所示,可以通过预设的解析工具对第二子模型进行解析,以将第二子模型解析成能够在可信执行环境的轻量型ai执行引擎nano framework中直接运行的图graph文件、参数等类型的数据,并可以在可信执行环境中构建相应的参数索引表,从而后续可以便于将第二子模型设置于可信执行环境中,并使得第二子模型能够在可信执行环境中运行。
51.在步骤a4中,将转换后的数据进行加密处理,并将加密后的数据设置于可信执行环境中。
52.在实施中,为了保护数据传输过程的安全性,可以预先设定数据的加密算法,具体如aes加密算法、rsa加密算法等。在得到转换后的数据后,可以使用上述加密算法,对相应的转换后的数据进行加密处理,得到加密后的数据,其中,转换后的数据中包含的不同类型的数据可以使用相同的加密算法进行加密处理,也可以使用不同的加密算法进行加密处理,具体可以根据实际情况设定。然后,可以通过目标业务对应的应用将加密后的数据传递至可信执行环境中。
53.在步骤a6中,在可信执行环境中对加密后的数据进行解密处理,得到转换后的数据。
54.在步骤s308中,将第一子模型设置于通用执行环境中,以使第一子模型能够在通用执行环境中运行。在实施中,如图2所示,可以将第一子模型设置于通用执行环境的ai执行引擎中,并可以在通用执行环境的ai执行引擎中运行,从而将第一子模型设置于通用执行环境中,并使得第一子模型能够在通用执行环境中运行。
55.在步骤s310中,获取针对目标业务的业务数据。
56.在步骤s312中,将上述业务数据输入到目标业务对应的业务模型中分割出的第一子模型中,得到该业务数据对应的第一输出结果。
57.在步骤s314中,对第一输出结果进行加密处理,并通过目标业务对应的应用将加密后的第一输出结果传递至可信执行环境中。
58.在步骤s316中,在可信执行环境中,对加密后的第一输出结果进行解密处理,并将解密后的第一输出结果输入到第二子模型中,得到上述业务数据对应的模型预测结果。
59.在实施中,如图2所示,可信执行环境内ai执行引擎nano framework执行第二子模型的相关运算时,与ca(client application,客户端应用(即可以为目标业务对应的应用))对应的ta(trusted application,可信应用)会根据参数索引表检索相应的数据(加密后的第一输出结果),对该数据解密后,以向ai执行引擎nano framework中的相应算子提供其执行时需要的数据。可信执行环境的ai执行引擎nano framework调用对应的算子库执行相应的算子,并由ta提供相应的数据,执行完成后,输出的结果可以保存在可信执行环境中,并可以继续执行后续的推理预测等处理。
60.通过上述处理,可以有效地保护组织或机构私有部分的子模型的模型结构和模型参数不被攻击者窃取,最后输出结果也不会处于可信执行环境之外,这样很好地防止模型提取攻击和模型逆向攻击,保证了业务处理和业务模型的安全性,保护了企业或组织的核心资产。
61.本说明书实施例提供一种业务处理方法,应用于业务处理设备,该业务处理设备包括可信执行环境,其中:在获取针对目标业务的业务数据后,将该业务数据输入到目标业务对应的业务模型中分割出的第一子模型中,得到该业务数据对应的第一输出结果,其中,目标业务对应有对该业务数据进行处理的业务模型,该业务模型被分割为第一子模型和第二子模型,第二子模型中包括目标业务对应的模型保护规则中记载的待保护的模型参数,且第二子模型设置于可信执行环境中,并能够在可信执行环境中运行,然后,通过所述目标业务对应的应用将第一输出结果传递至可信执行环境中,并在可信执行环境中,将第一输出结果输入到第二子模型中,得到该业务数据对应的模型预测结果,这样,通过将需要保护的模型架构和模型参数设置于可信执行环境构成的安全环境中,并在该安全环境中进行后续的数据处理,从而可以有效地保护组织或机构私有部分的子模型的模型结构和模型参数不被攻击者窃取,最后输出结果也不会处于可信执行环境之外,这样很好地防止模型提取攻击和模型逆向攻击,保证了业务处理和业务模型的安全性,保护了企业或组织的核心资产。
62.实施例三
63.如图4a和4b所示,本说明书实施例提供一种业务处理方法,该方法的执行主体可
以为区块链系统,该区块链系统中包括区块链节点,该区块链节点可以为终端设备或服务器等,其中,终端设备可以如手机、平板电脑等移动终端设备,还可以如个人计算机等设备。该服务器可以是一个独立的服务器,还可以是由多个服务器构成的服务器集群等。该区块链节点中包括可信执行环境,该可信执行环境可以是tee,该可信执行环境可以通过预定的编程语言编写的程序来实现(即可以是以软件的形式实现),也可以通过硬件设备和预先编写的程序共同实现(即可以是以硬件 软件的形式实现)等,该可信执行环境可以为进行数据处理的安全运行环境。该方法具体可以包括以下步骤:
64.在步骤s402中,获取针对目标业务的业务数据,目标业务对应有对该业务数据进行处理的业务模型,业务模型被分割为第一子模型和第二子模型,第二子模型中包括目标业务对应的模型保护规则中记载的待保护的模型参数,且第二子模型设置于区块链节点的可信执行环境中,并能够在可信执行环境中运行。
65.其中,业务模型可以为深度学习模型等,基于此,第一子模型可以由主干特征网络backbone模型构建,第二子模型可以由特征数据处理neck模型和利用特征做预测head模型构建。模型参数可以包括权重weights参数和/或偏移bias参数等。
66.在上述步骤s402之前,还可以由其它设备预先训练业务模型,得到训练后的业务模型,然后再将训练后的业务模型进行部署,基于此,可以通过下述步骤c2~步骤c6的处理实现:
67.在步骤c2中,基于预先部署于区块链系统中的第三智能合约,获取针对目标业务的业务模型。
68.其中,第三智能合约可以是用于执行步骤c2~步骤c6的处理的智能合约,智能合约可以是一种旨在以信息化方式传播、验证或执行合同的计算机协议,智能合约允许在没有第三方的情况下进行可信交互,进行的上述交互过程可追踪且不可逆转,智能合约中包括合约参与方可以在上面执行合约参与方同意的权利和义务的协议。
69.在步骤c4中,基于第三智能合约获取目标业务对应的模型保护规则,并基于模型保护规则,将业务模型分割为第一子模型和第二子模型,第二子模型中包括模型保护规则中记载的待保护的模型参数。
70.在步骤c6中,基于第三智能合约,将第二子模型设置于可信执行环境中,以使第二子模型能够在可信执行环境中运行。
71.上述的具体处理过程可以参见上述相关内容,在此不再赘述。
72.其中,上述步骤c6的具体处理还可以通过下述方式处理,具体可以参见下述步骤c62~步骤c66的处理。
73.在步骤c62中,基于第三智能合约,将第二子模型转换为能够在可信执行环境中运行的预设类型的数据。
74.在步骤c64中,基于第三智能合约,将转换后的数据进行加密处理,并将加密后的数据设置于可信执行环境中。
75.在步骤c66中,基于第三智能合约,在可信执行环境中对加密后的数据进行解密处理,得到转换后的数据。
76.其中,第三智能合约可以是用于执行步骤c62~步骤c66的处理的智能合约。
77.需要说明的是,上述预设类型可以包括图graph文件类型、参数类型中的一种或多
种;
78.如果预设类型包括参数类型,则还可以执行如下处理:基于预先部署于区块链系统中的第四智能合约,通过转换后的该参数类型的数据,生成相应的参数索引信息,基于第四智能合约,将参数索引信息进行加密处理,并将加密后的参数索引信息设置于可信执行环境中,基于第四智能合约,在可信执行环境中对加密后的参数索引信息进行解密处理,得到参数索引信息。
79.其中,第四智能合约可以是用于生成参数索引表,以及对参数索引表进行处理的智能合约。在步骤s404中,基于预先部署于区块链系统中的第一智能合约将业务数据输入到目标业务对应的业务模型中分割出的第一子模型中,得到业务数据对应的第一输出结果,第一智能合约用于触发第一子模型对获取的业务数据进行处理。
80.在实施中,可以基于第一子模型对获取的业务数据进行处理的处理过程预先生成第一智能合约,并可以将该第一智能合约部署于区块链系统中,然后,可以基于第一智能合约中规定的处理方式、处理过程和规则执行相应的处理。
81.在步骤s406中,基于预先部署于区块链系统中的第二智能合约,通过目标业务对应的应用将第一输出结果传递至可信执行环境中,并在可信执行环境中,将第一输出结果输入到第二子模型中,得到业务数据对应的模型预测结果,第二智能合约用于触发将第一子模型的输出结果传递至可信执行环境中,并在可信执行环境中触发对第一子模型的输出结果进行处理。
82.在实施中,可以基于将第一子模型的输出结果传递至可信执行环境中,并在可信执行环境中对第一子模型的输出结果进行处理的处理过程预先生成第二智能合约,并可以将该第二智能合约部署于区块链系统中,然后,可以基于第二智能合约中规定的处理方式、处理过程和规则执行相应的处理。
83.此外,还可以将第一子模型设置于通用执行环境中,即基于第二智能合约,将第一子模型设置于通用执行环境中,以使第一子模型能够在所述通用执行环境中运行。本说明书实施例提供一种业务处理方法,应用于区块链系统,区块链系统中包括区块链节点,区块链节点中包括可信执行环境,其中:在获取到针对目标业务的业务数据后,基于预先部署于区块链系统中的第一智能合约将该业务数据输入到目标业务对应的业务模型中分割出的第一子模型中,得到该业务数据对应的第一输出结果,目标业务对应有对该业务数据进行处理的业务模型,业务模型被分割为第一子模型和第二子模型,第二子模型中包括目标业务对应的模型保护规则中记载的待保护的模型参数,且第二子模型设置于区块链节点的可信执行环境中,并能够在可信执行环境中运行,第一智能合约用于触发第一子模型对获取的业务数据进行处理,然后,基于预先部署于区块链系统中的第二智能合约,通过目标业务对应的应用将第一输出结果传递至可信执行环境中,并在可信执行环境中,将第一输出结果输入到第二子模型中,得到该业务数据对应的模型预测结果,第二智能合约用于触发将第一子模型的输出结果传递至可信执行环境中,并在可信执行环境中触发对第一子模型的输出结果进行处理,这样,通过将需要保护的模型架构和模型参数设置于可信执行环境构成的安全环境中,并在该安全环境中进行后续的数据处理,从而可以有效地保护组织或机构私有部分的子模型的模型结构和模型参数不被攻击者窃取,最后输出结果也不会处于可信执行环境之外,这样很好地防止模型提取攻击和模型逆向攻击,保证了业务处理和业务
模型的安全性,保护了企业或组织的核心资产。
84.实施例四
85.以上为本说明书实施例提供的业务处理方法,基于同样的思路,本说明书实施例还提供一种业务处理装置,所述装置包括可信执行环境,如图5所示。
86.该业务处理装置包括:数据获取模块501、第一结果确定模块502和模型预测模块503,其中:
87.数据获取模块501,获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于所述可信执行环境中,并能够在所述可信执行环境中运行;
88.第一结果确定模块502,将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果;
89.模型预测模块503,通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果。
90.本说明书实施例中,所述模型预测模块503,包括:
91.加密单元,对所述第一输出结果进行加密处理,并通过所述目标业务对应的应用将加密后的第一输出结果传递至所述可信执行环境中;
92.模型预测单元,在所述可信执行环境中,对加密后的第一输出结果进行解密处理,并将解密后的第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果。
93.本说明书实施例中,所述装置还包括:
94.模型获取模块,获取针对目标业务的业务模型;
95.第二分割模块,基于所述目标业务对应的模型保护规则,将所述业务模型分割为第一子模型和第二子模型,所述第二子模型中包括所述模型保护规则中记载的待保护的模型参数;
96.第二设置模块,将所述第二子模型设置于可信执行环境中,以使所述第二子模型能够在所述可信执行环境中运行。
97.本说明书实施例中,所述第二设置模块,包括:
98.转换单元,将所述第二子模型转换为能够在所述可信执行环境中运行的预设类型的数据;
99.设置单元,将转换后的数据进行加密处理,并将加密后的数据设置于所述可信执行环境中;
100.解密单元,在所述可信执行环境中对所述加密后的数据进行解密处理,得到所述转换后的数据。
101.本说明书实施例中,所述预设类型包括图graph文件类型、参数类型中的一种或多种;
102.所述预设类型包括参数类型,所述装置还包括:
103.索引生成模块,基于转换后的所述参数类型的数据,生成相应的参数索引信息;
104.索引加密模块,将所述参数索引信息进行加密处理,并将加密后的参数索引信息设置于所述可信执行环境中;
105.索引解密模块,在所述可信执行环境中对所述加密后的参数索引信息进行解密处理,得到所述参数索引信息。
106.本说明书实施例中,所述装置还包括:
107.第三设置模块,将所述第一子模型设置于通用执行环境中,以使所述第一子模型能够在所述通用执行环境中运行。
108.本说明书实施例中,所述业务模型为深度学习模型,所述第一子模型由主干特征网络backbone模型构建,所述第二子模型由特征数据处理neck模型和利用特征做预测head模型构建。
109.本说明书实施例中,所述模型参数包括权重weights参数和/或偏移bias参数。
110.本说明书实施例提供一种业务处理装置,在获取针对目标业务的业务数据后,将该业务数据输入到目标业务对应的业务模型中分割出的第一子模型中,得到该业务数据对应的第一输出结果,其中,目标业务对应有对该业务数据进行处理的业务模型,该业务模型被分割为第一子模型和第二子模型,第二子模型中包括目标业务对应的模型保护规则中记载的待保护的模型参数,且第二子模型设置于可信执行环境中,并能够在可信执行环境中运行,然后,通过目标业务对应的应用将第一输出结果传递至可信执行环境中,并在可信执行环境中,将第一输出结果输入到第二子模型中,得到该业务数据对应的模型预测结果,这样,通过将需要保护的模型架构和模型参数设置于可信执行环境构成的安全环境中,并在该安全环境中进行后续的数据处理,从而可以有效地保护组织或机构私有部分的子模型的模型结构和模型参数不被攻击者窃取,最后输出结果也不会处于可信执行环境之外,这样很好地防止模型提取攻击和模型逆向攻击,保证了业务处理和业务模型的安全性,保护了企业或组织的核心资产。
111.实施例五
112.基于同样的思路,本说明书实施例还提供一种业务处理装置,该装置为区块链系统中的装置,所述装置中包括可信执行环境,如图6所示。
113.该业务处理装置包括:数据获取模块601、第一结果确定模块602和预测结果确定模块603,其中:
114.数据获取模块601,获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于所述装置的可信执行环境中,并能够在所述可信执行环境中运行;
115.第一结果确定模块602,基于预先部署于所述区块链系统中的第一智能合约将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果,所述第一智能合约用于触发所述第一子模型对获取的业务数据进行处理;
116.预测结果确定模块603,基于预先部署于所述区块链系统中的第二智能合约,通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模
型预测结果,所述第二智能合约用于触发将所述第一子模型的输出结果传递至可信执行环境中,并在所述可信执行环境中触发对所述第一子模型的输出结果进行处理。
117.本说明书实施例中,所述装置还包括:
118.模型获取模块,基于预先部署于所述区块链系统中的第三智能合约,获取针对目标业务的业务模型;
119.模型分割模块,基于所述第三智能合约获取所述目标业务对应的模型保护规则,并基于所述模型保护规则,将所述业务模型分割为第一子模型和第二子模型,所述第二子模型中包括所述模型保护规则中记载的待保护的模型参数;
120.设置模块,基于所述第三智能合约,将所述第二子模型设置于可信执行环境中,以使所述第二子模型能够在所述可信执行环境中运行。
121.本说明书实施例中,所述设置模块,包括:
122.转换单元,基于所述第三智能合约,将所述第二子模型转换为能够在所述可信执行环境中运行的预设类型的数据;
123.加密单元,基于所述第三智能合约,将转换后的数据进行加密处理,并将加密后的数据设置于所述可信执行环境中;
124.解密单元,基于所述第三智能合约,在所述可信执行环境中对所述加密后的数据进行解密处理,得到所述转换后的数据。
125.本说明书实施例中,所述预设类型包括图graph文件类型、参数类型中的一种或多种;
126.所述预设类型包括参数类型,所述装置还包括:
127.索引生成模块,基于预先部署于所述区块链系统中的第四智能合约,通过转换后的所述参数类型的数据,生成相应的参数索引信息;
128.索引加密模块,基于所述第四智能合约,将所述参数索引信息进行加密处理,并将加密后的参数索引信息设置于所述可信执行环境中;
129.索引解密模块,基于所述第四智能合约,在所述可信执行环境中对所述加密后的参数索引信息进行解密处理,得到所述参数索引信息。
130.本说明书实施例中,所述装置还包括:
131.通用模型设置模块,基于所述第二智能合约,将所述第一子模型设置于通用执行环境中,以使所述第一子模型能够在所述通用执行环境中运行。
132.本说明书实施例提供一种业务处理装置,在获取到针对目标业务的业务数据后,基于预先部署于区块链系统中的第一智能合约将该业务数据输入到目标业务对应的业务模型中分割出的第一子模型中,得到该业务数据对应的第一输出结果,目标业务对应有对该业务数据进行处理的业务模型,业务模型被分割为第一子模型和第二子模型,第二子模型中包括目标业务对应的模型保护规则中记载的待保护的模型参数,且第二子模型设置于该装置的可信执行环境中,并能够在可信执行环境中运行,第一智能合约用于触发第一子模型对获取的业务数据进行处理,然后,基于预先部署于区块链系统中的第二智能合约,通过目标业务对应的应用将第一输出结果传递至可信执行环境中,并在可信执行环境中,将第一输出结果输入到第二子模型中,得到该业务数据对应的模型预测结果,第二智能合约用于触发将第一子模型的输出结果传递至可信执行环境中,并在可信执行环境中触发对第
一子模型的输出结果进行处理,这样,通过将需要保护的模型架构和模型参数设置于可信执行环境构成的安全环境中,并在该安全环境中进行后续的数据处理,从而可以有效地保护组织或机构私有部分的子模型的模型结构和模型参数不被攻击者窃取,最后输出结果也不会处于可信执行环境之外,这样很好地防止模型提取攻击和模型逆向攻击,保证了业务处理和业务模型的安全性,保护了企业或组织的核心资产。
133.实施例六
134.以上为本说明书实施例提供的业务处理装置,基于同样的思路,本说明书实施例还提供一种业务处理设备,如图7所示。
135.所述业务处理设备可以为上述实施例提供的终端设备、服务器或区块链系统中的设备等,该业务处理设备中可以设置有可信执行环境。
136.业务处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器701和存储器702,存储器702中可以存储有一个或一个以上存储应用程序或数据。其中,存储器702可以是短暂存储或持久存储。存储在存储器702的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对业务处理设备中的一系列计算机可执行指令。更进一步地,处理器701可以设置为与存储器702通信,在业务处理设备上执行存储器702中的一系列计算机可执行指令。业务处理设备还可以包括一个或一个以上电源1103,一个或一个以上有线或无线网络接口704,一个或一个以上输入输出接口705,一个或一个以上键盘706。
137.具体在本实施例中,业务处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对业务处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
138.获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于所述可信执行环境中,并能够在所述可信执行环境中运行;
139.将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果;
140.通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果。
141.本说明书实施例中,所述通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果,包括:
142.对所述第一输出结果进行加密处理,并通过所述目标业务对应的应用将加密后的第一输出结果传递至所述可信执行环境中;
143.在所述可信执行环境中,对加密后的第一输出结果进行解密处理,并将解密后的第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果。
144.本说明书实施例中,所述获取针对目标业务的业务数据之前,还包括:
145.获取针对目标业务的业务模型;
146.基于所述目标业务对应的模型保护规则,将所述业务模型分割为第一子模型和第二子模型,所述第二子模型中包括所述模型保护规则中记载的待保护的模型参数;
147.将所述第二子模型设置于可信执行环境中,以使所述第二子模型能够在所述可信执行环境中运行。
148.本说明书实施例中,所述将所述第二子模型设置于可信执行环境中,包括:
149.将所述第二子模型转换为能够在所述可信执行环境中运行的预设类型的数据;
150.将转换后的数据进行加密处理,并将加密后的数据设置于所述可信执行环境中;
151.在所述可信执行环境中对所述加密后的数据进行解密处理,得到所述转换后的数据。
152.本说明书实施例中,所述预设类型包括图graph文件类型、参数类型中的一种或多种;
153.所述预设类型包括参数类型,还包括:
154.基于转换后的所述参数类型的数据,生成相应的参数索引信息;
155.将所述参数索引信息进行加密处理,并将加密后的参数索引信息设置于所述可信执行环境中;
156.在所述可信执行环境中对所述加密后的参数索引信息进行解密处理,得到所述参数索引信息。
157.本说明书实施例中,还包括:
158.将所述第一子模型设置于通用执行环境中,以使所述第一子模型能够在所述通用执行环境中运行。
159.本说明书实施例中,所述第一子模型由主干特征网络backbone模型构建,所述第二子模型由特征数据处理neck模型和利用特征做预测head模型构建。
160.本说明书实施例中,所述模型参数包括权重weights参数和/或偏移bias参数。
161.此外,具体在本实施例中,业务处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对业务处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
162.获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于所述区块链节点的可信执行环境中,并能够在所述可信执行环境中运行;
163.基于预先部署于所述区块链系统中的第一智能合约将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果,所述第一智能合约用于触发所述第一子模型对获取的业务数据进行处理;
164.基于预先部署于所述区块链系统中的第二智能合约,通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第
一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果,所述第二智能合约用于触发将所述第一子模型的输出结果传递至可信执行环境中,并在所述可信执行环境中触发对所述第一子模型的输出结果进行处理。
165.本说明书实施例中,还包括:
166.基于预先部署于所述区块链系统中的第三智能合约,获取针对目标业务的业务模型;
167.基于所述第三智能合约获取所述目标业务对应的模型保护规则,并基于所述模型保护规则,将所述业务模型分割为第一子模型和第二子模型,所述第二子模型中包括所述模型保护规则中记载的待保护的模型参数;
168.基于所述第三智能合约,将所述第二子模型设置于可信执行环境中,以使所述第二子模型能够在所述可信执行环境中运行。
169.本说明书实施例中,所述基于所述第三智能合约,将所述第二子模型设置于可信执行环境中,包括:
170.基于所述第三智能合约,将所述第二子模型转换为能够在所述可信执行环境中运行的预设类型的数据;
171.基于所述第三智能合约,将转换后的数据进行加密处理,并将加密后的数据设置于所述可信执行环境中;
172.基于所述第三智能合约,在所述可信执行环境中对所述加密后的数据进行解密处理,得到所述转换后的数据。
173.本说明书实施例中,所述预设类型包括图graph文件类型、参数类型中的一种或多种;
174.所述预设类型包括参数类型,还包括:
175.基于预先部署于所述区块链系统中的第四智能合约,通过转换后的所述参数类型的数据,生成相应的参数索引信息;
176.基于所述第四智能合约,将所述参数索引信息进行加密处理,并将加密后的参数索引信息设置于所述可信执行环境中;
177.基于所述第四智能合约,在所述可信执行环境中对所述加密后的参数索引信息进行解密处理,得到所述参数索引信息。
178.本说明书实施例中,还包括:
179.基于所述第二智能合约,将所述第一子模型设置于通用执行环境中,以使所述第一子模型能够在所述通用执行环境中运行。
180.本说明书实施例提供一种业务处理设备,在获取针对目标业务的业务数据后,将该业务数据输入到目标业务对应的业务模型中分割出的第一子模型中,得到该业务数据对应的第一输出结果,其中,目标业务对应有对该业务数据进行处理的业务模型,该业务模型被分割为第一子模型和第二子模型,第二子模型中包括目标业务对应的模型保护规则中记载的待保护的模型参数,且第二子模型设置于可信执行环境中,并能够在可信执行环境中运行,然后,通过目标业务对应的应用将第一输出结果传递至可信执行环境中,并在可信执行环境中,将第一输出结果输入到第二子模型中,得到该业务数据对应的模型预测结果,这样,通过将需要保护的模型架构和模型参数设置于可信执行环境构成的安全环境中,并在
该安全环境中进行后续的数据处理,从而可以有效地保护组织或机构私有部分的子模型的模型结构和模型参数不被攻击者窃取,最后输出结果也不会处于可信执行环境之外,这样很好地防止模型提取攻击和模型逆向攻击,保证了业务处理和业务模型的安全性,保护了企业或组织的核心资产。
181.实施例七
182.进一步地,基于上述图1和图4b所示的方法,本说明书一个或多个实施例还提供了一种存储介质,用于存储计算机可执行指令信息,一种具体的实施例中,该存储介质可以为u盘、光盘、硬盘等,该存储介质存储的计算机可执行指令信息在被处理器执行时,能实现以下流程:
183.获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于所述可信执行环境中,并能够在所述可信执行环境中运行;
184.将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果;
185.通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果。
186.本说明书实施例中,所述通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果,包括:
187.对所述第一输出结果进行加密处理,并通过所述目标业务对应的应用将加密后的第一输出结果传递至所述可信执行环境中;
188.在所述可信执行环境中,对加密后的第一输出结果进行解密处理,并将解密后的第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果。
189.本说明书实施例中,所述获取针对目标业务的业务数据之前,还包括:
190.获取针对目标业务的业务模型;
191.基于所述目标业务对应的模型保护规则,将所述业务模型分割为第一子模型和第二子模型,所述第二子模型中包括所述模型保护规则中记载的待保护的模型参数;
192.将所述第二子模型设置于可信执行环境中,以使所述第二子模型能够在所述可信执行环境中运行。
193.本说明书实施例中,所述将所述第二子模型设置于可信执行环境中,包括:
194.将所述第二子模型转换为能够在所述可信执行环境中运行的预设类型的数据;
195.将转换后的数据进行加密处理,并将加密后的数据设置于所述可信执行环境中;
196.在所述可信执行环境中对所述加密后的数据进行解密处理,得到所述转换后的数据。
197.本说明书实施例中,所述预设类型包括图graph文件类型、参数类型中的一种或多种;
198.所述预设类型包括参数类型,还包括:
199.基于转换后的所述参数类型的数据,生成相应的参数索引信息;
200.将所述参数索引信息进行加密处理,并将加密后的参数索引信息设置于所述可信执行环境中;
201.在所述可信执行环境中对所述加密后的参数索引信息进行解密处理,得到所述参数索引信息。
202.本说明书实施例中,还包括:
203.将所述第一子模型设置于通用执行环境中,以使所述第一子模型能够在所述通用执行环境中运行。
204.本说明书实施例中,所述第一子模型由主干特征网络backbone模型构建,所述第二子模型由特征数据处理neck模型和利用特征做预测head模型构建。
205.本说明书实施例中,所述模型参数包括权重weights参数和/或偏移bias参数。
206.此外,在另一种具体的实施例中,该存储介质可以为u盘、光盘、硬盘等,该存储介质存储的计算机可执行指令信息在被处理器执行时,能实现以下流程:
207.获取针对目标业务的业务数据,所述目标业务对应有对所述业务数据进行处理的业务模型,所述业务模型被分割为第一子模型和第二子模型,所述第二子模型中包括所述目标业务对应的模型保护规则中记载的待保护的模型参数,且所述第二子模型设置于所述区块链节点的可信执行环境中,并能够在所述可信执行环境中运行;
208.基于预先部署于所述区块链系统中的第一智能合约将所述业务数据输入到所述目标业务对应的业务模型中分割出的第一子模型中,得到所述业务数据对应的第一输出结果,所述第一智能合约用于触发所述第一子模型对获取的业务数据进行处理;
209.基于预先部署于所述区块链系统中的第二智能合约,通过所述目标业务对应的应用将所述第一输出结果传递至所述可信执行环境中,并在所述可信执行环境中,将所述第一输出结果输入到所述第二子模型中,得到所述业务数据对应的模型预测结果,所述第二智能合约用于触发将所述第一子模型的输出结果传递至可信执行环境中,并在所述可信执行环境中触发对所述第一子模型的输出结果进行处理。
210.本说明书实施例中,还包括:
211.基于预先部署于所述区块链系统中的第三智能合约,获取针对目标业务的业务模型;
212.基于所述第三智能合约获取所述目标业务对应的模型保护规则,并基于所述模型保护规则,将所述业务模型分割为第一子模型和第二子模型,所述第二子模型中包括所述模型保护规则中记载的待保护的模型参数;
213.基于所述第三智能合约,将所述第二子模型设置于可信执行环境中,以使所述第二子模型能够在所述可信执行环境中运行。
214.本说明书实施例中,所述基于所述第三智能合约,将所述第二子模型设置于可信执行环境中,包括:
215.基于所述第三智能合约,将所述第二子模型转换为能够在所述可信执行环境中运行的预设类型的数据;
216.基于所述第三智能合约,将转换后的数据进行加密处理,并将加密后的数据设置于所述可信执行环境中;
217.基于所述第三智能合约,在所述可信执行环境中对所述加密后的数据进行解密处理,得到所述转换后的数据。
218.本说明书实施例中,所述预设类型包括图graph文件类型、参数类型中的一种或多种;
219.所述预设类型包括参数类型,还包括:
220.基于预先部署于所述区块链系统中的第四智能合约,通过转换后的所述参数类型的数据,生成相应的参数索引信息;
221.基于所述第四智能合约,将所述参数索引信息进行加密处理,并将加密后的参数索引信息设置于所述可信执行环境中;
222.基于所述第四智能合约,在所述可信执行环境中对所述加密后的参数索引信息进行解密处理,得到所述参数索引信息。
223.本说明书实施例中,还包括:
224.基于所述第二智能合约,将所述第一子模型设置于通用执行环境中,以使所述第一子模型能够在所述通用执行环境中运行。
225.本说明书实施例提供一种存储介质,在获取针对目标业务的业务数据后,将该业务数据输入到目标业务对应的业务模型中分割出的第一子模型中,得到该业务数据对应的第一输出结果,其中,目标业务对应有对该业务数据进行处理的业务模型,该业务模型被分割为第一子模型和第二子模型,第二子模型中包括目标业务对应的模型保护规则中记载的待保护的模型参数,且第二子模型设置于可信执行环境中,并能够在可信执行环境中运行,然后,通过目标业务对应的应用将第一输出结果传递至可信执行环境中,并在可信执行环境中,将第一输出结果输入到第二子模型中,得到该业务数据对应的模型预测结果,这样,通过将需要保护的模型架构和模型参数设置于可信执行环境构成的安全环境中,并在该安全环境中进行后续的数据处理,从而可以有效地保护组织或机构私有部分的子模型的模型结构和模型参数不被攻击者窃取,最后输出结果也不会处于可信执行环境之外,这样很好地防止模型提取攻击和模型逆向攻击,保证了业务处理和业务模型的安全性,保护了企业或组织的核心资产。
226.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
227.在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmable logic device,pld)(例如现场可编程门阵列(field programmable gate array,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作
专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardware description language,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advanced boolean expression language)、ahdl(altera hardware description language)、confluence、cupl(cornell university programming language)、hdcal、jhdl(java hardware description language)、lava、lola、myhdl、palasm、rhdl(ruby hardware description language)等,目前最普遍使用的是vhdl(very

high

speed integrated circuit hardware description language)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
228.控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(application specific integrated circuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc625d、atmel at91sam、microchip pic18f26k20以及silicone labs c8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
229.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
230.为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
231.本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
232.本说明书的实施例是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程欺诈案例的串并设备的处理器以产生一个机器,使得通过计算机或其他可编程欺诈案例的串并设备的处
理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
233.这些计算机程序指令也可存储在能引导计算机或其他可编程欺诈案例的串并设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
234.这些计算机程序指令也可装载到计算机或其他可编程欺诈案例的串并设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
235.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
236.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
237.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd

rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
238.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
239.本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
240.本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
241.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
242.以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献