还未设置个性签名
成为VIP会员 享9项特权: 开通会员

完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>

3天内不再提示

什么是Secure Boot以及三种模式

科技绿洲 来源:立功科技 作者:立功科技 2022-06-27 17:07 次阅读

S32K3的安全启动用于确保设备仅使用受原始设备制造商(OEM)信任的软件进行启动。当设备复位后启动,HSE安全子系统将会检查软件片段的有效性,若检查有效,则设备将启动,否则将执行相应制裁。

Secure boot简介

Secure Boot是验证应用域内的一个/多个应用CPU子系统执行的一个/多个应用程序映像的完整性和真实性(多应用核和多内存段),验证策略由用户定义,包括:被验证的内容、验证方式、验证结果分析处理。

三种Secure boot模式

共有三种安全启动,如表1:

基本安全启动(BSB):通过解析APPBL头,确定APPBL代码的起始地址和大小。

高级安全启动方式(ASB):使用SMR(Secure Memory Region)和CR(Core Reset)实现的。

基于SHE的安全启动(SSB):同样是使用SMR以及CR实现,其与ASB不同的是这种安全启动模式只使用SMR#0和CR#0,是ASB的一种特殊用法。

表1 安全启动的区别

pYYBAGK5cuWAT6YIAABPDbDKhwk273.png

在介绍安全启动模式之前,给大家介绍APPBL、SMR、CR是什么?如图1所示,APPBL主要提供APP起始地址、APP内容大小、认证标签。

pYYBAGK5cvSAWrhxAAChrhDU47U098.png

图1 APPBL介绍

如图 2所示,SMR是一段安全内存区域的描述符,描述需要验证内容的起始地址、大小、验证内容的方式(MAC/SIGN)等。

pYYBAGK5cv-AKzkFAACWwBCCvJE495.png

图2 SMR介绍CR表指的是内核复位表,该表关联对应的Core与最多8个SMR关联起来,关联的SMR验证成功,HSE将释放对应的Core,使其正常运行App程序;验证失败则进行相应的制裁:禁用密钥、复位内核等。

(一) 基础安全启动模式 – BSB

如图 3所示,BSB是一种简化的启动方式,与ASB不同,不基于SMR;

① 在使能安全启动功能之前,进行相应的配置;

② 使用AES-GMAC、密钥为ADK/P,计算GMAC;

③ 把计算出来的MAC码存储在flash中,作为初始值;

④ 使能安全启动功能,并执行复位;

⑤ 复位后,进入安全启动流程,同样执行②,把计算结果和初始值对比验证;

⑥ 验证结果一致则执行APP代码,否则进入recovery模式。

poYBAGK5cwqAXMJ8AABnqCE8S9k465.png

图 3 基础安全启动模式(二) 高级安全启动模式 - ASB如图 4所示,ASB是通过SMR和CR表实现,并支持多种认证方案(MAC、Sign)来验证App映像:

① 在使能安全启动功能之前,进行相应的配置;

② 格式化NVM和RAM的密钥,并导入需要用到的对称/非对称的密钥;

③ 安装SMR和CR表:

SMR:验证内容的起始地址,大小、验证方式、验证密钥、验证tag存储位置等;

CR:关联需要验证的SMR、复位地址、制裁方式等。

④ 根据SMR配置,执行相应计算方式(MAC/Sign),把计算结果存储在对应得位置;

⑤ 使能安全启动功能,并执行复位;

⑥ 复位后,进入安全启动流程,启动流程中把计算结果和初始值对比验证;

⑦ 验证结果一致则执行APP代码,否则执行CR定义的制裁。

pYYBAGK5cyCABLWvAABRETm1r9w001.png

图 4 高级安全启动

(三) 基于SHE安全启动模式 – SSB(ASB)

如图 5所示,SSB和ASB的启动流程是很相似的,异同点如下:

① HSE固件同样通过使用SMR和CR表来进行执行SSB的启动;

② SSB是ASB的一种特殊用法,与ASB的区别:

SSB只是用SMR#0;

密钥使用的是SHE BOOT_MAC_KEY;

校验方式是CMAC。

poYBAGK5cyyAelurAABT5np5DIc478.png

图 5 基于SHE安全启动模式

以上内容讲解了S32K3 SecureBoot的全部内容,主要介绍了什么是Secure Boot以及三种模式,也便于后续大家需要用到S32K3的安全启动,奠定一定的基础。

审核编辑:彭静
  • cpu
    cpu
    +关注

    关注

    68

    文章

    7043

    浏览量

    196285
  • 软件
    +关注

    关注

    40

    文章

    3134

    浏览量

    79192
  • APP
    APP
    +关注

    关注

    31

    文章

    1368

    浏览量

    68424
  • 应用程序
    +关注

    关注

    24

    文章

    2321

    浏览量

    53646
收藏 人收藏

    评论

    相关推荐

    内存的基本概念以及操作系统的内存管理算法

    本文主要介绍内存的基本概念以及操作系统的内存管理算法。
    的头像 MCU开发加油站 发表于 08-18 15:52 63次 阅读

    Keil软件的开发应用流程分享

    代码没有错误,就可以单步或连续模拟运行调试、观察运行结果。Keil C51内建了一个仿真CPU来模拟....
    的头像 冬至配饺子 发表于 08-18 14:35 179次 阅读
    Keil软件的开发应用流程分享

    飞腾荣获 “2022年度中国优秀技术支持团队”

    8月17日,由全球电子技术领域领先的媒体集团 ASPENCORE 举办的 “2022年度中国 IC ....
    的头像 Phytium飞腾 发表于 08-18 14:23 109次 阅读

    中科曙光将结合自身战略布局助力雄安数字城市建设

    8月16日,曙光信息产业股份有限公司总裁历军一行到雄安新区调研考察。河北省委常委、副省长,雄安新区党....
    的头像 中科曙光 发表于 08-18 14:07 414次 阅读

    数据中心将进入完全可编程时代

    GPU(默认为GPGPU),一方面其数以千计的引擎可编程能力不错,可以覆盖非常多的领域。也因为CUD....
    的头像 倩倩 发表于 08-18 11:00 123次 阅读

    什么是数据治理软件

    数据治理软件,有时也称为数据管理软件,是一套工具,可帮助组织管理和改进数据质量、法规遵从性、使用率、....
    的头像 lhl545545 发表于 08-18 10:56 99次 阅读

    芯来科技打造基于RISC-V的创新发展新方向

    此次融资前,芯来科技不断推动RISC-V CPU IP的国产化应用落地进程,全系列产品已经成熟稳定地....
    的头像 芯来科技 发表于 08-18 09:48 116次 阅读

    SmartRocketScanner软件成分分析工具

    SmartRocket Scanner专注于通过软件生命周期开源安全与合规分析管理平台识别并规避相关....
    的头像 上海控安 发表于 08-18 09:41 93次 阅读

    蓝牙通信延迟较大是什么原因?

    软件上有哪些参数可以调   
    发表于 08-18 07:41 15次 阅读

    CH573F使用OTA升级,手机APP端为什么显示设备不是CH573F?

    使用方式一步骤如下: 使用“AssemblingFileTool”将3个文件合并成一个bin文件。         &n...
    发表于 08-18 06:48 15次 阅读

    浅析Linux系统中的内存管理

    内核代码和数据结构存放在一组保留的页框中,这些页框所含的页从不动态分配或者交换到内存中。
    的头像 冬至配饺子 发表于 08-17 16:27 229次 阅读
    浅析Linux系统中的内存管理

    赛灵思发现了阻碍SmartNIC普及的三大因素

    超大规模用户和 CSP 的第二个要求是可组合性。这是一种将新功能块动态插入到收发包处理流水线中的功能....
    的头像 FPGA之家 发表于 08-17 16:06 62次 阅读

    ARM的Fast Model的图形化编辑工具System Canvas与DS-5能方便的集成到一起吗

    我想咨询一下System Canvas tool问题: 1、它会快速创建一个CPU Model. 比如创建一个4 cores' CA53: (1) 它如何与第三...
    发表于 08-17 15:57 801次 阅读

    log.Fatal和panic函数的区别在哪

    调用函数假装也收到了 panic 函数,从而他们也会执行以上的操作。递归执行,直到最上层函数,如果都....
    的头像 冬至配饺子 发表于 08-17 11:01 257次 阅读
    log.Fatal和panic函数的区别在哪

    下一代内存技术

      RRAM 在短期内成为闪存继任者的障碍是每比特成本。闪存是一种非常便宜的制造技术。Yu 说,3D....
    的头像 星星科技指导员 发表于 08-17 09:42 196次 阅读

    商汤科技智能遥感技术促进地理信息产业的智能化变革

    自然资源被称为遥感百业“之首”。然而,随着遥感影像数量的快速激增,解译能力供给不足的问题愈发凸显。A....
    发表于 08-17 09:23 61次 阅读

    APP如何与CH573建立连接?

    打算做一个简单的app,需要实现手机APP与CH573的蓝牙连接与573的数据收与发。 目前使用沁恒的BLE调试助手可以验证手机下...
    发表于 08-17 06:12 63次 阅读

    容器进程调度时是该优先考虑CPU资源还是内存资源

    当然实际中 k8s 的调度策略不是这么简单的,系统默认的 kube-scheduler 调度器外还有....
    的头像 冬至配饺子 发表于 08-16 18:20 206次 阅读

    RT-Thread系统实战之在系统调试利器

    前言 得力于 msh 我们可以在 rt-thread 运行的时候执行一些内置命令,查看系统运行状态。 但是对于一个嵌入式开发工程师,有这...
    发表于 08-16 15:15 1123次 阅读

    导致微控制器中断延迟的原因

    RTOS 还需要暂时禁用可以调用 API 函数的中断。一些 RTOS 禁用所有中断,有效地恶化了所有....
    发表于 08-16 14:13 75次 阅读
    导致微控制器中断延迟的原因

    AMD Radeon RX 6650 XT显卡打造出新一代游戏视觉体验

    全新AMD Radeon RX 6600系列显卡,包括Radeon RX 6650 XT、RX 66....
    的头像 AMD中国 发表于 08-16 11:42 146次 阅读

    AVR32 MCU上的ABDAC外设音频播放设计

    ABDAC 可以连接到设备上的 DMA 控制器。在将数据从 RAM 中的缓冲区传输到 ABDAC 时....
    发表于 08-16 11:36 134次 阅读
    AVR32 MCU上的ABDAC外设音频播放设计

    Domo以与众不同的方式进行数据集成

    Domo是唯一一个结合了数据集成、实时和预测分析可视化数据、构建自身应用程序的云本机平台。
    的头像 广州虹科电子科技有限公司 发表于 08-16 10:48 47次 阅读

    通过RX MCU和CPU相结合提高电机控制效率

    RX600 内核具有符合 IEE-754 标准的单精度 32 位浮点单元。FPU 紧密连接到共享相同....
    发表于 08-16 10:41 70次 阅读
    通过RX MCU和CPU相结合提高电机控制效率

    航天宏图结合实景三维等技术优势推动乡村文化资源保护传播和发展

    在上一期的数字乡村连载中(数字乡村系列连载 | 绘绿色乡村画卷,建生态宜居家园)点击跳转查看,我们阐....
    的头像 航天宏图 发表于 08-16 10:04 96次 阅读

    8点PyTorch提速技巧总结

    CPU的话尽量看主频比较高的,缓存比较大的,核心数也是比较重要的参数。显卡尽可能选现存比较大的,这样....
    发表于 08-16 09:50 67次 阅读

    普华基础软件成为国家级专精特新“小巨人”企业

    日前,工业和信息化部公布了第四批专精特新“小巨人”企业培育名单。普华基础软件成功入选,正式成为国家级....
    的头像 普华基础软件 发表于 08-16 09:34 67次 阅读

    请问ch57x蓝牙怎么自定义广播Service数据呢?

    我在peripheral.c文件的advertData数组里添加了GAP_ADTYPE_SERVICE_DATA但是手机app搜索看不到servicedata...
    发表于 08-16 07:06 67次 阅读

    使用加速WEKA加速机器学习模型

    最后,我们使用了 HIGGS 数据集 ,其中包含有关原子加速器运动学特性的数据。希格斯数据集的前 5....
    的头像 星星科技指导员 发表于 08-15 17:27 170次 阅读
    使用加速WEKA加速机器学习模型

    简化嵌入式物联网应用程序的软件开发

      一些应用程序在开发中需要更大的灵活性来自定义设置。需要时,可以使用手动编码覆盖 GUI 工具所做....
    的头像 星星科技指导员 发表于 08-15 17:22 127次 阅读
    简化嵌入式物联网应用程序的软件开发

    MCU如何实现高效BLDC电机控制

    带传感器的 PMSM(FOC、正弦调制、三个分流电阻器):PMS(永磁同步)电机的结构类似于 BLD....
    发表于 08-15 16:12 84次 阅读
    MCU如何实现高效BLDC电机控制

    RL78/G13系列MCU中可用的低功耗模式解析

    在使功耗尽可能低的 STOP 模式下,高速系统时钟振荡器和内部高速振荡器被禁用,从而停止整个系统。3....
    发表于 08-15 15:44 78次 阅读
    RL78/G13系列MCU中可用的低功耗模式解析

    如何在基于Arm的设备上运行游戏AI呢

    在本系列的第 2 部分中,我们展示了游戏 AI 代理是如何设计的。我们还展示了为 Dr Arm 的 Boss Battle 演示生成的神经网络...
    发表于 08-15 15:43 740次 阅读

    汽车领域嵌入式微控制器 (MCU) 的解决方案

    存储器直接存储器访问控制器(MDMA)和外围直接存储器访问控制器(PDCA)控制器可以分别在存储器位....
    发表于 08-15 15:35 133次 阅读
    汽车领域嵌入式微控制器 (MCU) 的解决方案

    MicrosoftWPF功能丰富的图表控件

    通过47 个示例应用程序探索GoXam 的可能性。我们创建了许多常见的图表类型作为您的应用程序的起点....
    的头像 lhl545545 发表于 08-15 15:12 55次 阅读

    迅远F2430读写器可满足各类苛刻条件下的使用

    F2430读写器采用防水设计,防水等级可达IP67,适合苛刻的户外环境下使用。产品采用了软件容错和硬....
    的头像 lhl545545 发表于 08-15 14:48 127次 阅读

    C++语言的发展

    今年的CPP North C++大会上,谷歌宣布了一门新的编程语言Carbon,并称其将是“C++的....
    发表于 08-15 14:22 42次 阅读

    量化软件BDF的计算

    根据Kasha规则,由于高激发态之间存在快速的无辐射跃迁,分子的荧光或磷光的初始状态是最低的单重态或....
    的头像 鸿之微 发表于 08-15 14:10 57次 阅读

    基于Arria 10 SoC的控制模块设计和开发注意事项

      具有硬化浮点 DSP 模块的 FPGA 在中端 Arria 10 构建模块中提供 160 到 1....
    的头像 星星科技指导员 发表于 08-15 11:34 164次 阅读

    基于Arria 10 SoC的控制模块设计和开发事项

      各种考虑因素在设计过程中发挥了特殊作用:指定 FPGA 的 I/O 接口、识别不同的时钟域、定义....
    发表于 08-15 11:23 37次 阅读

    OB FC FB块如何使用

    在学习和使用博途软件时常常使用到OB FC FB块那么这样块如何使用,今天就给大家带来FC块的使用,....
    的头像 工控论坛 发表于 08-15 10:44 112次 阅读

    RTOS调试中的优先级倒置

      通常,尽可能避免阻塞共享资源。例如,如果您的任务将数据写入消息队列(可能已满),您可以改为使用足....
    发表于 08-15 10:43 19次 阅读
    RTOS调试中的优先级倒置

    CubeMX的基础使用方法

    CubeMX的基础使用方法,可以参看我之前发的一个视频:STM32打印数据到串口助手。
    的头像 STM32嵌入式开发 发表于 08-15 10:35 224次 阅读

    FPGA的上电过程介绍

    目前,大多数FPGA芯片是基于 SRAM 的结构的, 而 SRAM 单元中的数据掉电就会丢失,因此系....
    发表于 08-15 09:13 121次 阅读

    CXL 3.0面世,服务器开放互联标准之争落下帷幕

    电子发烧友网报道(文/周凯扬)从这几年发布的服务器硬件来看,无论是CPU、GPU还是新兴的DPU,大....
    的头像 E4Life 发表于 08-15 07:26 890次 阅读
    CXL 3.0面世,服务器开放互联标准之争落下帷幕

    ch573 boot跳转app失败怎么解决?

    #define jumpApp (( void (*) ( void )) ((int*)0x4000)) int main() { SetSysClock( CLK_SOURCE_PLL_60MH...
    发表于 08-15 07:14 31次 阅读

    海光信息成功登陆科创板 收入增速高达247.60%

    海光信息原募资91.48亿元,实际募资却超108亿元,用于新一代海光通用处理器、协处理器研发项目等。
    的头像 电子发烧友网 发表于 08-14 14:53 298次 阅读

    Linux环境下的应急响应流程

    Linux环境下处理应急响应事件往往会更加的棘手,因为相比于Windows,Linux没有像Auto....
    发表于 08-14 11:45 43次 阅读

    单片机加密的方法

    为了防止大家的程序不被剽窃,本文给大家分享单片机加密的方法。攻防不分家,关于单片机程序破解,请移步此....
    的头像 lhl545545 发表于 08-14 10:24 79次 阅读

    为什么软件定制项目失败的概率高达80%?

    软件定制项目存在失败的可能,但是很多人都不知道,失败的概率高达80%以上,主要问题有:沟通不充分,预....
    的头像 张杰一 发表于 08-12 22:28 36次 阅读

    从ISA到PCI到PCI Express的可堆叠PC

      ISA 总线早已从台式 PC 中消失,但在嵌入式系统中仍然非常需要。许多联盟成员和组件供应商继续....
    的头像 星星科技指导员 发表于 08-12 10:16 64次 阅读
    从ISA到PCI到PCI Express的可堆叠PC

    瑞萨RL78/F24的12V电机控制解决方案可减轻CPU矢量运算处理负载

    瑞萨将于2022年10月发布RL78/F24 BLDC-RSSK(RL78/F24的12V电机控制瑞....
    的头像 瑞萨电子 发表于 08-12 09:22 270次 阅读

    使用嵌入式Linux的动态电源管理策略

      对电源管理的需求不会消失。相反,它正在成为移动设备设计中越来越重要的特征。采用强大的电源管理策略....
    发表于 08-12 09:18 47次 阅读

    ch582M开发板在OTA升级时蓝牙连接不上是什么原因呀?

    ch582M开发板,采用Peripheral例程,手机上打开CH583M OTA升级工具APP,在蓝牙连接时出现提示“该设备不是目标设备CH...
    发表于 08-12 06:31 65次 阅读

    远程服务是医疗器械制造商的最新竞争前沿

      随着 OEM 寻求新的方法来支持客户,而不仅仅是交付系统,服务越来越成为一种差异化因素,并且在 ....
    的头像 星星科技指导员 发表于 08-11 16:25 193次 阅读

    人工智能驱动、计算就绪的医疗平板电脑

    凭借安全设计理念,WMP-24K/22K/19K 还可配备 4KV 隔离 COM / LAN / U....
    的头像 星星科技指导员 发表于 08-11 16:17 456次 阅读

    如何实现和构建MCU的CPU提供超低功耗操作

    该领域的先驱是 Atmel 及其 picoPower 技术。Atmel 实施 picoPower 的....
    发表于 08-11 15:58 105次 阅读

    多线程启动停止暂停继续

    单核CPU上所谓的”多线程”那是假的多线程,同一时间处理器只会处理一段逻辑,只不过线程之间切换得比较....
    的头像 十亿少男的梦 发表于 08-11 15:47 425次 阅读
    多线程启动停止暂停继续

    分析ARM cortex-A7大小核切换的代码

    8核CPU或者是更多核的处理器,这些CPU有可能不完全对称。有的是4个A15和4个A7,或者是4个A57和4个A53,甚至像海思麒麟...
    发表于 08-11 15:36 1617次 阅读

    探讨唤醒时间作为MCU低功耗规范的重要性

    唤醒时间通常是决定设计人员在应用程序的任何给定点可以使用哪种断电模式的限制因素。监控电池电压的 RX....
    发表于 08-11 15:04 40次 阅读
    探讨唤醒时间作为MCU低功耗规范的重要性

    TMS320VC5501 定点数字信号处理器

    TMS320VC5501(5501)定点数字信号处理器(DSP)基于TMS320C55x™DSP生成CPU处理器内核。 C55x™DSP架构通过增加并行性和全面关注降低功耗来实现高性能和低功耗。 CPU支持内部总线结构,该结构由一个程序总线,三个数据读总线,两个数据写总线以及专用于外设和DMA活动的附加总线组成。这些总线能够在一个周期内执行最多三次数据读取和两次数据写入。并行,DMA控制器可以独立于CPU活动执行数据传输。 C55x™CPU提供两个乘法累加(MAC)单元,每个单元能够进行17位×17位乘法运算。单循环。额外的16位ALU支持中央40位算术/逻辑单元(ALU)。 ALU的使用受指令集控制,提供优化并行活动和功耗的能力。这些资源在C55x CPU的地址单元(AU)和数据单元(DU)中进行管理。 C55x DSP代支持可变字节宽度指令集,以提高代码密度。指令单元(IU)从内部或外部存储器执行32位程序提取,并为程序单元(PU)排队指令。程序单元解码指令,将任务指向AU和DU资源,并管理完全受保护的管道。预测分支功能可避免执行条件指令时的管道刷新。 5501外设...
    发表于 10-09 14:55 544次 阅读
    TMS320VC5501 定点数字信号处理器