打印

FreeRTOS扩展IoT安全技术

[复制链接]
9427|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jcky001|  楼主 | 2021-8-27 10:23 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

在FreeRTOS 项目开发中,信息安全(security)和功能安全一直非常重要。FreeRTOS不断提升包括内存安全在内各种安全技术。最近,FreeRTOS已通过物联网平台安全评估标准 (SESIP) 的2级和平台安全架构规范(PSA)的1级认证。

下面我们来了解一下FreeRTOS针对IoT安全应用提供的机制。

  

SESIP认证

SESIP 指物联网平台安全评估标准,源自计算机安全认证的国际标准 (ISO/IEC 15408)。SESIP 认证包含五个保证级别。随着保证级别的增加,测试的复杂性和严格性也会增加。GlobalPlatform 管理五个 SESIP 保证级别,测试合作伙伴执行测试。

FreeRTOS的SESIP 项目,配置了FreeRTOS 202012.00 LTS 库,用于认证测试。FreeRTOS基于SESIP 级别2进行了测试,其中包括为期两周的黑盒渗透测试。

当应用程序需通过 SESIP 认证时,选择通过SESIP 认证的硬件和软件开发后,仅需验证应用程序,技术原理见下图所示。

  

PSA认证

PSA是ARM在2017年推出的平台安全架构,主要目的是实现成本可控,易于实施,低风险的物联网安全基础平台。

PSA认证是Arm平台安全架构(PSA)框架的最新部分,为物联网(IOT)芯片、软件和设备提供独立的测试和认证。PSA安全认证建立了从威胁模型和安全需求分析、硬件和固件的架构设计、安全系统的产品实现到安全测试与认证的闭环,旨在确保IoT产品从设计到实际应用的安全性。

PSA认证分为Level 1 、Level 2和Level 3三个安全等级。FreeRTOS通过了PSA的1级认证。

  

TF-M

微控制器的安全一直是一项挑战,部分原因是缺乏硬件强制的安全域。创建两个安全域通常需要两个微处理器,每个微处理器都有一个单独的内存保护单元(MPU)。Armv8-M架构中的TrustZone机制在单个Cortex-M处理器上启用了两个安全处理环境,为安全实现提供硬件基础。

TF-M的全称是Trusted Firmware for M,是一个开源的符合PSA认证指南的PSA参考实现,为ARMv8-M架构(例如Cortex-M55、Cortex-M33和Cortex-M23处理器)和双核Cortex-M设备实施安全处理环境(SPE) ,使芯片、实时操作系统和设备能够通过PSA认证。

TF-M实现了非安全区域和安全区域的隔离,同时在安全区域实现了APP RoT和PSA RoT之间的隔离。

在ARMv8-M设备上,TF-M使用ARM TrustZone技术隔离NSPE和安全处理环境(SPE)的代码和数据。在Cortex-M设备上运行的应用程序可以利用TF-M服务来确保与边缘网关和物联网云服务的安全连接。

TF-M已完成与FreeRTOS的初步集成,这使在Cortex-M设备上运行FreeRTOS的应用程序能够通过PSA功能API,利用TF-M提供的安全服务, TF-M 技术架构见下面所示:

FreeRTOS内核在NSPE中运行,而TF-M在SPE中运行。FreeRTOS任务可以通过PSA功能API利用使用TF-M安全服务(例如,加密,安全存储和证明)。非安全调度程序将PSA功能API调用从任务转发到TF-M。NSPE可以使用提供不同级别的安全性和隔离性的IPC或函数调用机制与TF-M通信。

  

FreeRTOS PKCS #11集成

FreeRTOS 团队还与Arm Holdings合作, FreeRTOS实现了PKCS #11与TF-M的集成。,见下图所示。

FreeRTOS中使用PKCS#11 API来执行TLS客户端身份验证,并将TLS客户端证书和私钥导入设备。PKCS#11已使用thin shim与TF-M集成,并在Arm Musca-B1参考平台上进行了验证。


使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1413

主题

3784

帖子

5

粉丝