在瑞萨汽车级芯片中实现安全启动的信任根第2部分:如何在RH850 MCU上实现安全启动?
本文是由三部分组成的系列文章的第2部分(第一篇请参考:【经验】在汽车级芯片RH850和R-Car中实现安全启动的信任根第1部分:安全启动的概念及重要性),旨在让读者基本了解什么是安全启动以及为什么需要安全启动。
RH850 MCU 上有两种类型的安全 IP,ICU-S 和 ICU-M。 在这篇博文中,RENESAS将介绍如何在两种类型的设备上实现安全启动。CU-S 和 ICU-M 中的安全启动可以基于 HIS(现在是AUTOSAR)安全硬件扩展 (SHE) 规范来实现。 如果您想了解有关 SHE 规范的更多信息,请参阅 AUTOSAR SHE(URL: Specification of Secure Hardware Extensions (autosar.org))。 每个人都可以从 AUTOSAR SHE 站点获取 SHE 规范。
RH850上使用ICU-S的安全启动实现方法
ICU-S 是相当于 EVITA light 的智能密码单元,安全软件在 ICU-S MCU 中的主处理器元件 (MainPE) 上运行。 MainPE 可以通过ICUS 的特殊功能寄存器接口,使用ICU-S 模块中的硬件资源,如密码加速器和安全密钥存储等。
ICU-S 没有专用的仅用于安全的 CPU。 安全启动从非安全 CPU (PE1) 运行。 为防止篡改,初始安全启动逻辑存储在一次性程序 (OTP) 存储器中。 重置向量必须指向这个不可变的代码以防止篡改。 与 OTP 一起,ICUS设备上的安全启动还使用安全启动MAC密钥和安全启动MAC插槽——都是在ICUS内部受保护存储的。 在此策略中,OTP 内存和 ICUS 创建了信任根。
方法总结:
硬件信任根:
●OTP 闪存和 ICUS 中受保护的密钥存储
防篡改:
●MAC 和 MAC 密钥安全地存储在受保护的 ICUS 内存中
密码算法:
●CMAC(NIST SP 800-38B)
在 RH850 上使用 ICUS 的分阶段安全启动示例:
1.MCU 复位后,CPU(PE1) 启动并运行位于 OTP 内存中的安全启动程序。
2.安全启动程序验证用户程序 A。
●安全启动程序根据用户程序 A 和启动 MAC 密钥计算 CMAC 值。
●安全启动程序验证计算结果和“程序 A 的 CMAC 值”(注 1)。
3.如果步骤2中的验证通过,PE1运行用户程序A并在ICU-S的帮助下验证用户程序B。
●与步骤 2 相同(程序 A -> 程序 B)。
4.如果步骤 3 中的验证通过,则 PE1 执行用户程序(程序 B)。
注1:“程序A的CMAC值”可以在ICU-S管理的Secure Data Flash上注册
RH850上使用ICU-M的安全启动实现方法
ICU-M 是满足 EVITA 中等用例的瑞萨智能密码单元。采用 ICU-M 的 MCU 有一个单独的 ICU-M 处理器,称为智能密码单元处理器 (ICUP)。 安全软件完全在 ICUP 上运行。 ICUP 拥有对 ICU-M 中硬件资源的独占访问权,例如加密加速器和安全闪存。 此外,ICUP 可以访问一些共享资源以与主处理器元件 (MainPE) 进行通信。
在 MainPE 上运行的应用软件不能直接访问 ICU-M 中的资源,例如密码加速器和安全闪存。 因此,MainPE 必须通过定义的通信接口向 ICUP 请求安全服务。 该接口由ICUM 固件设计定义。 具有ICUM 功能的MCU 支持通过共享内存邮箱以及处理器间中断进行处理器间通信。
在带有 ICUM 的设备上,安全启动从安全 ICUP 运行。 初始安全启动逻辑存储在仅 ICU-M 可访问的安全代码存储中。 安全启动实施使用存储在受保护的 ICUM 数据闪存中的安全启动密钥来验证应用程序。 安全启动密钥和 ICUM 构成了硬件“信任根”。 复位后,ICUP 将首先启动并执行应用软件的安全启动。 验证后,ICUP 将 MCU 中的其他处理器元件从复位状态释放并开始运行。 如前所述,ICU-M 中的硬件资源,例如加密加速器和安全闪存,由 ICUP 独占访问。
方法总结:
硬件信任根:
●ICU-M 硬件。 和安全代码闪存上的安全启动程序。 (攻击者无法更改受 ICU-M 硬件保护的安全启动程序)
防篡改:
●引导 MAC 存储在受保护的数据闪存中,只能由 ICUM 访问。
密码算法:
●CMAC
●RSA数字签名算法
在 RH850 MCU 中使用 ICUM 的分阶段安全启动示例(对称算法)
1.ICUP 被配置为 MCU 复位后的启动处理器。
2.用户程序 A 由 ICU-M 中的安全启动程序验证。
●安全启动程序根据用户程序 A 和启动 MAC 密钥计算 CMAC 值。
●安全启动程序验证计算结果和“程序 A 的 CAMC 值”。
3.如果步骤 2 中的验证通过,则 CPU(PE1) 由 ICUM(安全软件)启动
4.PE1 运行用户程序 A 并验证用户程序 B 以使用安全软件。
●与步骤 2 相同(程序 A -> 程序 B)。
5.如果步骤 4 验证通过,则用户程序 B 由 PE1 操作。
在 RH850 MCU 中使用 ICUM 的分阶段安全启动示例(非对称算法)
1.ICUP 被配置为 MCU 复位后的启动处理器。
2.用户程序 A 由 ICU-M 中的安全启动程序验证。
●安全启动程序计算来自用户程序 A 的消息摘要(哈希)。
●安全启动程序根据程序 A 的签名和公钥计算消息摘要。
●安全启动程序验证两个消息摘要。
3.如果步骤 2 中的验证通过,则 CPU(PE1) 由 ICUM(安全软件)启动
4.PE1 运行用户程序 A 并验证用户程序 B 以使用安全软件。
●与步骤 2 相同(程序 A -> 程序 B)。
5.如果步骤 4 中的验证通过,则用户程序 B 由 PE1 操作。
结论
1. ICU-S 和 ICU-M 可以制作“信任根”和“信任链”。
2. ICU-S 和 ICU-M 中的安全启动可以基于 AUTOSAR (SHE) HIS 实现。
3. ICU-M 中的安全启动可以基于签名验证来实现。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由扶摇翻译自Renesas,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
瑞萨公开下一代车用SoC和MCU处理器产品路线图,全新R-Car MCU系列扩展其车辆控制产品阵容
瑞萨电子公开了针对汽车领域所有主要应用的下一代片上系统(SoC)和微控制器(MCU)计划。未来产品阵容包括采用先进小芯片封装(Chiplet)集成技术的R-Car SoC和基于Arm®核的车用MCU。
瑞萨RX系列MCU实现二级MCU OTA升级:FreeRTOS篇
基于空中下载技术(OTA:Over-The-Air)并通过云服务端实现的MCU固件升级得益于云供应商和设备供应商之间的合作开展,目前已具备了简单且可快速部署的集成环境。瑞萨RX云互联解决方案开发团队开始提供即便在未直接与互联网连接的二级MCU中,也可以利用AWS IoT服务方案进行OTA固件升级的示例代码。
瑞萨与野火电子达成MCU生态战略合作伙伴关系,为本土用户提供瑞萨MCU全方位的生态服务
日前,知名开源硬件供应商野火电子正式成为全球半导体解决方案供应商瑞萨电子(Renesas)MCU生态战略合作伙伴,双方将携手合作为本土用户提供瑞萨MCU全方位的生态服务,让本土用户更轻松、容易使用瑞萨MCU,加速产品开发和上市。
【经验】一文认识瑞萨RH850 MCU的RAM空间
Renesas(瑞萨电子)汽车大集成MCU RH850系列,集车身,底盘,发动机功能资源为一体,采用40nm工艺,符合ISO26262 ASIL-B~ASIL D的功能安全标准,支持HSM加密模块。本文主要介绍RH850系列MCU的 ram空间。
【经验】一文让你了解DSP与MCU区别
世强代理有Silicon Labs EFM8/EFM32系列8位MCU/32位MCU,Renesas 汽车级MCU RL78 系列,RH850、V850系列,工业级MCU RX系列等。世强有代理进芯电子32位浮点DSP,32位定点DSP,16位DSP,国内唯一可批量供货的32位工业控制DSP供应商。
【经验】CS+开发瑞萨MCU RH850的ADC+DMA调试指引
Renesas的RH850 F1K是汽车车身控制的首选MCU,由于高性能和安全性得到汽车客户认可,但由于开发资料有限,导致许多客户开发比较头痛。近期有客户在使用DMA的开发中遇到了问题,下面结合F1K的开发板实现ADC+DMA的驱动设计。
【经验】瑞萨MCU RH850/U2A8的GHS调试链接配置方式
由于在开发RH850系列的MCU时,GHS对应链接文件都有所不同,为了方便客户的开发应用特意总结了一下RH850/U2A8的一些配置选型界面参数。
RA系列MCU注入电流,防止损坏MCU应用笔记
描述- 本资料介绍了如何防止RA系列微控制器(MCU)因异常注入电流而损坏。内容包括推荐的注入电流条件、不同型号的参数限制以及额外的说明和建议,旨在指导用户在设计和应用过程中采取适当的措施以保护MCU免受损害。
型号- RA FAMILY,RA4T1,RA6T2,RA6T1,RA6T3,RA4M1,RA2L1,RA4M3,RA6M1,RA4M2,RA6M3,RA6M2,RA6M5,RA2E1,RA6M4,RA4E1,RA2E2,RA6E1,RA2A1,RA4E2,RA6E2
【经验】瑞萨RH850 MCU芯片如何实现从BOOT跳转到APP地址中执行?
本文介绍瑞萨RH850芯片如何实现从BOOT区域跳转到APP区域。
【经验】关于瑞萨MCU RH850的option bytes配置说明
瑞萨MCU RH850比较特殊的地方,其中一点就是Option Bytes配置。Option Bytes实际上是一个扩展区域,用于保存用户上电初始化配置的参数。我们以RH850 F1L系列为例。
【经验】以RH850/F1K MCU为例,分享怎么提高CPU使用效益
某客户在做基于RH850/F1K的开发时用到了浮点运算功能,在运行浮点运算函数时发现CPU利用率比较高,响应速度比较慢,运行不正常,怀疑是MCU内部资源问题。
【经验】MCU进入休眠模式后,静态电流不满足低功耗指标的问题解析
工程师在设计产品时,实现功能很简单,但要集成系统应用保持稳定工作并保证低功耗指标,就不是一件很容易的事情了,明明MCU的电气参数电流指标为微安级别,但设计完系统进入休眠模式后,静态电流却是毫安级别,甚至于大几十毫安,高出了标准的几十上百倍。本文以Renesas瑞萨电子RL78或RH850为例,介绍分析静态电流不满足低功耗指标的步骤,找出可能导致静态电流高的原因。
【经验】RH850 MCU内置的智能加密单元ICU,保护车辆ECU系统免遭篡改或盗窃损害
瑞萨电子RH850 MCU内置的智能加密单元ICU很好的解决了这些问题,将秘钥存储在单独的存储区域中,CPU无法直接访问,需要通过专用机制来增强实际的防篡改功能,支持高端的加密操作如RSA,ECC等;可以提供防止软件操纵,连接硬件和软件,安全启动,网络节点中ECU的验证等安全服务。
【经验】如何解决MCU RH850 C1MA2多核响应INTC2共享中断的问题
最近,有客户在调试瑞萨MCU RH850 C1MA2的多核响应中断的时候,发现中断不能正常响应的问题。具体情况是这样的,根据方案设计,部分中断响应需要通过不同的内核来并发响应中断,以提高MCU执行效率。
【经验】基于MCU CS+ RH850/F1K Boot开发指引
车载ECU开发都需要通过Boot实现在线升级,Boot是嵌在APP前面执行的程序,在需要更新APP代码时会对flash APP部分重新编程。近期有客户调试RH850/F1K MCU出现Boot跳到APP程序不能执行,下面以开发板为例实现Boot到APP。
电子商城
现货市场
服务
可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。
最小起订量: 1000 提交需求>
可烧录IC封装SOP/MSOP/SSOP/TSOP/TSSOP/PLCC/QFP/QFN/MLP/MLF/BGA/CSP/SOT/DFN;IC包装Tray/Tube/Tape;IC厂商不限,交期1-3天。支持IC测试(FT/SLT),管装、托盘装、卷带装包装转换,IC打印标记加工。
最小起订量: 1pcs 提交需求>
登录 | 立即注册
提交评论