运行安全执行域的方法、装置、电子设备及计算机介质与流程

文档序号:17248214发布日期:2019-03-30 08:56阅读:183来源:国知局
运行安全执行域的方法、装置、电子设备及计算机介质与流程

本申请涉及信息安全技术领域,具体而言,本申请涉及一种运行安全执行域的方法、装置、电子设备及计算机介质。



背景技术:

随着计算机技术在工业、医疗、家居、交通等领域的广泛应用,出现了各种各样的信息系统,这些系统在服务人类的同时也时刻遭受着攻击,为确保这些系统的稳定性、可靠性,构建安全机制尤为重要。

目前主流的安全机制主要从硬件及软件两个方面进行考虑:硬件主要依托于芯片及架构实现安全机制,如arm公司的trustzone(信任区)技术;软件方面根据应用场景的不同又分为很多种,如网络安全、平台安全等,所采用的技术主要为内存保护、虚拟化、访问控制权限等。但是,现有的基于硬件构建的安全机制对供应商的依赖性很高、灵活性不强、通用性较差,而且trustzone不易执行复杂逻辑,否则将扩大被攻击面。



技术实现要素:

本申请的目的旨在至少能解决上述的技术缺陷之一,特提出以下技术方案:

第一方面,提供了一种运行安全执行域的方法,包括:

接收到来自应用层的安全操作请求时,基于微内核建立与操作系统域相互隔离的安全执行域;

通过微内核为安全执行域配置相应的设备资源;

基于设备资源,通过安全执行域执行与安全操作请求对应的操作。

第二方面,提供了一种运行安全执行域的装置,包括:

第一处理模块,用于接收到来自应用层的安全操作请求时,基于微内核建立与操作系统域相互隔离的安全执行域;

配置模块,用于通过微内核为安全执行域配置相应的设备资源;

第二处理模块,用于基于设备资源,通过安全执行域执行与安全操作请求对应的操作。

第三方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述的运行安全执行域的方法。

第四方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述的运行安全执行域的方法。

本申请实施例提供的运行安全执行域的方法,接收到来自应用层的安全操作请求时,基于微内核建立与操作系统域相互隔离的安全执行域,从架构上保证了后续的执行操作的安全性,为后续基于安全执行域执行与安全操作请求对应的操作提供前提保障;通过微内核为安全执行域配置相应的设备资源,奠定了后续基于安全执行域执行与安全操作请求对应的操作的必要基础,基于设备资源,通过安全执行域执行与安全操作请求对应的操作,从而基于微内核的方式,为高密级的操作提供安全、灵活的隔离执行环境,同时无需依赖于供应商自身的设计特点,降低了对供应商的依赖性,而且灵活性强,通用性高。

本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本申请实施例的运行安全执行域的方法的流程示意图;

图2为本申请实施例的两个执行域间进行通信的结构示意图;

图3为本申请实施例的运行安全执行域的装置的基本结构示意图;

图4为本申请实施例的运行安全执行域的装置的详细结构示意图;

图5为本申请实施例的电子设备的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

目前主流的安全机制主要从硬件及软件两个方面进行考虑:硬件主要依托于芯片及架构实现安全机制,如arm公司的trustzone(信任区)技术;软件方面根据应用场景的不同又分为很多种,如网络安全、平台安全等,所采用的技术主要为内存保护、虚拟化、访问控制权限等。但是,现有的基于硬件构建的安全机制对供应商的依赖性很高、灵活性不强、通用性较差,而且trustzone不易执行复杂逻辑,否则将扩大被攻击面。

本申请提供的运行安全执行域的方法、装置、电子设备和计算机可读存储介质,旨在解决现有技术的如上技术问题。

下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。

实施例一

本申请实施例提供了一种运行安全执行域的方法,如图1所示,包括:

步骤s110,接收到来自应用层的安全操作请求时,基于微内核建立与操作系统域相互隔离的安全执行域。

具体地,传统的终端设备的操作系统运行在一个域中,该操作系统对接收到的来自应用层的操作请求进行判断,当判断该操作请求是安全操作请求时,将该安全操作请求分发至微内核,由微内核对安全操作请求进行相应处理,其中,微内核在接收到操作系统分发的安全操作请求时,建立与运行操作系统的域(即操作系统域)相互隔离的安全执行域,即终端设备接收到来自应用层的安全操作请求时,基于微内核建立与操作系统域相互隔离的安全执行域,从架构上保证了后续的执行操作的安全性。

步骤s120,通过微内核为安全执行域配置相应的设备资源。

具体地,终端设备基于微内核建立与操作系统域相互隔离的安全执行域以后,需要为安全执行域配置相应的设备资源,从而便于后续根据配置的设备资源执行与安全操作请求对应的操作,其中,终端设备通过微内核为安全执行域配置相应的设备资源,从而奠定了后续基于安全执行域执行与安全操作请求对应的操作的必要基础。

步骤s130,基于设备资源,通过安全执行域执行与安全操作请求对应的操作。

具体地,终端设备基于微内核为安全执行域配置的设备资源,在安全执行域中执行与安全操作请求相对应的操作,即基于设备资源,通过安全执行域执行与安全操作请求对应的操作,从而基于微内核的方式,为高密级的操作提供安全、灵活的隔离执行环境,同时无需依赖于供应商自身的设计特点,降低了对供应商的依赖性,而且灵活性强、通用性高。

本申请实施例提供的运行安全执行域的方法,与现有技术相比,接收到来自应用层的安全操作请求时,基于微内核建立与操作系统域相互隔离的安全执行域,从架构上保证了后续的执行操作的安全性,为后续基于安全执行域执行与安全操作请求对应的操作提供前提保障;通过微内核为安全执行域配置相应的设备资源,奠定了后续基于安全执行域执行与安全操作请求对应的操作的必要基础,基于设备资源,通过安全执行域执行与安全操作请求对应的操作,从而基于微内核的方式,为高密级的操作提供安全、灵活的隔离执行环境,同时无需依赖于供应商自身的设计特点,降低了对供应商的依赖性,而且灵活性强、通用性高。

本申请实施例提供了另一种可能的实现方式,其中,

安全操作请求包括以下任一项:

数据加密请求;身份验证请求;通信协议封装请求。

设备资源包括中央处理器cpu的核、内存和外部设备;cpu的核只用于安全执行域。

另外,当设备资源为内存时,步骤s130包括步骤s1301(图中未标注)、步骤s1302(图中未标注)与步骤s1303(图中未标注),其中,

步骤s1301:在安全执行域中,对安全操作请求进行从逻辑地址到中间物理地址的初始映射;

步骤s1302:通过微内核进行从中间物理地址到实际物理地址的目标映射;

步骤s1303:基于实际物理地址,执行与安全操作请求对应的操作。

另外,当设备资源为外部设备时,步骤s130包括步骤s1304(图中未标注)与步骤s1305(图中未标注),其中,

步骤s1304:通过微内核将外部设备的配置信息发送给安全执行域,以使得安全执行域基于配置信息进行相应的初始化操作;

步骤s1305:通过微内核将安全操作请求发送给安全执行域,以使得安全执行域执行与安全操作请求相对应的操作。

具体地,终端设备的操作系统可以对接收到的来自应用层的操作请求,例如启动请求、搜索请求、数据加密请求、通信协议封装请求、身份验证请求等,操作系统可以判断接收到的操作请求是否为安全级别大于预定级别的请求,即判断接收到的操作请求是否为高密级的请求,如果是,则将相应的操作请求发送至微内核,由微内核对该高密级的请求进行相应处理,其中,可以将数据加密请求、通信协议封装请求、身份验证请求等预设为高密级的操作请求(即安全操作请求),即操作系统接收到数据加密请求、通信协议封装请求及身份验证请求时,直接将其分发至微内核,以由微内核对其进行相应处理。

进一步地,终端设备的微内核在对接收到的数据加密请求、通信协议封装请求、及身份验证请求等安全操作请求进行处理时,建立一个与操作系统域相互隔离的安全执行域,即当有安全操作请求时,微内核创建与操作系统域相互隔离的新的执行域(即安全执行域),并通过该新的执行域执行上述安全操作请求,从而从架构上保证了后续操作的安全性。

进一步地,终端设备基于微内核建立与操作系统域相互隔离的安全执行域以后,需要为安全执行域配置相应的设备资源,从而便于后续根据配置的设备资源执行与安全操作请求对应的操作,其中,设备资源包括但不限于cpu的核、内存和外部设备等,当前主流cpu都是多核架构,例如4核、8核等,微内核为安全执行域分配cpu的核,该核仅供安全执行域执行安全操作(例如身份验证、数据加密、通信协议封装等操作)时调度,操作系统域不能够使用这个cpu核。

进一步地,在内存管理方面,终端设备的操作系统在操作系统域中做从逻辑地址到中间物理地址的映射,终端设备的微内核在安全执行域中做从逻辑地址到中间物理地址的映射,即在每个执行域里面分别做从逻辑地址到中间物理地址的映射,在此将其称为一级页表,接着通过微内核将中间物理地址映射为真实物理地址(即实际物理地址),在此将其称为二级页表。其中,微内核全程管理二级页表,保证操作系统域和安全执行域之间的隔离性,即操作系统域和安全执行域之间无法越界访问。可见,对于安全操作请求来说,其在基于内存来进行与安全操作请求对应的操作时,先在安全执行域中对安全操作请求进行从逻辑地址到中间物理地址的初始映射,接着通过微内核进行从中间物理地址到实际物理地址的目标映射,接着基于实际物理地址,执行与安全操作请求对应的操作。

进一步地,当安全操作请求需要借助外部设备来完成时,例如身份验证请求需要使用硬件来验证,此时在外部设备的管理方面,微内核首先将外部设备的配置描述(即配置信息)传递给安全执行域,安全执行域根据该配置描述进行相应的初始化操作,当需要访问外部设备来执行安全操作请求或者接收到来自外部设备的执行安全操作请求的中断信号时,微内核将该安全操作请求转发给安全执行域,其中,操作系统域无法访问该外部设备,并且无法接收到来自外部设备的执行安全操作请求的中断信号。换言之,终端设备通过微内核将外部设备的配置信息发送给安全执行域,以使得安全执行域基于配置信息进行相应的初始化操作,接着通过微内核将安全操作请求发送给安全执行域,以使得安全执行域执行与安全操作请求相对应的操作。

对于本申请实施例,通过cpu、内存及外部设备的隔离,达到了安全操作请求的安全执行,原来操作系统无法干预这个执行过程。

本申请实施例提供了另一种可能的实现方式,其中,

在步骤s130之后还包括步骤s140(图中未标注):通过预设通信通道,将安全操作请求的执行结果发送至操作系统域,预设通信通道是基于微内核创建的、且是操作系统域与安全执行域间的通信通道。

在步骤s140之后还包括步骤s150(图中未标注):销毁安全执行域。

具体地,终端设备通过微内核执行完上述安全操作后,向操作系统返回相应的执行结果,其中,在向操作系统返回相应的执行结果时,可以通过基于微内核创建的、且是操作系统域与安全执行域间的通信通道(即预设通信通道),将安全操作请求的执行结果发送至操作系统域,以使得操作系统域能够向用户反馈相应的执行结果,图2给出了操作系统域与安全执行域间进行通信的结构示意图。

进一步地,当上述安全操作请求为身份验证请求时,基于微内核的安全执行域在执行完身份验证后,将向操作系统域返回验证成功或验证失败的结果信息,当上述安全操作请求为数据加密请求时,基于微内核的安全执行域在执行数据加密后,将向操作系统域返回加密后的数据信息,当上述安全操作请求为通信协议封装请求时,基于微内核的安全执行域在执行完通信协议封装后,将向操作系统域返回封装后的通信协议信息。

进一步地,在通过微内核将安全操作请求的执行结果发送至操作系统域后,可以销毁上述的安全执行域,即释放安全执行域占用的设备资源等,从而将宝贵的系统资源释放出来,以用于操作系统域执行相应的操作,使得操作系统的运行更加流畅。

对于本申请实施例,通过将安全操作请求的执行结果发送至操作系统域,使得操作系统域能够向用户反馈相应的执行结果,通过销毁安全执行域,得操作系统的运行更加流畅。

实施例二

图3为本申请实施例提供的一种运行安全执行域的装置的结构示意图,如图3所示,该装置30可以包括第一处理模块31、配置模块32与第二处理模块33,其中,

第一处理模块31用于接收到来自应用层的安全操作请求时,基于微内核建立与操作系统域相互隔离的安全执行域;

配置模块32用于通过微内核为安全执行域配置相应的设备资源;

第二处理模块33用于基于设备资源,通过安全执行域执行与安全操作请求对应的操作。

具体地,设备资源包括中央处理器cpu的核、内存和外部设备;

cpu的核只用于安全执行域。

进一步地,当设备资源为内存时,第二处理模块33包括第一映射子模块331、第二映射子模块332与执行子模块333,如图4所示,其中,

第一映射子模块331用于在安全执行域中,对安全操作请求进行从逻辑地址到中间物理地址的初始映射;

第二映射子模块332用于通过微内核进行从中间物理地址到实际物理地址的目标映射;

执行子模块333用于基于实际物理地址,执行与安全操作请求对应的操作。

进一步地,当设备资源为外部设备时,第二处理模块33包括第一发送子模块334与第二发送子模块335,如图4所示,其中,

第一发送子模块334用于通过微内核将外部设备的配置信息发送给安全执行域,以使得安全执行域基于配置信息进行相应的初始化操作;

第二发送子模块335用于通过微内核将安全操作请求发送给安全执行域,以使得安全执行域执行与安全操作请求相对应的操作。

进一步地,安全操作请求包括以下任一项:

数据加密请求;身份验证请求;通信协议封装请求。

进一步地,还包括发送模块34,如图4所示,其中,发送模块34用于通过预设通信通道,将安全操作请求的执行结果发送至操作系统域,预设通信通道是基于微内核创建的、且是操作系统域与安全执行域间的通信通道。

进一步地,还包括第三处理模块35,如图4所示,其中,第三处理模块35用于销毁安全执行域。

本申请实施例提供的装置,与现有技术相比,接收到来自应用层的安全操作请求时,基于微内核建立与操作系统域相互隔离的安全执行域,从架构上保证了后续的执行操作的安全性,为后续基于安全执行域执行与安全操作请求对应的操作提供前提保障;通过微内核为安全执行域配置相应的设备资源,奠定了后续基于安全执行域执行与安全操作请求对应的操作的必要基础,基于设备资源,通过安全执行域执行与安全操作请求对应的操作,从而基于微内核的方式,为高密级的操作提供安全、灵活的隔离执行环境,同时无需依赖于供应商自身的设计特点,降低了对供应商的依赖性,而且灵活性强,通用性高。

实施例三

本申请实施例提供了一种电子设备,如图5所示,图5所示的电子设备500包括:处理器501和存储器503。其中,处理器501和存储器503相连,如通过总线502相连。进一步地,电子设备500还可以包括收发器504。需要说明的是,实际应用中收发器504不限于一个,该电子设备500的结构并不构成对本申请实施例的限定。

其中,处理器501应用于本申请实施例中,用于实现图3或图4所示的第一处理模块、配置模块及第二处理模块的功能,以及图4所示的发送模块与第三处理模块的功能。

处理器501可以是cpu,通用处理器,dsp,asic,fpga或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器501也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。

总线502可包括一通路,在上述组件之间传送信息。总线502可以是pci总线或eisa总线等。总线502可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

存储器503可以是rom或可存储静态信息和指令的其他类型的静态存储设备,ram或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom、cd-rom或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。

存储器503用于存储执行本申请方案的应用程序代码,并由处理器501来控制执行。处理器501用于执行存储器503中存储的应用程序代码,以实现图3或图4所示实施例提供的运行安全执行域的装置的动作。

本申请实施例提供的电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时,与现有技术相比,可实现:接收到来自应用层的安全操作请求时,基于微内核建立与操作系统域相互隔离的安全执行域,从架构上保证了后续的执行操作的安全性,为后续基于安全执行域执行与安全操作请求对应的操作提供前提保障;通过微内核为安全执行域配置相应的设备资源,奠定了后续基于安全执行域执行与安全操作请求对应的操作的必要基础,基于设备资源,通过安全执行域执行与安全操作请求对应的操作,从而基于微内核的方式,为高密级的操作提供安全、灵活的隔离执行环境,同时无需依赖于供应商自身的设计特点,降低了对供应商的依赖性,而且灵活性强,通用性高。

本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现实施例一所示的方法。与现有技术相比,接收到来自应用层的安全操作请求时,基于微内核建立与操作系统域相互隔离的安全执行域,从架构上保证了后续的执行操作的安全性,为后续基于安全执行域执行与安全操作请求对应的操作提供前提保障;通过微内核为安全执行域配置相应的设备资源,奠定了后续基于安全执行域执行与安全操作请求对应的操作的必要基础,基于设备资源,通过安全执行域执行与安全操作请求对应的操作,从而基于微内核的方式,为高密级的操作提供安全、灵活的隔离执行环境,同时无需依赖于供应商自身的设计特点,降低了对供应商的依赖性,而且灵活性强,通用性高。

本申请实施例提供的计算机可读存储介质适用于上述方法的任一实施例。在此不再赘述。

应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1