ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
ra8_rot.c File Reference

Root-of-trust signed-image verifier – SHA-256 + ECDSA-P256 gate. More...

#include "ra8_rot.h"
Include dependency graph for ra8_rot.c:

Go to the source code of this file.

Detailed Description

Root-of-trust signed-image verifier – SHA-256 + ECDSA-P256 gate.

Tag
[Ring 4 / Service] {World: S}

See ra8_rot.h for the full contract and signed-image format. This file owns the provisioned root public key, the digest re-computation (RSIP on target, ra8_psa software hash under RA8_OFF_TARGET), and the default-deny decision logic shared by the copy-to-run (ra8_dfu_launch) and BLXNS (ra8_tz_secure_boot_jump_ns) boundaries.

No raw MMIO is performed here: the hash and the ECDSA verify are reached through ra8_rsip_sha256 and ra8_psa_verify_hash respectively, both of which carry their own register-level HUM citations.

The whole module is opt-in behind RA8_ENABLE_ROOT_OF_TRUST (default OFF), mirroring RA8_BOOT_ENABLE_CACHE_MPU. With the flag OFF this file compiles to essentially nothing – only the link-free declarations from ra8_rot.h – so an app that links ra8_dfu but not ra8_psa_crypto / the RSIP HAL does not break, and the launch boundaries skip verification (existing unsigned apps are unchanged). See ra8_rot.h for the enable contract.

Definition in file ra8_rot.c.