本博客旨在介绍可信执行环境(TEE)的概念,以及最终用户如何利用开源软件安全部署需要处理机密信息的应用程序。
可信执行环境(TEE)概述
什么是TEE?TEE的好处是什么?
TEE提供了一个隔离的环境,以确保代码/数据的完整性和机密性。
运行Linux或Android的典型嵌入式系统在内核和用户空间包中都暴露出大量安全漏洞。
漏洞可能使攻击者能够访问敏感信息和/或插入恶意软件。
TEE增加了一个额外的安全层,TEE上运行的代码/数据不能从正常世界的操作系统(如Linux/Android)访问/篡改。
在TEE(安全世界)上运行的软件通常包括一个小型的面向安全的操作系统(例如:OP-TEE OS)以及可信的应用程序。
可信应用程序旨在处理机密信息,如信用卡PIN、私钥、客户数据、受DRM保护的媒体等,并向正常世界的OS提供服务,以在不损害机密信息的情况下使用机密信息。
TEE是如何实施的?
TEE需要软件和硬件(内置于处理器中)支持。
在硬件方面,基于ARM的处理器使用TrustZone技术实现TEE。TrustZone使单个物理处理器核心能够安全高效地执行来自正常世界(如Linux/Android等丰富操作系统)和安全世界(如OP-TEE等安全操作系统)的代码。<