一种数据处理设备和方法技术

技术编号:27372296 阅读:27 留言:0更新日期:2021-02-19 13:58
本申请公开了一种数据处理设备和方法,包括:TEE板卡,用于实现可信执行环境,其中,所述TEE板卡包括第一内存与能够提供可信执行环境指令的第一中央处理器;以及主机,与TEE板卡具有信号连接,用于将至少部分数据处理操作部署到TEE板卡的可信执行环境中,以便至少部分数据处理操作在可信执行环境中执行。据处理操作在可信执行环境中执行。据处理操作在可信执行环境中执行。

【技术实现步骤摘要】
一种数据处理设备和方法


[0001]本说明书涉及计算机设备领域,特别涉及一种数据处理设备和方法。

技术介绍

[0002]可信执行环境(Trusted Execution Environment,TEE)可以是在设备内存中实现的安全区域,可以确保加载到其中的代码和数据的安全性、机密性和完整性。然而,当设备TEE的应用程序和设备其他程序共享资源(如共享中央处理器等硬件资源)会造成TEE侧信道,降低TEE的安全性。
[0003]因此,希望提供一种数据处理设备和方法,降低可信执行环境侧信道。

技术实现思路

[0004]本说明书的一个方面提供一种数据处理设备,包括:TEE板卡,用于实现可信执行环境,其中,所述TEE板卡包括第一内存与能够提供可信执行环境指令的第一中央处理器;以及主机,与TEE板卡具有信号连接,用于将至少部分数据处理操作部署到TEE板卡的可信执行环境中,以便至少部分数据处理操作在可信执行环境中执行。
[0005]本说明书的另一个方面提供一种数据处理方法,所述方法由用于实现可信执行环境的TEE板卡执行,所述TEE板卡包括第一内存与能够提供可信执行环境指令的第一中央处理器;所述方法包括:与主机通信,将来自主机的数据处理操作部署到可信执行环境中,以便所述数据处理操作在可信执行环境中执行。
[0006]本说明书的另一个方面提供一种TEE板卡,包括第一内存与能够提供可信执行环境指令的第一中央处理器,以便实现可信执行环境以及在所述可信执行环境中执行由主机部署的数据处理操作。
图说明
[0007]本说明书将以示例性实施例的方式进一步描述,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:图1是根据本说明书的一些实施例所示的数据处理设备示意图;图2是根据本说明书的一些实施例所示的示例性的板卡的示意图;图3是根据本说明书的一些实施例所示的示例性的主机的示意图;图4是根据本说明书的一些实施例所示的将数据处理操作部署到可信执行环境中的方法的示例性流程图;图5是根据本说明书的一些实施例所示的在可信执行环境中执行数据处理操作的方法的示例性流程图。
具体实施方式
[0008]为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
[0009]应当理解,本说明书中所使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
[0010]如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
[0011]本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
[0012]可信执行环境(Trusted Execution Environment,TEE)是设备中的安全区域,可以确保加载到环境中的代码和数据的安全性、机密性和完整性,从而保证具有可信执行环境的设备获取的核验结果的可信性。示例性的可信执行环境可以包括基于Software Guard Extensions (SGX)、Secure Encrypted Virtualization (SEV)或TrustZone等技术的可信执行环境。以Intel
®
公司的SGX为例,当程序在可信执行环境中执行时会受到Enclave保护,外界是无法篡改位于Enclave中的数据或影响该程序的执行过程。
[0013]然而,设备中位于TEE的应用程序和设备上其他程序共享资源时会造成TEE侧信道,降低TEE的安全性。其中,侧信道(Side Channel)是指在标准通信信道之外,泄漏信息的途径。侧信道泄露的信息即侧信息(Side Channel Information)。TEE侧信息可以反应TEE中程序的运行状态,因此,攻击者可以从TEE外部(即设备中TEE以外的区域)获取TEE侧信息来推测TEE中的机密数据和/或处理逻辑。
[0014]例如,TEE中的应用程序和设备其他程序共享软件资源,则可以从共享的页表中获取TEE中程序的内存访问地址模式,从而推测出TEE中程序的执行路径,导致可能推测出TEE中的机密数据和/或处理逻辑。又例如,TEE中的应用程序和设备其他程序共享硬件资源,如中央处理器(Central Processing Unit,CPU)和内存,则可以从共享的内存和CPU中观察CPU的高速缓存(cache)命中情况从而推断出TEE中的机密数据和/或处理逻辑。
[0015]为了减少部署在设备中的TEE存在侧信道,可以将TEE部署在设备外,实现分离式TEE。
[0016]本说明书的数据处理设备基于通用CPU部署分离式TEE,即将可信执行环境在与设备(此时可称为主机)分离的其他设备上实现,减少可信执行环境中的应用程序与主机中的应用程序共享的软硬件资源,可以在有效减少侧信道的同时,以较低的成本提供与通用CPU相仿的数据处理性能。
[0017]图1是根据本说明书的一些实施例所示的数据处理设备示意图。
[0018]如图1所示,数据处理设备100包括:TEE板卡110和主机120。
[0019]TEE板卡110是用于实现可信执行环境的印制电路板。在一些实施例中,TEE板卡110包括第一内存111与第一中央处理器112。
[0020]第一中央处理器112是TEE板卡中的数据处理的核心单元。具体地,第一中央处理器的数据处理可以包括读取指令、对指令译码和执行指令等。在一些实施例中,第一中央处理器可以为TEE提供可信执行环境指令。
[0021]可信执行环境指令是带有可信标识的第一中央处理器指令集合中的指令。例如,可信执行环境指令可以是SGX扩展指令集中的指令。在一些实施例中,可信执行环境指令基于可信标识,可以访问TEE板卡中的第一内存。
[0022]第一内存111是TEE板卡中的非持久性存储单元。在一些实施例中,第一内存可以包括但不限于:随机存取存储器(Random Access Memory,RAM)、动态随机存取存储器(Dynamic Random Access Memory,DRAM)和静态随机存取存储器(本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理设备,包括:TEE板卡,用于实现可信执行环境,其中,所述TEE板卡包括第一内存与能够提供可信执行环境指令的第一中央处理器;以及主机,与所述TEE板卡具有信号连接,用于将至少部分数据处理操作部署到所述TEE板卡的可信执行环境中,以便所述至少部分数据处理操作在可信执行环境中执行。2.如权利要求1所述的设备,所述TEE板卡还包括第一操作系统;其中,第一操作系统中的硬件驱动程序至少用于与主机通信,以及调用第一中央处理器提供的可信执行环境指令。3.如权利要求2所述的设备,所述硬件驱动程序用于响应于主机的创建请求,调用第一中央处理器提供的可信执行环境指令在所述第一内存中创建一个或多个可信执行环境,以便将来自主机的用于实现所述至少部分处理操作的应用程序加载到所述可信执行环境中,并向所述主机返回所述可信执行环境的标识。4.如权利要求3所述的设备,所述硬件驱动程序还用于响应于主机的应用程序调用请求,调用位于相应可信执行环境中的目标应用程序,使得目标应用程序在所述可信执行环境中执行并获得执行结果;所述硬件驱动程序还用于向所述主机返回所述执行结果。5.如权利要求2所述的设备,所述TEE板卡还包括第一TEE软件开发工具包;所述第一TEE软件开发工具包至少用于支持位于可信执行环境中的应用程序执行。6.如权利要求5所述的设备,所述硬件驱动程序用于接收主机的创建请求,并传输给所述第一TEE软件开发工具包;所述第一TEE软件开发工具包用于通过所述硬件驱动程序调用第一中央处理器提供的可信执行环境指令在所述第一内存中创建一个或多个可信执行环境,以便将来自主机的用于实现所述至少部分处理操作的应用程序加载到所述可信执行环境中,并通过所述硬件驱动程序向所述主机返回所述可信执行环境的标识。7.如权利要求6所述的设备,所述硬件驱动程序还用于接收主机的应用程序调用请求,并传输给所述第一TEE软件开发工具包;所述第一TEE软件开发工具包用于通过所述硬件驱动程序调用位于相应可信执行环境中的目标应用程序,使得目标应用程序在所述可信执行环境中执行并获得执行结果;在所述目标应用程序的执行过程中,所述第一TEE软件开发工具包还用于基于所述目标应用程序中的程序指令通过所述硬件驱动程序调用第一中央处理器提供的可信执行环境指令,以实现所述程序指令的功能;所述第一TEE软件开发工具包用于通过所述硬件驱动程序向所述主机返回所述执行结果。8.如权利要求4或7所述的设备,所述应用程序调用请求包括可信执行环境的标识、目标应用程序的标识以及输入参数。9.如权利要求4或7所述的设备,所述目标应用程序能够生成可信执行环境完整性证明,所述执行结果包括所述可信执行环境完整性证明。10.如权利要求1所述的设备,所述TEE板卡还包括用于存储数据的第一存储介质。11.如权利要求1所述的设备,所述主机包括第二中央处理器、第二内存、第二存储介质
以及第二操作系统;所述第二操作系统中的硬件驱动程序至少用于与所述TEE板卡通信。12.如权...

【专利技术属性】
技术研发人员:闫守孟翟征德
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1