蓬莱TEE的背景介绍

TEE在连接设备中提供一个安全区域,确保敏感数据在隔离、可信的环境中存储、处理和保护 - 通过提供隔离的、安全执行的授权软件,实现端到端的安全。换句话说,TEE表示一个与SoC中其他模块隔离并能够执行可信应用程序(TAs)的区域。 蓬莱通过软硬件协同的方式来支持隔离环境的可扩展性。

为了实现软件可信的通用性,蓬莱TEE架构在安全监控器和具体的硬件原语间,设计了一层“安全原语”接口。 可信环境实例的管理逻辑将实现在这层通用的接口上,而不需要关心具体的硬件隔离和保护机制。

其总体架构如下图所示:

../../_images/pl_frame.png

蓬莱TEE总体架构

蓬莱TEE满足不同的场景需求:

1.Penglai-TVM: 基于OpenSBI,支持不可信host和enclaves的 细粒度隔离(页级别隔离)。

2.Penglai-sPMP: 它利用 PMP或者 sPMP (S-mode PMP)提供基本的enclave功能。

3.Penglai-MCU: 它目前支持全球平台和PSA,目前还没开源。

蓬莱更详细的介绍,参考如下:

1、蓬莱 TEE 的介绍:

https://www.zhihu.com/question/466393646/answer/1960960170

2、蓬莱 TEE 论文:

https://ipads.se.sjtu.edu.cn/zh/publications/FengOSDI21-preprint.pdf

3、蓬莱 TEE 文档:

https://penglai-doc.readthedocs.io/en/latest/

4、Penglai-PMP/sPMP 代码仓:

https://github.com/Penglai-Enclave/Penglai-Enclave-sPMP

5、Penglai-TVM 代码仓:

https://github.com/Penglai-Enclave/Penglai-Enclave-TVM