TEE(可信执行环境)介绍

时间:2024-04-09 08:44:47

一、背景

    Android 平台作为一个开放的软件平台,正在越来越多的受到恶意软件的攻击,体现在用户的敏感数据被窃取、数字版权被滥用、移动支付存在重大安全隐患等等。因此,需要在 Android 平台中引入一个可信执行环境,用来进行数字版权管理(DRM : Digital Rights Management )、移动支付和敏感数据保护。

 

二、定义

    TEE 是 Trusted Execution Environment 的缩写,即 可信执行环境。通常用来进行数字版权管理(DRM : Digital Rights Management )、移动支付和敏感数据保护。
    TEE 的实现是基于 ARM TrustZone。

安全特点:

  • 受硬件机制保护:TEE隔离于REE、只能通过特定的入口与TEE通信。
  • 快速通信机制:TEE可以访问REE的内存、REE无法访问受硬件保护的TEE内存。
  • 可抵御某些基于硬件的攻击。

 

三、TEE 的应用场景

  1. 内容保护机制:对于一些高清电影、音乐等,防止被盗用。
  2. 移动金融服务:手机支付等
  3. 认证:指纹识别、面部识别等
  4. 企业或者*,机密信息的保护

 

四、其它相关概念

1. REE

    REE(Rich Execution Environment)是所有移动设备通用的环境,运行通用的 OS(Operating System),例如 Android,IOS 系统等。

安全隐患:

  • OS 代码庞大,容易出现漏洞
  • OS 可以看到 APP 内部所有数据
  • 存在大量恶意代码和高级攻击技术

2. TA

    TA 是 Trusted Application 的缩写,通常运行在 TEE 环境下的应用简称为 TA。

3. CA

    CA 是 Client Application 的缩写,通常运行在 REE 环境下的应用简称为 CA。

4. TrustZone

    基于 ARM 架构的移动平台芯片理论上都支持 TrustZone。TrustZone 是独立的一个安全的世界,基于 TrustZone 可实现 TEE。

 

五、架构图

TEE(可信执行环境)介绍

通常一个流程为:

打开 TEE 环境 > 开启一个会话 > 发送命令 > 获取信息 > 结束会话 > 关闭 TEE 环境