11. 安全性和TrustZone
本章目录
-
什么是TrustZone,它有什么作用?
-
安全环境和非安全环境的划分
-
器件生命周期管理
-
TrustZone用例
11.4 TrustZone用例
现在我们已经了解了什么是TrustZone、它是如何帮助实现数据和知识产权(IP)保护的、瑞萨实施该技术可以带来哪些好处,以及安全和非安全环境的划分情况如何,接下来介绍一些具体用例。本章的以下部分将介绍TrustZone如何协助保护IP、支持法律相关代码的隔离,以及保证信任根(RoT)的安全。
11.4.1 预烧写算法的IP保护
如果应用程序必须访问受到防篡改保护的功能算法,那么对安全算法与其余代码分别进行开发的可能性,将为客户带来巨大的利益。算法的设计人员将首先使用e2 studio中的项目和FSP配置器创建定义好应用程序编程接口(API)的安全项目,编写算法,并使用任何可用的调试接口对其进行调试。然后,如果需要,可以将其烧写到微控制器中,如有必要,还可以通过禁用已使用的闪存区块的编程或擦除功能来对其进行保护。安全项目将自动配置TrustZone。在将预烧写的器件交给应用开发人员之前,安全团队会将生命周期状态设置为非安全软件开发(NSECSD),以使调试器或闪存编程器无法读取该算法。
然后,应用程序编写人员将在e2 studio中创建一个非安全项目,编写其应用程序并使用任何调试接口对其进行调试。他们的应用程序可以顺利地调用任何安全项目的已公开API。完成后,将最终代码烧录到微控制器中,禁用所用闪存区块的编程或擦除功能,并将器件生命周期状态设置为已部署(DPL)、调试锁定(LCK_DBG)或引导锁定(LCK_BOOT)。现在,整个装置都受到保护,可以随时发给客户。
TrustZone在此提供的最大优势是其可以防止算法滥用(无论是否有意),并允许将应用程序设计划分为安全和非安全方。但是,如果安全算法中存在缺陷,需要纠正,该怎么办?在图11-9中可以看到,如果安全开发人员未禁用擦除功能,则可以通过擦除受保护的算法回到SSD状态。这可最大限度减少预烧写器件的报废率。
11.4.2 智能电表中法律相关代码的代码分离
欧洲的智能电表规范定义了法律相关代码,该代码已通过认证。该代码必须与电表的其他部分隔离。目前,大多数客户通过使用两个微控制器来进行物理隔离。这样做费用高昂,但可简化认证。
另一种方法是在使用支持TrustZone的单片机上对法律相关代码、数据和外设以及应用代码进行逻辑分隔,如用于显示的代码或DLMS/Cosem(设备语言消息规范/能源计量的配套规范)。这样一来,TrustZone将提供可验证的隔离,并防止单个器件上的代码滥用和损坏。
11.4.3 保护信任根
正如第11.1章的说明,信任根(RoT)奠定了整个产品的安全基础,因此必须得到保护。所有更高级别的安全都建立在RoT之上,RoT可提供经过身份验证的固件更新和安全通信。此外,RoT能够从更高级别的安全故障中恢复,但是,如果RoT遭到破坏,则以它为基础的任何内容都将不再安全。
这意味着所有出厂密钥、器件身份、任何校验和、闪存映像验证、加密服务、密钥和证书以及敏感数据都应保存在安全的环境中。其他所有内容,例如主应用程序、用户接口、接口协议的不安全元素、服务以及其他内容,都应放置在非安全环境中。为了尽可能减小安全环境的攻击面,应将整个应用程序中尽可能多的内容放置在非安全环境中。
本章要点:
-
TrustZone简化了安全和非安全环境的分隔。
-
Renesas的TrustZone实现确保在启动时没有安全漏洞。
-
有两个不同的项目必不可少:一个是安全项目,另一个是非安全项目。
-
非安全可调用分区允许通过保护函数调用安全区域的内容。
-
生命周期管理有助于在不同团队之间拆分开发流程。
原文标题:瑞萨RA产品家族初学者指南-第11章(4)
文章出处:【微信公众号:瑞萨MCU小百科】欢迎添加关注!文章转载请注明出处。
-
mcu
+关注
关注
146文章
17148浏览量
351186 -
瑞萨
+关注
关注
35文章
22309浏览量
86305
原文标题:瑞萨RA产品家族初学者指南-第11章(4)
文章出处:【微信号:瑞萨MCU小百科,微信公众号:瑞萨MCU小百科】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论