一种可信执行环境系统,包括运行第一TEE的第一平台、运行第二TEE的第二平台、以及合并单元。该合并单元适于将来自于第一平台的第一TEE的第一输出,与来自第二平台的第二TEE的第二输出合并,从而形成可信执行环境系统的输出。这样一来,系统的安全性得到了提高,因为即使恶意行为者能够访问“t”台机器,但除非在所有执行的TEE平台上同一时间存在多个可利用的TEE漏洞,否则该行为者仍然无法获知秘密。否则该行为者仍然无法获知秘密。否则该行为者仍然无法获知秘密。
【技术实现步骤摘要】
具有多种异构TEE实施的方法和系统
[0001]本专利技术涉及计算设备的数据安全,特别是涉及可信执行环境(TEE)的使用。
技术介绍
[0002]可信执行环境(TEE)是一种隔离的执行环境,它提供安全功能,如相互隔 离的执行、与TEE一起执行的应用程序的完整性,以及其资产的保密性。现有 的TEE通常基于硬件组件(特别是中央处理器CPU)和软件组件的组合来实现。 作为一种高层次的概述,TEE的安全功能可以通过禁止程序执行期间的调试功 能、加密执行程序使用的内存页、以及提供一种机制向另一个用户/程序远程证 明该进程确实是在TEE中运行来实现。
[0003]TEE非常有用,例如,它可以用于数字版权管理(如音乐文件的解密密钥)、 私钥管理(如签署交易的私钥)以及许多其他应用。远程用户可以与TEE分享 一些敏感数据,因为如果TEE能证明它正在运行一个特定的软件那该TEE就可 能被用户审计,因此他/她知道TEE不会泄露敏感数据。远程证明包括可执行二 进制文件的哈希值。而如果用户审计了二进制文件的源代码,那么他就知道他是 否可以信任该代码,如果他信任该代码,他就可以与TEE分享敏感数据。
[0004]然而,虽然TEE的想法听起来非常安全,但像任何其他软件应用程序或半 软件模块一样,在各种TEE实现方式中存在着漏洞。例如,虽然有些漏洞可能 是跨平台的,但至少有一些是针对特定平台的。通过利用这些漏洞,攻击者仍然 可以获得他们不应该获得的敏感信息。
技术实现思路
[0005]鉴于上述背景,本专利技术的目标是提供一种稳健的TEE系统和一种即使在存 在已知TEE漏洞的情况下也能构建安全TEE的方法。
[0006]本领域的技术人员将从以下描述中得出本专利技术要实现的其他目标。因此,上 述目标的陈述并非详尽无遗,而仅是用于说明本专利技术的许多目标中的一些。
[0007]因此,本专利技术在一个方面是一种可信执行环境系统,包括运行第一TEE的 第一平台、运行第二TEE的第二平台、以及合并单元。该合并单元适于将来自 于第一平台的第一TEE的第一输出,与来自第二平台的第二TEE的第二输出合 并,从而形成可信执行环境系统的输出。第一TEE和第二TEE分别基于不同的 实现方式。
[0008]在一个实施方式中,分别在第一平台和第二平台上运行的第一TEE和第二 TEE的应用代码是不同的。
[0009]在一个实施方式中,应用代码包括加密库或应用逻辑。
[0010]在一个实施方式中,第一TEE或第二TEE适于由用户远程证明。
[0011]在一个实施方式中,合并单元适于使用加密方法来合并第一输出和第二输 出。
[0012]在一个实施方式中,当第一TEE的漏洞或第二TEE的漏洞被修补时,相应 地第一输出或第二输出被混洗(reshuffle)。
[0013]在本专利技术的另一个方面,提供了一种生成可信执行环境系统的输出的方法, 包括以下步骤:从可信执行环境系统中的第一平台的第一TEE提供第一输出; 从可信执行环境系统中的第二平台的第二TEE提供第二输出;将第一输出和第 二输出合并,以形成可信执行环境系统的输出。
[0014]在一个实施方式中,该方法还包括在提供第一输出之前对第一TEE进行远 程证明,或在提供第二输出之前对第二TEE进行远程证明。
[0015]在一个实施方式中,该方法还包括从可信执行环境系统中的第三平台的第三 TEE提供第三输出的步骤;其中合并步骤包括合并第一输出、第二输出和第三输 出以形成可信执行环境系统的输出。
[0016]在一个实施方式中,该方法还包括以下步骤:检测第一TEE的漏洞、断开 第一TEE的连接;以及通过合并第二输出和第三输出来生成可信执行环境系统 的输出。
[0017]因此,本专利技术的实施例通过在异构的TEE平台(例如英特尔SGX和ARMTrustZone)上同时实现(几乎)相同的应用逻辑,然后使用加密方法将结果连 接在一起,来缓解可能存在于每个单一TEE实现中的TEE漏洞。因此,例如如 果在英特尔SGX上发现了一个新的漏洞,但该漏洞不适用于ARM,则整个系统 仍然是安全的,反之亦然。
[0018]即使某个漏洞适用于一个以上的平台,在多个平台上开发利用代码也会使利 用该漏洞的可能性大大降低。一般来说,通过增加在不同TEE平台上的实现方 式的数量,拥有可用于攻击系统的漏洞的机会将减少。与多因素认证(MFA) 内的每个独立因素被攻破的情况类似,使用所有三个因素的累积性使系统明显更 难被攻破,因此,系统的完整性得到维护。
[0019]除了保护免受外部黑客攻击外,根据本专利技术的实施例的异构TEE环境也使 TEE相关的补丁管理更加安全。在一个多个异构TEE的实现中,如果在其中一 个TEE平台上发现了TEE漏洞,这个平台可以简单地断开连接,但其余的TEE 平台仍然可以用来构建TEE系统的输出。而在有漏洞的TEE上有了补丁并安装 后,整个系统就可以被混洗,使得在旧的密钥即使在未打补丁期间已经被黑客攻 击时,也变得无用。这样整个系统就会像漏洞被公布前一样安全。
附图说明
[0020]本专利技术的上述和进一步的特征,将从以下对优选实施例的描述中显而易见, 这些实施例仅以举例的方式结合附图提供,其中:
[0021]图1是根据本专利技术的一个实施例的系统的高层次图示,该系统包含连接到区 块链网络的预防装置。
[0022]图2是根据本专利技术的另一个实施例的区块链入侵预防系统。
[0023]在附图中,类似的数字表示在本文所述的几个实施例中的类似部分。
具体实施方式
[0024]在本申请的权利要求书和前面的说明书“
技术实现思路
”部分中,除非上下文由 于明确的语言或必要的暗示而另有要求,否则“包括”或“包含”等词语是在包 容的意义上使用的,即指定所述特征的存在,但不排除在本专利技术的各种实施例中 存在或添加了进一步的特
征。
[0025]如本文和权利要求书中所使用的,“设备”或“组件”是指任何指令执行装 置,例如基于计算机/处理器的系统、计算设备或硬件和/或软件系统,其可以从 非暂时性存储介质或非暂时性计算机可读存储介质中获取或获得逻辑并执行其 中包含的指令。“设备”或“组件”也可以包括任何基于软件的指令执行模块, 例如软件包的子集、基于云的实用程序、服务或功能,或任何其他不与特定硬件 绑定的虚拟功能块。
[0026]现在参考图1,本专利技术的第一个实施例是TEE系统20,其包含多个异构TEE 平台,包括第一平台22a和第二平台22b,它们都连接到输入端24。本实施例中 的第一平台22a是一个支持软件防护扩展(SGX)的处 理器。如本领域技术人员所知,英特尔SGX是x86架构的扩展,允许在完全隔 离的安全区域中运行应用程序。因此,英特尔SGX作为一个TEE实现,适合在 第一平台22a上运行。另一方面,本实施方案中的第二平台22b是一个支持一个支持的处理器。如本领域技术人员所知,ARM信任区(TrustZone) 是一种基于硬件的本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种可信执行环境系统,包括第一平台,其运行第一TEE;第二平台,其运行第二TEE;和合并单元,该合并单元适于将来自于所述第一平台的所述第一TEE的第一输出,与来自所述第二平台的所述第二TEE的第二输出合并,从而形成所述可信执行环境系统的输出;其中,所述第一TEE和所述第二TEE分别基于不同的实现方式。2.根据权利要求1所述的系统,其中分别在所述第一平台和所述第二平台上运行的所述第一TEE和所述第二TEE的应用代码是不同的。3.根据权利要求2所述的系统,其中所述应用代码包括加密库或应用逻辑。4.根据权利要求1
‑
3中任意一条所述的系统,其中所述第一TEE或所述第二TEE适于由用户远程证明。5.根据权利要求1
‑
3中任意一条所述的系统,其中,所述合并单元适于使用加密方法来合并所述第一输出和所述第二输出。6.根据权利要求1
‑
3中任意一条所述的系统,其中,当所述第一T...
【专利技术属性】
技术研发人员:奇恩,
申请(专利权)人:福瑞斯技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。