0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

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

3天内不再提示

面向物联网应用的可信MCU

星星科技指导员 来源:嵌入式计算设计 作者:Jaya Kathuria 2022-11-30 16:42 次阅读

随着物联网技术通过联网智能设备实现的更高智能,使我们的生活更加舒适,保护这些设备存储和传输的信息变得越来越重要。嵌入式MCU是基于物联网的产品的核心,选择合适的MCU是满足客户当前和未来需求的关键。

专为物联网应用设计的MCU需要具有足够的处理能力、基于硬件的安全性和软件算法,以提供安全可靠的解决方案。安全MCU应提供多级安全元素,以支持各种安全算法,如高级加密标准(AES)、数据加密标准(DES)和安全哈希算法(SHA)。MCU需要提供完整的安全链、安全启动过程、基于硬件的信任根、硬件中的真随机数生成功能以及用户应用程序代码身份验证等功能。开发人员还需要考虑,在硬件中实现安全功能时,与等效固件实现相比,所需的时间和精力更少。本文重点介绍MCU所需的关键安全功能,以便为开发人员设计安全的物联网系统奠定坚实的基础。

安全启动

安全启动过程是安全嵌入式MCU支持的最关键元素。这是一个引导过程,可确保仅在设备上执行经过身份验证的代码。安全启动有助于防止在系统启动过程中将恶意和未经授权的代码加载到设备中。使用闪存存储固件的嵌入式MCU可以利用安全启动过程来确保未经授权的用户无法修改固件代码。安全启动通过向启动过程添加加密检查来保护系统,并且可以通过多种方式实现,包括数字签名、受信任的闪存加载程序、启动文件加密等。应用程序固件身份验证是安全启动的重要组成部分。

安全启动采用信任链方法。它以设备信任的安全根开始,例如ROM或闪存中的不可修改代码。然后,此代码对另一段代码进行身份验证。新验证的代码对任何后续代码进行身份验证,依此类推,从而创建信任链。它的工作原理很简单:你信任 A,A 信任 B,所以你信任 B。

pYYBAGOHF7-AbVSPAAD08hvA3vI816.png

[图2 |安全实施链]

为了说明如何构建信任链概念,请考虑以下序列(参见图 2),该序列用于使用 PSoC 6 BLE 实现信任链,PSoC 6 BLE 是赛普拉斯为物联网应用设计的嵌入式 MCU:

信任代码的根在ROM代码中,因此无法修改。根使用 AES-CMAC 消息身份验证对存储在监督闪存 (SFlash) 中的闪存启动代码进行身份验证。

成功通过身份验证后,控制权将传递给闪存引导代码。现在,闪存启动是安全启动过程中信任链的一部分。

Flash 启动代码使用数字签名验证存储在主闪存中的用户应用程序。

成功验证数字签名后,控制权将转移到应用程序。

安全启动使用 ROM 例程对闪存中的用户数据进行身份验证。安全启动是一个涉及加密的过程,它允许 IoT 设备开始执行经过身份验证并因此受信任的软件。这可确保系统从已知的受信任状态打开电源。安全启动流需要分两个步骤。第一步,ROM 引导通过比较存储在电子保险丝中的加密代码来计算加密值,从而对闪存引导进行身份验证。在第二步中,闪存启动使用存储在 SFLASH 中的公钥验证应用程序的数字签名。

基于硬件的安全性

对于许多物联网应用,安全性只是必须与能源效率、可靠性和低成本相平衡的一个考虑因素。在许多情况下,基于硬件的方法提供了最有效、最可靠和最具成本效益的方式来确保安全性。硬件比使用主处理器的等效软件方法消耗更少的功率。基于软件的安全性的另一个问题是,如果没有使用集成电路保护系统的基于硬件的安全性,IP可能会被盗。这只是物联网应用的MCU具有复杂的集成硬件安全功能的原因之一,例如加密模块、代码保护IP和其他基于硬件的机制。

基于硬件的安全性还消除了应用软件补丁来持续保护系统的需要。与固件实现相比,基于硬件的安全性还具有提供更快的性能和更低的功耗的额外好处。例如,图 3 中显示的物联网处理器具有一个加密模块,可提供加密功能的硬件实现和加速。要传输的数据在传输之前使用加密算法进行加密。仅允许使用处理器间调用访问此加密块,并且不允许在寄存器级别直接访问以确保安全性。此加密硬件块执行重要功能,例如:

对称密钥加密和解密

沙斯

消息身份验证代码 (MAC) 函数

真随机数和伪随机数

循环冗余校验

各种实用程序功能,如启用/禁用、中断设置、标志等

poYBAGOHF8eAJ9sjAAHUUReXGbk239.png

[图3 |具有加密硬件和安全启动的可编程 SoC 架构]

对称密钥加密和解密

创建和管理密钥是加密过程的重要组成部分。使用对称密钥时,同一密钥用于加密和解密。AES 是对称密钥加密方法的一个示例。

AES 功能包括符合 AES 标准的分组密码和反向分组密码。分组密码(AES 指令)将 128 位明文数据块加密为 128 位密文数据块。逆分组密码(AES_INV指令)将 128 位密文数据块解密为 128 位明文数据块。

安全哈希算法

哈希是一种算法,它接受任何大小的数据并将其转换为固定长度的数据。哈希和加密之间的主要区别在于哈希是不可逆的。SHA 是一系列加密哈希函数,用于保护数据安全(参见图 4)。SHA 由按位运算、模块化加法和压缩函数组成。此函数获取任意长度的消息,并在执行一系列数学定义的操作后将其减少为固定长度的残差或消息摘要,这保证了消息中的任何更改都将更改哈希值。它用于消息身份验证,方法是传输附加哈希值的消息,并在收件人端使用相同的算法重新计算消息哈希值。如果哈希不同,则消息已损坏。这些算法与数字签名算法 (DSA) 或数字签名标准 (DSS) 一起使用。

pYYBAGOHF86AOMiwAAA33M37hJ8765.png

[图4 |SHA 示例]

消息身份验证代码函数

MAC 方案使用密钥和消息(参见图 5)。收件人必须知道密钥才能计算 MAC 值。这有助于消息的接收者验证消息的发件人是否具有共享密钥,并且没有密钥的人发送或更改了消息。首先,发送方计算 MAC 值并将其附加到传输的消息中。收到消息后,将再次计算 MAC,并根据随消息传输的 MAC 值进行检查。如果它们不匹配,则接收方知道消息已被更改。哈希算法的一个示例是 SHA,它们可用于生成 MAC 值。甚至诸如AES之类的分组密码也可用于生成MAC值。MAC方法既保证了数据的完整性,也保证了真实性。

poYBAGOHF9SAXEQtAABcqiFyrhE413.png

[图5 |MAC 示例]

真随机数生成

真随机数生成 (TRNG) 是一项重要的加密函数。TRNG 块生成一个统计随机的数字,并基于一些物理随机变化,无法通过再次运行进程来复制。将其与伪随机数生成(PSRNG)进行比较,后者不是真正的随机,因为它依赖于初始种子值。如果种子可以复制,则生成的序列也可以复制。高度安全的系统将利用真随机数而不是伪随机数生成。目前,很少有MCU提供基于硬件的TRNG。在某些应用中,PSRNG 可能是首选,因此同时具有 TRNG 和 PSRNG 的 MCU 提供了最大的灵活性。

外部存储器安全

为了支持更高的智能和应用,物联网系统需要越来越多的内存。MCU供应商小心翼翼地提供最佳级别的内部存储器,因为芯片尺寸会根据存储器而增加,这也会增加成本。为了满足不断增长的内存大小需求,MCU供应商提供了从外部扩展内存的选项。这有助于物联网设计人员根据应用要求设计他们选择的内存大小。但是,这带来了保护存储在外部存储器中的敏感代码和数据并确保只能由经过身份验证的用户访问的挑战。

为了保护外部数据和代码,MCU支持具有外部存储器接口的加密功能。因此,数据可以在存储在外部存储设备中之前进行加密。同样,检索数据时也会解密数据。图6显示了一个安全MCU,其中串行存储器接口(SMIF)具有内置加密功能,可在数据写入外部存储器时保护数据。

poYBAGOHF9uATtyUAABLU3_zvZU338.png

[图6 |MCU架构中的串行存储器接口(SMIF)模块]

图 7 显示了 SMIF 就地执行 (XIP) 模式。这是加密组件支持对数据写入进行动态加密和对数据读取进行动态解密的地方。这可确保在将数据存储在外部存储设备之前加密时不会发生敏感数据泄漏。

pYYBAGOHF-OATFoCAAA4cspJ5PE178.png

[图7 |XIP 模式下的 SMIF 示例]

通信层安全性

低功耗蓝牙 (BLE) 是物联网应用中最受欢迎的无线标准之一。物联网设计人员必须确保无线链路上的数据通信是安全的。最新的BLE协议更新配备了多种安全和隐私功能,以涵盖加密,信任,数据完整性和用户数据的隐私。例如,BLE链路层提供各种加密算法,如CRC和AES,以实现可靠和安全的数据交换(见图8)。BLE无线电还必须设计为支持BLE协议提供的这些BLE安全功能。增强的加密和身份验证将仅允许受信任的用户跟踪设备位置并自信地配对设备。

poYBAGOHF-mASHwAAADgb5iNSt0655.png

[图8 |PSoC 6 BLE – BLE子系统框图]

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16988

    浏览量

    350306
  • 物联网
    +关注

    关注

    2903

    文章

    44272

    浏览量

    371233
收藏 人收藏

    评论

    相关推荐

    联网IoT平台 联网IoT平台的定义

    联网IoT平台 | 联网IoT平台的定义
    的头像 发表于 11-25 10:45 69次阅读
    <b class='flag-5'>物</b><b class='flag-5'>联网</b>IoT平台  <b class='flag-5'>物</b><b class='flag-5'>联网</b>IoT平台的定义

    socket 在联网中的应用

    不同的计算机程序在网络中进行通信。它基于TCP/IP协议,提供了一种可靠的、面向连接的通信方式。在联网中,Socket使得设备能够发送和接收数据,实现远程控制和监控。 2. Socket在
    的头像 发表于 11-12 14:19 344次阅读

    联网学习路线来啦!

    联网学习路线来啦! 联网方向作为目前一个热门的技术发展方向,有大量的人才需求,小白的学习入门路线推荐以下步骤。 1.了解
    发表于 11-11 16:03

    MCU联网中的应用前景

    随着联网(IoT)技术的飞速发展,微控制器单元(MCU)作为联网设备的核心组件之一,其应用前景备受关注。 1.
    的头像 发表于 11-01 13:39 281次阅读

    中移芯昇发布智能可信城市蜂窝联网基础设施研究成果

    8月23日,雄安新区RISC-V产业发展交流促进会顺利召开,芯昇科技有限公司(以下简称“中移芯昇”)总经理肖青发布智能可信城市蜂窝联网基础设施研究成果,为雄安新区建设新型智慧城市赋能增效。该成果
    的头像 发表于 08-31 08:03 583次阅读
    中移芯昇发布智能<b class='flag-5'>可信</b>城市蜂窝<b class='flag-5'>物</b><b class='flag-5'>联网</b>基础设施研究成果

    什么是联网技术?

    够对海量的联网数据进行整合、分析和挖掘,提取有价值的信息。 应用层:是联网技术的最终体现,直接面向用户和具体的应用场景。包括各类
    发表于 08-19 14:08

    芯海科技低功耗BLE 5.1 MCU CST92F42助力联网创新

    芯海科技近日推出的CST92F42,是一款集成了高性能32位MCU内核并支持硬件浮点的低功耗BLE 5.1 MCU。这款MCU凭借其出色的性能,成为了
    的头像 发表于 06-04 09:53 662次阅读

    4G联网开关求助

    阿里云联网平台 合宙模块780E 724 或者移远4G模块开发一款联网开关,有的APP ,可以直接做固件或者固件带硬件。有可以做的大师可以联系我有样品参考
    发表于 05-19 15:28

    联网是什么?联网的功能

    联网(Internet of Things,IoT)是指通过信息传感设备,按照约定的协议,将任何物体与网络相连接,物体通过信息传播媒介进行信息交换和通信,以实现智能化识别、定位、跟踪、监管等功能
    的头像 发表于 04-20 09:44 2146次阅读

    恩智浦发布专为新一代工业和联网设备智能互联而打造的无线MCU

    恩智浦MCX W系列的可扩展无线MCU是首款具有蓝牙信道探测功能的无线MCU,进一步扩展了MCX产品组合丰富的连接功能,可最大限度地提高新一代工业和联网设备未来的灵活性
    的头像 发表于 04-12 12:15 1560次阅读

    面向联网(IOT)、工业、通信等应用的模拟及数模混合芯片设计

    本命题方向为面向联网(IOT)、工业、通信等应用的模拟及数模混合芯片设计,特别聚焦于应用广泛的高性能数据转换器(ADC/DAC)芯片设计。
    的头像 发表于 03-27 14:00 684次阅读
    <b class='flag-5'>面向</b><b class='flag-5'>物</b><b class='flag-5'>联网</b>(IOT)、工业、通信等应用的模拟及数模混合芯片设计

    工业智能联网关如何助力工业防震减灾

    随着5G、大数据、联网技术的发展,面向工业领域构建一个高效的防震减灾系统已成为可能。本篇就以工业联网关应用为例,解析
    的头像 发表于 03-25 17:45 411次阅读
    工业智能<b class='flag-5'>物</b><b class='flag-5'>联网</b>关如何助力工业防震减灾

    恩智浦推出全新面向工业与联网应用的MCX微控制器产品组合

    恩智浦推出全新面向工业与联网应用的MCX微控制器产品组合,赋能安全边缘计算,其中MCX N系列为用户带来高能效多任务处理、AI加速、智能外设与灵活的开发体验。
    的头像 发表于 03-21 13:33 1567次阅读
    恩智浦推出全新<b class='flag-5'>面向</b>工业与<b class='flag-5'>物</b><b class='flag-5'>联网</b>应用的MCX微控制器产品组合

    什么是窄带联网?窄带联网和宽带联网有什么区别?

    什么是窄带联网?窄带联网和宽带联网有什么区别? 窄带
    的头像 发表于 02-04 14:48 4217次阅读

    联网IOT芯片是什么?联网芯片的作用 联网芯片的应用领域

    联网IOT芯片是什么?联网芯片的作用 联网芯片的应用领域 
    的头像 发表于 02-01 11:38 3551次阅读