TEE

  • TEE是什么?

    TEE(Trusted Execution Environment)可信执行环境,是相对于目前常规操作系统REE(Rich Execution Environment)而言。REE一般被称为normal world,TEE则被称为secure world。TEE和REE各自运行独立的操作系统,共享硬件但又相互隔离。

    arm公司基于TEE标准提出了TrustZone的虚拟技术及其硬件实现方案。作为支持TEE的产品。

    TrustZone在概念上将SoC的硬件和软件资源划分为安全(Secure World)和非安全(Normal World)两个世界,所有需要保密的操作在安全世界执行(如指纹识别、密码处理、数据加解密、安全认证等),其余操作在非安全世界执行(如用户操作系统、各种应用程序等),安全世界和非安全世界通过一个名为Monitor Mode的模式进行转换。

 

  • TEE当前标准

    GlobalPlatform(GP)从2011年开始指定TEE相关规范和标准,如今大多数TEE都基于GP标准。TEE内部的操作系统一般只有10K~10M的大小,分为TEE kenrel,TA(Trust Application)。TEE与REE运行环境通过名为Monitor Mode的模式进行转换。

  TEE

 TEE的一个显著特点就是隔离secure world和normal world。隔离是TEE的本质。REE只能通过特定的入口与TEE同行。

  • non-secure和 secure world 通信

    linux OS  <---->SMC ATF <----> TEE OS

  • atf和tee如何在平台运行
  1. 开机的时候,通过MPU来保护atf和tee的memory区域,使其只能在secure world访问。
  2. 在开进kernel后,会通过reserved memory方式来保护,防止被误访问。
  3. 开机的时候,将tee image(atf +tee)load到DRAM SECURE memory上面

  

posted @ 2022-03-17 19:37  老胡同学  阅读(1162)  评论(0)    收藏  举报