CN111382442B - 一种应用处理器、协处理器及数据处理设备 - Google Patents
一种应用处理器、协处理器及数据处理设备 Download PDFInfo
- Publication number
- CN111382442B CN111382442B CN201811637071.7A CN201811637071A CN111382442B CN 111382442 B CN111382442 B CN 111382442B CN 201811637071 A CN201811637071 A CN 201811637071A CN 111382442 B CN111382442 B CN 111382442B
- Authority
- CN
- China
- Prior art keywords
- application
- trusted
- kernel
- inter
- untrusted
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种应用处理器。该应用处理器包括可信内核和非可信内核。可信内核包括可信应用。非可信内核包括可信应用管理单元。可信应用管理单元适于在接收到可信应用访问请求时,进行内核切换以便从非可信内核切换到可信内核,以便由可信内核调用可信应用来处理访问请求以获取响应数据,并再次进行内核切换将响应数据返回给可信应用管理单元。本发明还公开相应的协处理器以及包括该应用处理器和协处理器的数据处理设备。
Description
技术领域
本发明涉及多核处理器领域,尤其涉及包括可信内核和非可信内核的多核处理器领域。
背景技术
随着物联网的大规模发展,物联网设备在各个领域广泛应用。有些物联网设备利用SIM卡提供的移动通信网络进行网络通信。当这样的物联网设备部署在物理安全性和工作条件恶劣的环境中时,会产生设备工作不稳定、需要额外人力来进行维护等问题。
如果可以将SIM卡的功能置于物联网设备主控芯片的安全区域里,并保证代码安全性,数据机密性和完整性,则可以让物联网设备减少了用于容纳SIM卡的接口以及SIM卡本身,可以显著提高物联网设备的可靠性,并降低物联网设备的体积、成本和功耗。
在现有技术中,并没有提供安全且可靠地将SIM卡功能集成到物联网设备的芯片中的解决方案。因此,需要一种可以将SIM卡功能安全且可靠地集成到物联网设备的芯片中以便让物联网设备中的应用进行访问的解决方案。
发明内容
为此,本发明提供了一种新的数据处理设备及其中的应用处理器和协处理器,以力图解决或者至少缓解上面存在的至少一个问题。
根据本发明的一个方面,提供了一种应用处理器。该应用处理器包括可信内核和非可信内核。可信内核包括可信应用。非可信内核包括可信应用管理单元。可信应用管理单元适于在接收到可信应用访问请求时,进行内核切换以便从非可信内核切换到可信内核,以便由可信内核调用可信应用来处理访问请求以获取响应数据,并再次进行内核切换将响应数据返回给可信应用管理单元。
可选地,在根据本发明的应用处理器中,在可信内核上运行有可信操作系统,可信应用在可信操作系统中运行;以及在非可信内核上运行有富执行环境操作系统,可信应用管理单元在富执行环境操作系统中运行。
可选地,在根据本发明的应用处理器中,可信应用管理单元适于将与可信应用访问请求相对应的消息内容存储到非可信内核的预定空间中,并进行内核切换以切换到可信内核中。可信内核适于从非可信内核的预定空间中获取消息内容,调用相应的可信应用处理消息内容来获取响应数据,将响应数据写入到非可信内核的预定空间中,并进行内核切换以切换到非可信内核中,以便可信应用管理单元从预定空间中获取响应数据。
可选地,在根据本发明的应用处理器中,非可信内核还包括第一核间通讯单元。第一核间通讯单元适于接收外部的可信应用访问请求,并将访问请求发送给可信应用管理单元进行处理并接收响应数据,以便将所述响应数据返回给访问请求方。
可选地,在根据本发明的应用处理器中,可信应用访问请求包括请求消息令牌,所述请求消息令牌包括消息标识、消息数据和消息验证码。第一核间通讯单元适于从请求消息令牌中提取消息标识和消息数据,并将所提取的消息标识和消息数据发送给可信应用管理单元。第一核间通讯单元还适于基于响应数据构造响应消息令牌,并将响应消息令牌返回给访问请求方。响应消息令牌包括消息标记、响应数据和消息验证码。
在根据本发明的应用处理器中,可信应用包括SIM卡应用,适于获取SIM卡数据。
在根据本发明的应用处理器中,非可信内核还包括非可信应用和第二核间通讯单元。非可信应用适于经由第二核间通讯单元与耦接到应用处理器的协处理器上的协处理应用进行通讯。
在根据本发明的应用处理器中,非可信应用适于经由第二核间通信单元与协处理器上的调制解调器管理应用进行通信,以便经由调制解调器管理应用来进行网络通信。
根据本发明的另一个方面,提供了一种协处理器。该协处理器包括:协处理应用;以及第一核间通讯单元。第一核间通讯单元适于接收协处理应用的可信应用访问请求,和根据本发明的、耦接到协处理器的应用处理器进行通讯,以便经由应用处理器中的可信应用管理单元来访问应用处理器的可信内核中的可信应用。
可选地,根据本发明的协处理器还包括第二核间通讯单元。第二核间通讯单元适于与应用处理器的非可信内核中的非可信应用进行通讯,以便非可信应用经由第二核间通讯单元与协处理应用进行通讯。
根据本发明的还有一个方面,提供了一种数据处理设备,包括根据本发明的应用处理器;以及根据本发明的协处理器,其耦接到应用处理器。
根据本发明的方案通过将应用处理器的多个内核划分为可信内核和非可信内核,并且将SIM卡功能作为在可信内核中的一个可信应用,并仅仅可以经由在非可信内核中的可信应用管理单元来访问,保证了SIM卡功能的安全性,从而可以减少物理SIM卡和卡槽的成本。
另外,根据本发明的方案,在数据处理设备中的协处理器需要先把可信应用访问请求发送给非可信内核中的第一核间通讯单元,并由第一核间通讯单元来调用可信内核代理单元来访问在应用处理器中的诸如SIM卡功能之类的可信应用的方式。这种从应用处理器外部访问可信应用的安全方式在保证功能可用性的同时,提高了设备的安全性。
另外,根据本发明的方案,应用管理器可以在可信内核和非可信内核运行状态之间进行切换。在非可信内核中的可信应用管理单元可以触发内核切换,让应用管理器处于可信内核运行状态中,随后在可信内核中由可信应用进行请求处理之后,再次触发内核切换,让处于非可信内核运行状态下的可信应用管理单元获取可信应用的处理结果。利用这种方式,可以为非可信内核或者应用管理器之外的应用提供了一种安全访问可信应用的方式。
另外,根据本发明的方案,协处理器和应用处理器进行可信应用数据通讯和非可信应用数据通讯经由不同的通讯路径,从而可以进一步提高设备的安全性。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的数据处理设备100的结构示意图;
图2示出了根据本发明另一个实施例的数据处理设备400的结构示意图;以及
图3示出了根据本发明另一个实施例的数据处理设备400的具体应用场景的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的数据处理设备100的结构示意图。如图1所示,数据处理设备100包括应用处理器200。
根据本发明的一个实施例,数据处理设备100可以是物联网设备本身,甚至可以是物联网设备中集成了多个处理器的芯片。本发明不受限于数据处理设备100的具体形式,所有可以集成应用处理器和协处理器的芯片和设备等都在本发明的保护范围之内。
应用处理器200包括可信内核210和非可信内核220。应用处理器200可以是一个多核处理器,可以包括超过两个内核。本发明不受限于应用处理器200所包括的内核数量,只要在所有内核中具有可信内核210和非可信内核220,则这样的应用处理器就在本发明的保护范围之内。
应用处理器200通常一次在一种内核状态下运行。例如应用处理器可以运行在可信内核210的状态下,或者运行在非可信内核220的状态下。应用处理器200提供了各种机制来进行内核切换。因此,当处于非可信内核220的运行状态下时,可以通过触发内核切换(例如,通过触发中断、将运行指针指向特定地址、向特定的寄存器中存储的值进行置位或者复位等),让应用处理器200切换到可信内核210的运行状态下。类似地,应用处理器200也可以通过内核切换而从可信内核210的运行状态切换到非可信内核220的运行状态。一般而言,在可信内核210的运行状态下运行的应用具有一定特权,其可以读取和存储在非可信内核220空间中的数据。反之则不行。
本发明不受限于应用处理器200进行内核切换的具体形式,所有可以让应用处理器200进行内核切换以便在可信内核210和非可信内核220的运行状态下进行切换的方式都在本发明的保护范围之内。
各个内核具有在该内核上运行的应用。可信内核210具有相关联的可信应用212和214。可信应用212和214可以是例如需要在可信内核210中安全执行的应用,例如可以取代硬SIM卡功能的软SIM卡应用等。
非可信内核220中包括可信应用管理单元226。可信应用管理单元226接收可信应用访问请求,并根据该访问请求来访问可信内核210中的可信应用212或者214以获取针对该访问请求的响应数据,并将该响应数据返回给可信应用访问请求发起方。
根据本发明的一个实施方式,可信应用访问请求可以由在应用处理器200之外的例如协处理器上的协处理应用发起,也可以由同样处于非可信内核中的其它应用来发起。本发明不受限于可信应用访问请求的发起方,所有能够向可信应用管理单元226发送可信应用访问请求的请求方都在本发明的保护范围之内。
可信应用管理单元226为访问可信内核210中的可信应用的入口。当需要调用可信应用时,可以首先将访问可信应用的请求发送给可信应用管理单元226。随后,可信应用管理单元226将该请求转发给可信内核210中的相应可信应用(212或者214),并接收相应可信应用(212或者214)执行完成之后的响应数据,并可以将该响应数据返回可信应用访问请求的发起方。
可选地,根据本发明的一个实施方式,可以围绕可信内核210构造可信执行环境(TEE)。具体而言,在可信内核210上构造可信操作系统230。各个可信应用212和214在可信操作系统230中运行。这样可信内核210、可信操作系统230和可信应用一起构成了可信执行环境(TEE)。
另外,可选地,同样可以围绕非可信内核220构造富执行环境(REE)。具体而言,在非可信内核220上构造富执行环境(REE)操作系统240。可信应用管理单元226作为非可信应用在REE操作系统240中运行。这样,非可信内核220、REE操作系统240和各个非可信应用(226)一起构成了富执行环境(REE)。
本发明未对可信操作系统230和REE操作系统240做出限定。这些操作系统可以是安卓操作系统、RTOS实时操作系统等。任何可以完成本发明所限定功能的操作系统都在本发明的保护范围之内。
可选地,根据一种实施方式,可信应用管理单元226通过应用处理器器200提供的内核切换来将与可信应用访问请求相对应的消息发送给可信操作系统230。可信应用管理单元226可以将消息存储到非可信内核的堆栈或者任何可以在可信内核中访问的存储空间中,并请求进行内核切换,以便让应用处理器200处于可信内核210的运行状态下。切换后的可信操作系统230可以从非可信内核的堆栈或者其它存储空间中读取该消息,并根据消息的内容将消息发送给对应的可信应用212或者214进行处理,并在212或者214处理完成之后,将返回结果写入到非可信内核的堆栈或者其它存储空间中,并再次请求进行内核切换,从而让应用处理器200返回到非可信内核220的运行状态下。在非可信内核220的运行状态下,可信内核代理单元226可以从堆栈或者其它存储空间中获取响应数据并返回给访问请求的发起方。
根据一种实施方式,在应用处理器200中具有程序状态寄存器PSR,PSR有T位,当PSR.T位有效(为某特定值)时,处理器处于可信内核的运行状态中。当PSR.T位无效时,处理器处于非可信内核的运行状态中。非可信内核相对可信内核的区别在于寄存器和内存资源的访问权限有所不同。
当PSR.T位无效时,应用处理器200处于非可信内核运行模式下。此时可访问的寄存器包括非可信分组的通用寄存器、矢量通用寄存器、程序指针寄存器(PC)和非可信内核控制寄存器等。但应用处理器200此时无法访问可信资源,无法访问控制寄存器的可信内核。
当PSR.T位有效时,应用处理器200处于可信内核模式运行模式下。此时,应用处理器200可以访问所有寄存器资源,包括可信分组和非可信分组的通用寄存器、矢量通用寄存器、程序指针(PC)寄存器和全部控制寄存器,并可以执行特权指令。在该运行模式下,应用处理器200可以访问可信与非可信外设,也可以配置可信资源以实施安全策略。
为了进行内核切换,应用处理器200还提供了跨内核任务调用指令WSC、跨内核返回指令RTE和跨内核调用入口基址寄存器(T/NT_EBR)。可信任务和非可信任务分别拥有各自独立的跨内核调用入口基址寄存器。
当在非可信内核220中的可信应用管理单元226要调用可信应用212时,管理单元226可以调用WSC指令,此时会将非可信内核220的现场状态信息压栈到非可信内核220的用户堆栈中,将PSR.T位设置为有效值,以便进入可信内核210的运行模式中,并在可信内核210的运行状态下,从可信内核任务调用入口向量表基址T_EBR处的0号入口获取可信应用212的入口地址,并开始执行可信应用212的处理,以便对可信应用请求进行处理。
随后,当可信应用212的执行完成时,执行一条RTE指令来从可信内核运行状态返回到非可信内核运行状态,此时将PSR.T的值为无效值,以进入非可信内核220的运行状态。在回到非可信内核220的运行状态下之后,应用处理器200从非可信内核220的用户堆栈中取回之前备份的现场状态信息,恢复非可信内核220的现场,并且处理器200跳转至可信应用管理单元260在WSC指令的下一条指令处继续执行。这样,可信应用管理单元260就以内核切换的方式完成了一次对可信应用212的调用过程。
在图1所描述的数据处理设备100中,只有通过在非可信内核220中的可信应用管理单元226才能访问可信应用212和214。从而保证了可信应用212和214的安全性。因此,可以将硬SIM卡具有的功能以软件方式(软SIM卡)在可信操作系统中作为一个可信应用来实现而不会降低整个数据处理设备100的安全性。
图2示出了根据本发明另一个实施例的数据处理设备400的结构示意图。
图2所示的数据处理设备400是图1所示的数据处理设备100的进一步扩展,因此,在图2中,用相同或者相似的标记来指示和图1中的部件具有相同或者相似功能的部件,并且不再进行赘述。
如图2所示,非可信内核220中还包括第一核间通讯单元228。第一核间通讯单元228接收外部的可信应用访问请求,典型地来自耦接到应用处理器200的协处理器300的可信应用访问请求。随后,第一核间通讯单元228将该访问请求发送给可信应用管理单元226,由可信应用管理单元226来访问可信应用212或者214并获取相应的响应数据。第一核间通讯单元228从可信应用管理单元226接收该响应数据,并将该响应数据返回给可信应用访问请求发起方,例如协处理器300。
如图2所示,数据处理设备400还包括耦接到应用处理器100的协处理器300。协处理器300包括协处理应用310和第一核间通讯单元320。协处理应用310是利用协处理器300来执行的辅助应用。根据一个实施例,在诸如NBIoT物联网设备之类的数据处理设备100中,协处理应用310包括调制解调器(modem)网络管理应用。调制解调器网络管理应用310提供网络通信功能,这样数据处理设备100上的其它应用可以利用modem网络管理应用提供的功能在网络上进行数据传输。
在一些情况下,为了执行相应的协处理功能,协处理应用310需要调用在应用处理器200的可信内核210中的可信应用212或者214的功能。协处理应用310将可信应用访问请求发送给第一核间通讯单元320。第一核间通讯单元320和非可信内核220中的第一核间通讯单元228进行通讯,以便由第一核间通讯单元228将可信应用访问请求发送给可信应用管理单元226。可信应用管理单元226进行内核切换,以便将相关请求发送给相应的可信应用。可信应用212或者214在处理请求完成之后,再次通过内核切换,将执行结果返回给可信应用管理单元226,并随后返回给第一核间通讯单元228。第一核间通讯单元228随后将该执行结果发送给协处理器300中的第一核间通讯单元320,以便由第一核间通讯单元320返回给协处理应用310,这样协处理应用310可以基于所接收到的可信应用返回结果来执行相关的功能。
根据一种实施方式,第一核间通讯单元320和第一核间通讯单元228之间可以采用消息令牌的方式进行数据通讯。第一核间通讯单元320在收到协处理应用310的可信应用访问请求时,基于该请求的内容构造请求消息令牌。请求消息令牌包括消息标识(ID),消息数据和消息验证码。第一核间通讯单元320将所构造的请求消息令牌发送给第一核间通讯单元228。
第一核间通讯单元228在接收到请求消息令牌之后,根据消息验证码来验证消息完整性,在验证成功之后,提取消息ID和消息数据,并将所提取的消息ID和消息数据发送给可信应用管理单元226。可信应用管理单元226将消息ID和消息数据写入到可信内核210的运行状态下可以访问的存储空间中。在进行内核切换之后,可信操作系统230调用相应的可信应用212或者214,从非可信内核220的存储空间中获取消息数据执行相关联的可信应用功能,并且将响应数据同样写入到非可信内核220的存储空间中,并进行内核切换以返回到非可信内核的运行状态。可信应用管理单元226从相应的存储空间读取响应数据并将该响应数据返回给第一核间通讯单元228。第一核间通讯单元228基于响应数据来构造响应消息令牌。消息响应令牌包括消息标记,响应数据和消息验证码。随后第一核间通讯单元228将所构造的响应消息令牌返回给第一核间通讯单元320。
第一核间通讯单元320接收到响应消息令牌之后,同样根据消息验证码进行消息完整性验证,并且在验证通过之后,提取令牌中的响应数据,并将响应数据返回给协处理应用310,从而协处理应用310可以继续执行相应的协处理。
虽然上面给出了在第一核间通讯单元228和第一核间通讯单元320中进行数据完整性验证的示例,但是本发明不受限于此,根据实践要求,可以在协处理应用310和可信内核代理单元226中分别构造消息令牌和进行消息完整性验证。另外还可以分别在各个部件中再次进行消息完整性验证。所有这样的布置方式,只要是在进行后续数据处理之前对数据完整性事先进行了验证,则都在本发明的保护范围之内。甚至在可选的实施方式中,只有先与第一核间通讯单元228进行通讯之后,才可以经由第一核间通讯单元228来与可信应用管理单元226进行通讯并进而访问可信应用212和214,
如图2所示,除了第一核间通讯单元228和可信内核代理单元226之外,而非可信内核220还具有第二核间通讯单元229以及非可信应用222和224。非可信应用222和224可以例如为各种物联网设备的具体应用。例如非可信应用222可以是用于感测外部烟雾的烟感传感器应用或者用于感测外部温度的温度传感器应用等。
第二核间通讯单元229可以将非可信应用222或者224的核间通讯请求发给协处理器300。具体而言,第二核间通讯单元229接收非可信应用222或者224调用协处理应用310的请求,并将该请求转发给协处理器300。同样地,第二核间通讯单元229可以将协处理器330的请求处理结果转发给作为请求发起方的非可信应用222或者224。
协处理器器300也包括对应的第二核间通讯单元330。第二核间通讯单元330接收来着应用处理器200的调用协处理应用310功能的请求,并将该请求转发给相应的协处理应用310。同样地,第二核间通讯单元330接收协处理应用310的处理结果,并将相关结果转发给应用服务器200的请求发起方。
这样,通过第二核间通讯单元229和330之间的通讯,在非可信内核220和协处理器300之间建立另一条通讯道路。
具体而言,非可信内核220中的非可信应用222或者224需要调用协处理器300中的协处理应用310的功能时,可以将相关请求和数据发送给第二核间通讯单元229,经由第二核间通讯单元229和330之间的通讯通道,发送到第二核间通讯单元330,并由第二核间通讯单元330转发给相应的协处理应用310进行处理。协处理应用处理完成之后返回的数据经由第二核间通讯单元330和第二核间通讯单元229返回给发起请求的非可信应用222或者224,从而完成相关请求处理。
虽然在图2中示出了由第一核间通讯单元228和320构造的第一条通讯道路,以及在第二核间通讯单元229和330之间构造的第二条通讯道路,但是应当理解的是,上述两条通讯道路仅仅是示意性的。根据一种实施方式,在协处理器300和非可信内核200上的核间通讯单元都可以合并为一个核间通讯单元,这同样可以实现本发明的目的。
在图2所示的数据处理设备400构造了安全的核间通讯方式。非可信级别的核间通讯和需要调用可信应用的核间通讯通过两种不同的通讯方式来完成,从而可以提升数据处理设备400的安全性。
图3示出了根据本发明另一个实施例的数据处理设备400的具体应用场景的示意图。图3示出了参考图2所描述的数据处理设备400的一种具体应用。图3所示的数据处理设备400例如为IoT物联网设备,其中将SIM卡相关的功能以软件形式嵌入到应用处理器的可信内核中,并利用协处理器来实现网络通信。
如图3所示,可信应用212具体为SIM卡应用,用于软件方式来实现SIM卡的功能,并且集成到可信操作系统230中。非可信应用222具体为烟气传感器应用,测量在数据处理设备400周围的烟气成分。协处理应用310具体为调制解调器(Modem)网络管理应用,为数据处理设备400提供网络通信服务。
当应用处理器100处于非可信内核220的运行状态下时,烟气传感器应用222需要将检测到的数据经由互联网络发送给网络上的服务器,因此应用222将数据传输请求发送给第二核间通讯单元229。第二核间通讯单元229和协处理器300上的第二核间通讯单元330建立通讯并转发该数据传输请求。第二核间通讯单元330将该数据传输请求转发给Modem网络管理应用310。
Modem网络管理应用310在发起网络通信之前,需要获取SIM卡的数据,因此,网络管理应用310将调用SIM卡数据的请求发送给第一核间通讯单元320。第一核间通讯单元320基于该请求构造请求消息令牌,并将该请求消息令牌转发给非可信内核220中的第一核间通讯单元228。第一核间通讯单元228在进行消息完整性验证之后,提取请求消息令牌中的请求数据,并将所提取的数据发送给可信应用管理单元226。可信应用管理单元226将数据存储到非可信内核的预定存储位置处,并利用应用管理器100提供的内核切换方式请求进行内核切换,以便让应用管理器100切换到可信内核210的运行状态下。可信操作系统400从非可信内核的预定存储位置获取请求数据,并根据请求数据的内容来调用SIM卡应用212,以便利用SIM卡应用212获取相应的SIM卡数据,并写入到非可信内核的预定存储位置。随后再次进行内核切换,以让应用管理器100切换到非可信内核220的运行状态下。可信应用管理单元226从预定存储位置获取响应数据返回给第一核间通讯单元228。第一核间通讯单元228基于返回的数据构造响应消息令牌,并将所构造的响应消息令牌返回给协处理器300中的第一核间通讯单元320。第一核间通讯单元320在对消息令牌进行验证之后,提取响应消息令牌中的SIM卡数据并返回给Modem网络管理应用310。
Modem网络管理应用310根据所获取的SIM卡数据建立网络通信,经由所建立的网络通信进行数据传输,并将所获得的网络响应数据转发给第二核间通讯单元330。第二核间通讯单元330将网络响应数据转发给非可信内核220中的第二核间通讯单元228。第二核间通讯单元228随后将响应数据转发给烟气传感器应用222,从而完成数据传输过程。
图3所示的具体实施例提供了如何在根据本发明的数据处理设备中进行数据通信的具体示例。如图3所示,非可信应用与协处理应用之间的通讯以及协处理应用调用作为可信应用的SIM卡功能的通讯利用不同的通讯方式来完成,这样可以将SIM卡应用作为一种可信应用软实现放置在可信操作系统中,不仅安全可靠,还显著减少了物理SIM卡和卡槽的成本。
应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
Claims (13)
1.一种应用处理器,包括:
可信内核,所述可信内核包括可信应用;以及
非可信内核,所述非可信内核包括可信应用管理单元,所述可信应用管理单元适于在接收到可信应用访问请求时,将与所述可信应用访问请求相对应的消息内容存储到非可信内核的预定空间中,并进行内核切换以切换到可信内核中,所述可信内核适于从所述非可信内核的预定空间中获取所述消息内容,调用相应的可信应用处理所述消息内容来获取响应数据,将所述响应数据写入到所述非可信内核的预定空间中,并进行内核切换以切换到非可信内核中,以便所述可信应用管理单元从所述预定空间中获取响应数据。
2.如权利要求1所述的应用处理器,其中在所述可信内核上运行有可信操作系统,所述可信应用在所述可信操作系统中运行;以及
在所述非可信内核上运行有富执行环境操作系统,所述可信应用管理单元在所述富执行环境操作系统中运行。
3.如权利要求1-2中任一个所述的应用处理器,其中所述非可信内核还包括第一核间通讯单元,所述第一核间通讯单元适于接收外部的可信应用访问请求,并将所述访问请求发送给所述可信应用管理单元进行处理并接收响应数据,以便将所述响应数据返回给访问请求方。
4.如权利要求3所述的应用处理器,其中所述可信应用访问请求包括请求消息令牌,所述请求消息令牌包括消息标识、消息数据和消息验证码;
所述第一核间通讯单元适于从所述请求消息令牌中提取消息标识和消息数据,并将所提取的消息标识和消息数据发送给所述可信应用管理单元;以及
所述第一核间通讯单元还适于基于所述响应数据构造响应消息令牌,并将所述响应消息令牌返回给访问请求方,所述响应消息令牌包括消息标记、所述响应数据和消息验证码。
5.如权利要求1-2中任一个所述的应用处理器,其中所述可信应用包括 SIM 卡应用,适于获取SIM卡数据。
6.如权利要求1-2中任一个所述的应用处理器,其中所述非可信内核还包括非可信应用和第二核间通讯单元,所述非可信应用适于经由所述第二核间通讯单元与耦接到所述应用处理器的协处理器上的协处理应用进行通讯。
7.如权利要求6所述的应用处理器,其中所述协处理应用包括调制解调器管理应用,所述非可信应用适于经由所述调制解调器管理应用来进行网络通信。
8.一种协处理器,包括:
协处理应用;以及
第一核间通讯单元,所述第一核间通讯单元适于接收所述协处理应用的可信应用访问请求,和如权利要求1-7中任一个所述的、耦接到所述协处理器的应用处理器进行通讯,以便经由所述应用处理器中的可信应用管理单元来访问所述应用处理器的可信内核中的可信应用。
9.如权利要求8所述的协处理器,还包括:
第二核间通讯单元,所述第二核间通讯单元适于与所述应用处理器的非可信内核中的非可信应用进行通讯,以便所述非可信应用经由所述第二核间通讯单元与所述协处理应用进行通讯。
10.如权利要求9所述的协处理器,其中所述协处理应用包括调制解调器管理应用,适于进行网络通信;
所述调制解调器管理应用适于经由所述第一核间通讯单元从所述应用处理器的可信内核中的 SIM 卡应用中获取 SIM 卡数据,并利用所获取的 SIM 卡数据进行网络通信。
11.如权利要求10所述的协处理器,其中所述调制解调器管理应用适于经由所述第二核间通讯单元为所述应用处理器的非可信应用提供网络通信服务。
12.一种数据处理设备,包括:
如权利要求1-7中任一个所述的应用处理器;以及
如权利要求8-11中任一个所述的协处理器,耦接到所述应用处理器。
13.如权利要求12所述的数据处理设备,其中所述应用处理器的第一核间通讯单元和所述协处理器的第一核间通讯单元进行核间通讯;以及
所述应用处理器的第二核间通讯单元与所述协处理器的第二核间通讯单元进行核间通讯。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811637071.7A CN111382442B (zh) | 2018-12-29 | 2018-12-29 | 一种应用处理器、协处理器及数据处理设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811637071.7A CN111382442B (zh) | 2018-12-29 | 2018-12-29 | 一种应用处理器、协处理器及数据处理设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111382442A CN111382442A (zh) | 2020-07-07 |
CN111382442B true CN111382442B (zh) | 2023-04-07 |
Family
ID=71221004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811637071.7A Active CN111382442B (zh) | 2018-12-29 | 2018-12-29 | 一种应用处理器、协处理器及数据处理设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111382442B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9183606B1 (en) * | 2013-07-10 | 2015-11-10 | Sprint Communications Company L.P. | Trusted processing location within a graphics processing unit |
CN106778365A (zh) * | 2016-12-01 | 2017-05-31 | 杭州中天微系统有限公司 | 实现延时压栈的装置及处理器 |
CN107273765A (zh) * | 2017-05-12 | 2017-10-20 | 杭州中天微系统有限公司 | 基于双虚拟内核机制的处理器 |
CN109063516A (zh) * | 2018-07-27 | 2018-12-21 | 杭州中天微系统有限公司 | 数据处理器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10824745B2 (en) * | 2017-04-19 | 2020-11-03 | Servicenow, Inc. | System for accessing a kernel space of an operating system with access control functionality |
-
2018
- 2018-12-29 CN CN201811637071.7A patent/CN111382442B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9183606B1 (en) * | 2013-07-10 | 2015-11-10 | Sprint Communications Company L.P. | Trusted processing location within a graphics processing unit |
CN106778365A (zh) * | 2016-12-01 | 2017-05-31 | 杭州中天微系统有限公司 | 实现延时压栈的装置及处理器 |
CN107273765A (zh) * | 2017-05-12 | 2017-10-20 | 杭州中天微系统有限公司 | 基于双虚拟内核机制的处理器 |
CN109063516A (zh) * | 2018-07-27 | 2018-12-21 | 杭州中天微系统有限公司 | 数据处理器 |
Also Published As
Publication number | Publication date |
---|---|
CN111382442A (zh) | 2020-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110414235B (zh) | 一种基于ARM TrustZone的主动免疫的双体系结构系统 | |
US11443034B2 (en) | Trust zone-based operating system and method | |
KR102255767B1 (ko) | 가상 머신 감사를 위한 시스템 및 방법들 | |
US9087188B2 (en) | Providing authenticated anti-virus agents a direct access to scan memory | |
US10255088B2 (en) | Modification of write-protected memory using code patching | |
US9740887B2 (en) | Methods and systems to restrict usage of a DMA channel | |
US10068068B2 (en) | Trusted timer service | |
CN112417470B (zh) | 实现gpu数据安全访问的方法、装置、电子设备及存储介质 | |
MX2010014464A (es) | Sistema y metodo para el manejo seguro de memoria. | |
CN114064302B (zh) | 一种进程间通信的方法及装置 | |
US10089247B2 (en) | System and method for coupling a host device to secure and non-secure devices | |
CN112818327A (zh) | 基于TrustZone的用户级代码和数据安全可信保护方法及装置 | |
CN111382441B (zh) | 一种应用处理器、协处理器及数据处理设备 | |
CN111382442B (zh) | 一种应用处理器、协处理器及数据处理设备 | |
EP3646216B1 (en) | Methods and devices for executing trusted applications on processor with support for protected execution environments | |
CN116881987A (zh) | Pcie设备直通虚拟机的方法、装置及相关设备 | |
CN111382107B (zh) | 一种应用处理器、协处理器及数据处理设备 | |
CN111382111B (zh) | 一种应用处理器、协处理器及数据处理设备 | |
CN116257368A (zh) | 一种计算机系统中的通信方法及相关产品 | |
Dai et al. | OPTZ: A hardware isolation architecture of multi-tasks based on TrustZone support | |
US10275367B2 (en) | Command source verification | |
EP3314516B1 (en) | System management mode privilege architecture | |
WO2023045744A1 (zh) | 加固方法、注册方法、运行方法、电子设备和存储介质 | |
CN112580023B (zh) | 影子栈管理方法及装置、介质、设备 | |
EP4231159A1 (en) | Method for switching execution environment and related device |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |