blog icon indicating copy to clipboard operation
blog copied to clipboard

My blog

Results 115 blog issues
Sort by recently updated
recently updated
newest added

# 1. SECURITY ARCHITECTURE Architecture: Functional Blocks: # 2. Memory Architecture For HSE # 3. HSE Boot Artifacts (IVT/HSE FW) The secure boot flow involves multiple software bootloaders – this...

Embedded
Security
Cortex-M
NXP

# [S32K344] Boot And Reset Sequence This document describes the boot and reset sequence on the S32K344 hardware platform. In this section, we need to understand many mechanisms, the state...

Embedded
Security
Cortex-M
NXP

在ls104x上,pkcs11是通过NXP开发的libsecure_obj来加载的。 ![](https://raw.githubusercontent.com/carloscn/images/main/typora202406130920688.png) 完成openssl engine pkcs11的支持,需要配置两个地方: * OpenSC提供了libp11,这个开源库提供了一个higher-level层级的接口用于访问PKCS11的object。OpenSSL直接和这一层进行交互; * pkcs11 engine plugin,是NXP提供的插件,是libp11调用的一层,由NXP开发;可以在NXP的sdk找到; # OpenSC的libp11库交叉编译 交叉编译 libp11的库需要提前准备好,交叉编译的openssl的输出。 ```bash rm -rf libp11 git clone https://github.com/OpenSC/libp11 cd libp11 && ./bootstrap && \ ./configure --host=aarch64-linux-gnu...

ARMv8
Embedded
Security

## 1. 引言 S32K344启动Secure Boot之后。HSE要生成/存储密钥,对IMAGE进行签名,当Key catalog和SMR以及BOOT_SEQ等位通过刷写被清空之后,还能输入新的固件。换句话说,当攻击者通过JTAG或者OTA方式清空了芯片身上的key catalog和SMR区域等之后刷入自己的固件,HSE将对攻击者的固件进行签名,并存储攻击者的固件密钥,整个芯片视攻击者的固件为可信固件。因此要阻止该事情的发生,启动Secure Debug以及Secure OTA,同Secure Boot形成互补的安全应用闭环。 以下为攻击者可以刷写自己固件的路径: * 通过JTAG路径,重置HSE状态,清空原始Key Catalog,清除SMR区域; * 通过OTA路径(对于使能A/B分区的设备),使用串口、CAN、网口等外部接口刷写Flash (Secure boot的A/B分区模式可以防止这种情况) ![image.png512](https://raw.githubusercontent.com/carloscn/images/main/typora202409021417102.png) 对于OTA路径,由于Secure Boot可以Cover,本文暂时不去解释。本文主要应对与JTAG路径。对于启动JTAG的设备,需要采取相应地安全措施,防止攻击者通过JTAG路径强刷固件,致使HSE状态重置,防止清空原始Key Catalog,以及阻止清除SMR区域。 ## 2. 原理 参考: https://www.pemicro.com/blog/index.cfm?post_id=216 NXP的S32K3xx设备系列包含一种高级的安全调试机制,通过密钥保护用户应用程序。在启用安全调试功能后,调试器必须经过密码认证或挑战响应认证才能进行调试。 NXP的S32K3xx设备在标准的S32DS调试会话开始时,可能需要用户执行密码认证或挑战响应认证。这些安全调试模式通过要求正确的凭证来认证调试器,从而防止未经授权的调试访问。每次进行破坏性复位或上电复位后,均需重新进行认证。 -...

# [S32K344] Secure Boot Application ## 1. Overall 本文来捋顺以下,Secure Boot如何使能。和其他MCU的Secure Boot不同,S32K344的固件需要SoC之上的HSE进行密钥管理和固件签名,而其他的MCU控制器通常是在编译固件的时候进行签名,接着使用烧录器烧录到芯片的NVM中。 对于一般的Secure Boot和S32K3系列的Secure Boot做以下对比: | | 一般MCU | S32K344 | |--------------------------|-----------------------------|----------------------------| | **代码编译** | HOST |HOST | | **RSA私钥存储** |...

Embedded
Security
ARMv7
Cortex-M
NXP