一种主动免疫的深度学习可信计算方法转让专利

申请号 : CN202010932304.7

文献号 : CN112149133B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 宁振虎

申请人 : 北京工业大学

摘要 :

本发明公开了一种主动免疫的深度学习可信计算平台,包括并行的计算部件和防护部件;计算部件用于完成深度学习专用算法引擎、深度学习主程序和深度学习管理模块等计算任务;所述防护部件用于通过主动免疫芯片,根据动态自主可信策略对所述计算部件进行主动度量和主动控制;所述计算部件与所述防护部件之间具有安全隔离机制,通过专用访问通道进行交互;本发明将可信计算3.0与深度学习技术相结合,构建深度学习算平台可信执行环境。通过对深度学习平台各个核心算法和各个核心执行环节进行可信校验,保证深度学习平台的安全可信。

权利要求 :

1.一种主动免疫的深度学习可信计算方法,实现该计算方法的主动免疫的深度学习可信计算平台包括并行的计算部件和防护部件,其中,所述计算部件用于完成深度学习专用算法引擎、深度学习主程序和深度学习管理模块计算任务;

所述防护部件用于通过主动免疫芯片,根据动态自主可信策略对所述计算部件进行主动度量和主动控制;所述计算部件与所述防护部件之间具有安全隔离机制,通过专用访问通道进行交互;

所述防护部件根据动态自主可信策略对所述计算部件进行主动度量,包括:通过主动免疫芯片代理对所述计算部件分别进行静态度量和动态度量;

其特征在于:该方法流程如下:

步骤1:深度学习平台启动信任链构建以主动免疫芯片为可信根,逐级对深度学习专用硬件配置、深度学习专用固件、深度学习专用OSLoader代码, 深度学习专用操作系统内核以及深度学习主程序逐级进行主动度量和加载;若所有部件均成功加载,则深度学习平台启动信任链构建成功;

步骤2:确定深度学习算法启动加载可信深度学习主程序加载后,每一个深度学习算法在运行前,主动免疫芯片都对算法启动加载的所有程序进行主动度量;

步骤3:确定深度学习平台运行环境可信主动免疫芯片对深度学习平台运行环境进行主动监控;利用触发度量和定时度量两种方式,校验内存中深度学习主程序和算法主程序的完整性;

步骤4:确定深度学习数据集可信使用对深度学习设计的训练数据集、测试数据集和交叉验证数据集均进行统一的可信标签标记;标记的内容包括数据的标识、类别和数据完整性摘要值,并进行签名;

在深度学习算法运行过程中,主动免疫芯片通过验证签名校验数据集的来源可信;并检验该数据集的标识和类别是否和算法一致;

步骤5:深度学习各算法之间进行可信交互深度学习主程序维护一个算法调用列表,该列表中存储每个计算任务各个算法的调用序列;主动免疫芯片对该算法调用列表进行实时监控和主动度量,保证算法调用列表的完整性;

深度学习各算法之间的交互利用深度学习主程序作为可信第三方进行相互认证;

步骤6:深度学习平台之间进行可信交互两个或多个深度学习平台之间提供基于主动免疫芯片的可信凭据;凭据包括深度学习平台启动环境的主动度量值以及深度学习主程序及算法子程序的主动度量值。

2.根据权利要求1所述的一种主动免疫的深度学习可信计算方法,其特征在于:所述主动免疫芯片代理包括系统引导度量代理、系统内核度量代理、应用启动度量代理和应用运行度量代理,所述系统引导度量代理、系统内核度量代理、应用启动度量代理用于对所述计算部件进行静态度量,所述应用运行度量代理用于对所述计算部件进行动态度量和控制处理。

3.根据权利要求1所述的一种主动免疫的深度学习可信计算方法,其特征在于:所述主动免疫芯片代理具体用于建立所述计算部件的信任链,所述主动免疫芯片代理包括系统引导度量代理、系统内核度量代理、应用启动度量代理和应用运行度量代理。

4.根据权利要求2所述的一种主动免疫的深度学习可信计算方法,其特征在于:所述应用启动度量代理用于在所述深度学习专用操作系统内核执行之后,对所述计算部件的深度学习专用算法引擎、深度学习主程序和深度学习管理模块的启动代码进行主动度量。

5.根据权利要求2所述的一种主动免疫的深度学习可信计算方法,其特征在于:所述应用运行度量代理具体用于根据动态自主可信策略对所述计算部件内存中运行的深度学习专用算法引擎、深度学习主程序和深度学习管理模块代码进行主动度量;所述动态自主可信策略依据度量对象和度量时机的变换而变化。

说明书 :

一种主动免疫的深度学习可信计算方法

技术领域

[0001] 本发明涉及深度学习领域和信息领域,其主要特征具体涉及一种主动免疫的深度学习可信计算平台。

背景技术

[0002] 深度学习技术已经成为人工智能的重要标志,获得了广泛的应用。然而,深度学习算法执行的安全性和可信性却较少研究,本文基于深度学习技术的特点,研究了深度学习
技术所面临的各种安全问题,提出了一种可信的深度学习计算平台。

发明内容

[0003] 本发明的目的在于,针对深度学习技术面临的各种安全威胁,提出了一种主动免疫的深度学习可信计算平台。其主要思路是,将于可信计算3.0与深度学习技术相结合,构
建深度学习算平台可信执行环境。通过对深度学习平台各个核心算法和各个核心执行环节
进行可信校验,保证深度学习平台的安全可信。
[0004] 为实现上述目的,本发明采用的技术方案如下:
[0005] 一种主动免疫的深度学习可信计算平台,包括:并行的计算部件和防护部件,其中,
[0006] 所述计算部件用于完成深度学习专用算法引擎、深度学习主程序和深度学习管理模块等计算任务;
[0007] 所述防护部件用于通过主动免疫芯片,根据动态自主可信策略对所述计算部件进行主动度量和主动控制;所述计算部件与所述防护部件之间具有安全隔离机制,通过专用
访问通道进行交互;
[0008] 所述防护部件根据动态自主可信策略对所述计算部件进行主动度量,包括:通过主动免疫芯片代理对所述计算部件分别进行静态度量和动态度量。
[0009] 进一步,如上所述的一种主动免疫的深度学习可信计算平台,所述主动免疫芯片代理包括系统引导度量代理、系统内核度量代理、应用启动度量代理和应用运行度量代理,
所述系统引导度量代理、系统内核度量代理、应用启动度量代理用于对所述计算部件进行
静态度量,所述应用运行度量代理用于对所述计算部件进行动态度量和控制处理。度量方
式包括不限于完整性校验、规则性检测等。
[0010] 进一步,如上所述的一种主动免疫的深度学习可信计算平台,其特征在于,所述主动免疫芯片代理具体用于建立所述计算部件的信任链,所述主动免疫芯片代理包括系统引
导度量代理、系统内核度量代理、应用启动度量代理和应用运行度量代理;
[0011] 所述系统引导度量代理用于在所述深度学习专用固件启动后,且在所述计算部件的深度学习专用系统引导启动之前,对所述计算部件的深度学习专用系统引导及系统内核
度量代理进行主动度量;
[0012] 所述系统内核度量代理用于在所述深度学习专用系统引导启动之后,在所述计算部件的深度学习专用操作系统加载之前,对所述深度学习专用操作系统、应用运行度量代
理和应用启动度量代理进行主动度量;
[0013] 所述应用启动度量代理用于在所述深度学习专用操作系统执行之后,在所述计算部件的深度学习专用算法引擎、深度学习主程序和深度学习管理模块的启动代码进行主动
度量。
[0014] 进一步,如上所述的一种主动免疫的深度学习可信计算平台,所述应用运行度量代理具体用于根据动态自主可信策略对所述计算部件内存中运行的深度学习专用算法引
擎、深度学习主程序和深度学习管理模块代码进行主动度量。所属动态自主可信策略依据
度量对象和对量时机的变换而变化,包括不限于主体、客体、操作和运行环境等。
[0015] 一种主动免疫的深度学习可信计算方法,该方法的主要流程如下:
[0016] 步骤1:深度学习平台启动信任链构建
[0017] 以主动免疫芯片为可信根,逐级对深度学习专用硬件配置、深度学习专用固件、深度学习专用OSLoader代码,深度学习专用操作系统内核以及深度学习主程序逐级进行主动
度量和加载。若所有部件均成功加载,则深度学习平台启动信任链构建成功。
[0018] 步骤2:深度学习算法启动加载可信
[0019] 深度学习主程序加载后,每一个深度学习算法在运行前,主动免疫芯片都对算法启动加载的所有程序进行主动度量。
[0020] 步骤3:深度学习平台运行环境可信
[0021] 主动免疫芯片对深度学习平台运行环境进行主动监控。利用触发度量和定时度量两种方式,校验
[0022] 内存中深度学习主程序和算法主程序的完整性。
[0023] 步骤4:深度学习数据集可信使用
[0024] 对深度学习设计的训练数据集、测试数据集和交叉验证数据集均进行统一的可信标签标记。标记的内容包括数据的标识、类别和数据完整性摘要值等,并进行签名。
[0025] 在深度学习算法运行过程中,主动免疫芯片通过验证签名校验数据集的来源可信。并检验该数据集的标识和类别是否和算法一致。
[0026] 步骤5:深度学习各算法之间的可信交互
[0027] 深度学习主程序维护一个算法调用列表,该列表中存储每个计算任务各个算法的调用序列。主动免疫芯片对该算法调用列表进行实时监控和主动度量,保证算法调用列表
的完整性。
[0028] 深度学习各算法之间的交互利用深度学习主程序作为可信第三方进行相互认证。
[0029] 步骤6:深度学习平台之间的可信交互
[0030] 两个或多个深度学习平台之间提供基于主动免疫芯片的可信凭据。凭据包括深度学习平台启动环境的主动度量值以及深度学习主程序及算法子程序的主动度量值。

附图说明

[0031] 图1为本发明所涉及方法总流程框图;

具体实施方式

[0032] 下面结合附图对本发明的技术方案做进一步的描述,附图1为本发明所涉及方法整体流程图。
[0033] 步骤1:主动免疫芯片初始化配置文件
[0034] 深度学习计算平台第一次启动时。主动免疫芯片利用sm3摘要算法依次计算深度学习专用硬件配置、深度学习专用固件、深度学习专用OSLoader代码,深度学习专用操作系
统内核以及深度学习主程序的摘要值。并存于主动免疫芯片中。深度学习计算平台第一次
运行,深度学习核心算法第一次启动时。主动免疫芯片利用sm3摘要算法计算所有深度学习
核心算法代码的摘要值并存储于主动免疫芯片中。深度学习核心算法包括CNN,DNN,GAN、
LSTM、RNN 及其他神经网络算法。
[0035] 步骤2:深度学习平台启动信任链构建
[0036] 主动免疫芯片在CPU、GPU启动之前,对深度学习计算平台的深度学习专用硬件配置和深度学习专用固件进行主动度量,并将度量结果与主动免疫芯片存储的标准值进行比
较,以确定深度学习专用硬件配置和深度学习专用固件是否完整。
[0037] 主动免疫芯片在固件启动后,深度学习专用OSLoader代码加载之前,对所述深度学习专用深度学习专用OSLoader代码进行主动度量,将度量结果与主动免疫芯片存储的标
准值进行比较,以确定深度学习专用OSLoade代码是否完整。
[0038] 主动免疫芯片在深度学习专用OSLoader代码执行之后,在深度学习专用操作系统内核代码加载之前,对深度学习专用操作系统内核代码,行主动度量,将度量结果与主动免
疫芯片存储的标准值进行比较,以确深度学习专用操作系统内核代码是否完整。
[0039] 主动免疫芯片在深度学习专用操作系统内核加载之后,深度学习主程序加载之前,对深度学习主程序进行主动度量,将度量结果与主动免疫芯片存储的标准值进行比较,
以确深度学习主程序是否完整。
[0040] 步骤2:深度学习算法启动加载可信
[0041] 主动免疫芯片在深度学习主程序加载之后,深度学习核心算法加载之前,对深度学习核心算法进行主动度量,将度量结果与主动免疫芯片存储的标准值进行比较,以确深
度学习核心算法是否完整。
[0042] 步骤3:深度学习平台运行环境可信
[0043] 主动免疫芯片对深度学习平台运行环境进行主动监控。利用触发度量和定时度量两种方式,校验
[0044] 内存中深度学习主程序和算法主程序的完整性。验证算法采用sm3摘要算法。
[0045] 步骤4:深度学习数据集可信使用
[0046] 对深度学习设计的训练数据集、测试数据集和交叉验证数据集均进行统一的可信标签标记。标记的内容包括数据的标识(全网或局域网中的数据标识应该唯一)、属性(包括
数据来源、数据类别、数据结构、数据使用范围以及数据大小等)和数据完整性摘要值(利用
sm3算法进行摘要计算所得)等,并进行利用sm2签名算法进行签名。
[0047] 在深度学习算法运行过程中,主动免疫芯片通过sm2验签算法验证签名校验数据集的来源是否可信。并检验该数据集的标识和类别是否和算法一致。
[0048] 步骤5:深度学习各核心算法之间的可信交互
[0049] 深度学习主程序维护一个算法调用列表List,该列表包括一个任务集,同时存储每个计算任务使用各个算法的顺序。主动免疫芯片对该算法调用列表进行实时监控和主动
度量,保证算法调用列表的完整性。
[0050] 深度学习各算法之间的交互利用深度学习主程序作为可信第三方进行相互认证。认证方法采用基于对称算法sm4的认证机制。
[0051] 例如:如果某任务的计算需要CNN,LSTM和GAN三种算法。则深度学习主程序将该任务的调用关系存储与调用列表中。主动免疫芯片依据事先设置的策略对列表进行完整性保
护。
[0052] 步骤6:深度学习平台之间的可信交互
[0053] 两个或多个深度学习平台之间提供基于主动免疫芯片的可信凭据。凭据包括深度学习平台启动环境的主动度量值以及深度学习主程序及算法子程序的主动度量值。例如:
在TensorFlow并行框架中,需要多个深度学习计算平台共同完成一项任务。此时,各平台之
间分别基于主动免疫芯片进行双向或多项身份证明和平台完整性证明。
[0054] 运行结果描述:进行了1000次实验,每次对某一个神经网络的启动代码进行篡改或者对该神经网络运行态的核心代码进行篡改。结果显示,深度学习可信计算平台能够准
确进行检测,检测准确率,100%。
[0055] 下面对面向深度学习主节点的主动免疫可信计算平台的基本框架进行描述。
[0056] 如图1所示,一种主动免疫的深度学习可信计算平台,可信计算平台可以包括:并行的计算部件和防护部件,计算部件用于完成深度学习专用算法引擎、深度学习主程序和
深度学习管理模块等计算任务,防护部件用于通过主动免疫芯片,根据动态自主可信策略
对计算部件进行主动度量和主动控制;计算部件与防护部件之间具有安全隔离机制,可以
通过专用访问通道进行交互;
[0057] 防护部件具体用于通过主动免疫芯片代理对计算部件分别进行静态度量和动态度量。
[0058] 该可信计算平台以主动免疫芯片为信任根,主动免疫芯片先于计算部件中的深度学习专用CPU启动对计算部件中的硬件配置进行验证,改变了TPM作为被动挂接设备的传统
思路,将主动免疫芯片作为主动度量和主动控制的源点,实现了主动免疫芯片对整个计算
部件的主动度量和主动控制。
[0059] 下面对计算部件和防护部件的结构特征进行详细描述。
[0060] 计算部件可以包括:深度学习专用CPU和硬件、深度学习专用固件、深度学习专用系统引导、深度学习专用操作系统、深度学习专用算法引擎、深度学习主程序和深度学习管
理模块,
[0061] 防护部件可以包括:主动免疫芯片硬件平台和主动免疫芯片代理。主动免疫芯片可以包括:中央处理器、专有物理内存、持久存储空间、内置密码引擎。防护部件并行于计算
部件执行,有自己的中央处理器CPU,专有物理内存。主动免疫芯片可以对防护部件中的以
下信息中的至少之一进行管理:进程、内存、文件系统、网络协议、I/O设备和接口。
[0062] 下面对主动免疫芯片代理进行静态度量和动态度量的过程进行详细描述。
[0063] 主动免疫芯片代理包括系统引导度量代理、系统内核度量代理、应用启动度量代理和应用运行度量代理。
[0064] 系统引导度量代理、系统内核度量代理、应用启动度量代理用于对计算部件进行静态度量。
[0065] 主动免疫芯片代理具体用于建立所述计算部件的信任链,所述主动免疫芯片代理包括系统引导度量代理、系统内核度量代理、应用启动度量代理和应用运行度量代理;
[0066] 所述系统引导度量代理用于在所述深度学习专用固件启动后,且在所述计算部件的深度学习专用系统引导启动之前,对所述计算部件的深度学习专用系统引导及系统内核
度量代理进行主动度量;
[0067] 所述系统内核度量代理用于在所述深度学习专用系统引导启动之后,在所述计算部件的深度学习专用操作系统加载之前,对所述深度学习专用操作系统、应用运行度量代
理和应用启动度量代理进行主动度量;
[0068] 所述系统内核度量代理用于在所述深度学习专用系统引导启动之后,在所述计算部件的深度学习专用操作系统加载之前,对所述深度学习专用操作系统、应用运行度量代
理和应用启动度量代理进行主动度量;
[0069] 所述应用启动度量代理用于在所述深度学习专用操作系统执行之后,在所述计算部件的深度学习专用算法引擎、深度学习主程序和深度学习管理模块的启动代码进行主动
度量。
[0070] 应用运行度量代理
[0071] 应用运行度量代理具体用于根据动态自主可信策略对所述计算部件内存中运行的深度学习专用算法引擎、深度学习主程序和深度学习管理模块代码进行主动度量。所属
动态自主可信策略依据度量对象和对量时机的变换而变化,包括不限于主体、客体、操作和
运行环境等。操作包括但并不限于:系统调用行为、应用自身调用行为等。环境可以包括以
下至少之一:应用程序的主程序代码、使用库函数代码、进程相关的数据结构、应用程序的
数据段和关键的配置文件;应用执行所依赖的系统环境可以包括以下至少之一:内核主体
代码段、可加载模块代码段、系统调用表、中断描述表、文件系统跳转表、网络协议栈、跳转
表、设备驱动跳转表、寄存器值和关键的配置数据。
[0072] 本发明提供的一种主动免疫的深度学习可信计算平台至少包括以下优点:
[0073] 1、并行双体系结构设计可以在计算部件进行计算的同时主动进行安全防护,在不改变计算部件的计算逻辑的前提下实现对计算部件的主动安全防护。
[0074] 2、防护部件具有对计算部件的主动防护能力,其安全防护不是通过计算部件的主机程序调用执行的,而是以主动免疫芯片为信任根,主动对计算部件发起的主动度量和主
动控制。在不修改计算部件的代码的前提下防护部件能够为计算部件的启动、运行等整个
生命周期提供安全防护。
[0075] 3、除了建立以TPCM为信任根逐级度量的静态信任链之外,还设计了基于安全可信策略的动态度量机制,实现了在系统启动以及运行过程中对整个系统的主动防御。