前言
万物互联,安全尤为重要,而设备终端是万物互联的源头,也是安全保护的源头。安全可信计算环境TEE从处理器MPU向微控制器MCU进行延伸,成为大势所趋。为此,ARM推出了Cortex-M23、Cortex-M33、Cortex-M35系列的MCU内核IP都实现了TrustZone硬件技术,进而恩智浦NXP在Cortex-M33的架构上研发推出了LPC55SXX系列。
LPC55SXX系列是具有非常完整安全硬件设计的安全微控制器SOC解决方案。在硬件安全基础之上还需要与之配套的TEE软件技术支持,豆荚基于此需求推出了可信安全产品ISEE-M安全架构。
豆荚的处理器ISEE安全架构产品在智能手机领域部署近4亿台,ISEE-M设计借鉴ISEE经验,更注重安全性、稳定性、实用性、实施性,面向客户提供易于使用的开发套件和解决方案。
系列介绍
基于恩智浦NXP为IoT安全领域推出的LPC55SXX芯片上的硬件安全设计和能力,结合豆荚科技ISEE系列TEE产品在手机等智能设备上对安全可信计算环境技术的积累和实践。为了更好的介绍ISEE-M安全构架产品,我们推出了“物联网安全可信计算环境系列”文章,此系列文章将对构建在LPC55SXX芯片上的安全可信计算环境ISEE-M产品所涉及的诸多方面进行介绍,共由以下五部分组成:
- 《 物联网安全可信计算环境系列之一:终端平台基础设计》,将对ISEE-M的整体设计架构进行介绍(本文)。
- 《 物联网安全可信计算环境系列之二:终端平台开发套件》,将对ISEE-M的开发工具环境进行简介以及开发示例演示。
- 《 物联网安全可信计算环境系列之三:系统整体方案介绍》,将对基于ISEE-M产品上构建的系统整体解决方案进行介绍。
- 《 物联网安全可信计算环境系列之四:生产线配套工具》,将对基于ISEE-M产品上生产产线安全问题的思考和解决办法进行介绍。
- 《 物联网安全可信计算环境系列之五:生命周期管理》,将对基于ISEE-M产品上研发的终端产品的维护、升级安全问题的思考和解决办法的介绍。
恩智浦的LPC55SXX芯片内建Armv8-M架构的TrustZone技术,TrustZone技术是CPU系统层次的硬件安全技术。基于LPC55SXX芯片上系统安全技术集成业界领先的豆荚ISEE-M软件安全架构,为物联设备终端提供了强大的安全保障,并完全满足等保(全称“网络安全等级保护”)2.0国家标准。适用于智能终端、智慧城市、工业物联、电力互联等对安全要求较高的产品。
ISEE-M设计架构
ISEE-M架构基于ARM@TrustZone技术实现,将整个架构划分为安全端和非安全端。安全端主要由用户层(基础安全应用模块、客户定制安全应用模块),中间层(切换通信模块、加解密模块、安全存储模块、可信驱动模块),驱动底层(随机数、HW加解密、信任根等)组成。
本系统支持GP TEE Client API,可扩展支持第三方RTOS。ISEE-M内部支持GP TEE Internal API,非常方便用户开发。为屏蔽不同芯片底层硬件差异,推出了ISEE-M HAL设计分层。安全服务包括服务隔离、安全启动、安全固件更新、防止物理攻击的密钥存储。
ISEE-M安全端与非安全端切换设计
下图是非安全端访问安全端的设计架构,Veneer Adapter是豆荚结合性能和实用设计的独有通信适配模块。
ISEE-M核心模块
- 硬件加解密模块
LPC55SXX提供AES、RSA、ECC、HASH和HMAC等密码学算法的加速引擎,内嵌设备唯一密钥(256位)和不可复制的安全存储SRAM PUF模块,用于存储最长4096位的密钥。因此在安全端可实现高速安全加解密。此对外接口提供GP标准规范。
- 安全存储模块
可支持加密文件存储,用于保存重要数据。加密数据存储安全内存区域,并且仅能在安全区域解密。安全数据仅可被安全代码访问,确保存储数据的安全性。非安全域数据则可被非安全域代码和安全代码域都可访问,实现数据的共享交互。
- 切换通讯模块
本模块主要负责非安全侧和安全侧切换。通过Veneer Entry机制实现两侧重要信息传输,数据采用共享内存机制。非安全侧通过NSC(Non-secureCallable)区域间接访问安全侧,之所以设计此区域,主要防止非法攻击。
- 信任根模块
作为建立物联网可信度的基石,NXP基于ROM的安全启动过程利用安全存储的设备密钥,创建基于硬件的不可变“信任根”(RoT)。从引导程序、系统启动直到应用软件的整个软件堆栈都将进行认证,从硬件RoT开始建立信任链。此信任根也是本架构设计的基石。
ISEE-M系统优势
- 提供等保级别安全能力
安全启动引导,安全存储硬件隔离,运行代码安全隔离,加密密钥硬随机产生,利用NXP硬件机制可使密钥不出安全硬件模块,提供安全设备ID,密钥是一机一密。确保各安全应用的可靠性、完整性和机密性。
- 提供可靠的系统稳定性
采用硬件HAL分层隔离技术,借鉴已量产上亿台ISEE系统设计理念,配合完整的测试套件,确保整个系统的运行稳定可靠。
- 提供易于客户定制服务
ISEE-M产品既提供客户自开发可信应用(TA)的SDK,也提供定制化TA服务,甚至云管端的整套解决方案。系统自带基础可信服务功能,可让开发人员专注于TA功能设计,从而降低开发技术门槛。
- 提供统一GP标准接口
GP标准接口是面向TEE制定统一接口规范,广泛应用于安全领域。大多TA采用GP接口开发,这样方便客户快速平移安全应用,提高开发效率。
- 提供高性能的灵活系统
提供NXP独有的硬件加解密支持、优化ISEE-M各基础接口及安全切换通信接口,精益于系统整体优化提高实时性需求。同时安全应用采用静态编译,最大优化镜像大小,使系统轻巧、安全、实用。
- 提供完备的产线方案
本产线方案借鉴已应用于几亿台手机的ISEE设计思路。既要满足客户对产线的高安全要求,又要考虑实际实施的便利性,推出ISEE-P产线方案。
在对ISEE-M整体架构进行介绍之后,我们还将继续推出此系列的后续文章,敬请持续关注豆荚科技公众号。