hex-five / multizone-sdk

MultiZone® Security TEE is the quick and safe way to add security and separation to any RISC-V processors. The RISC-V standard ISA doesn't define TrustZone-like primitives to provide hardware separation. To shield critical functionality from untrusted third-party components, MultiZone provides hardware-enforced, software-defined separation of multi
https://hex-five.com/multizone-security-tee-riscv/
Other
79 stars 24 forks source link

Missing Documentation for TEE Secure Boot Process #62

Closed utku1998 closed 7 months ago

utku1998 commented 9 months ago

Could you please give further details about how the secure boot process of the MultiZone works?

In the paper "Multi Zone Security for Arm Cortex-M Devices", it is explained like that: "" TEE Secure Boot Process. The TEE implements a 2-stage secure boot loader to verify the integrity and authenticity of the firmware image (SHA-256) and to minimize runtime memory footprint and target attack surface. "" What are these 2 stages and what contains this signed firmware image (only zones?)?

Because in case of HiFive1 Rev B board (Reference Application): The Multizone Kernel (Runtime) is flashed to 0x20010000 and bootloader is flashed to the 0x20012000 (see picture below). Does it mean that the kernel will be executed and then call the bootloader (boot section the picture below) which will check the integrity and authenticity of the zones? Or is the boot section the signature of the zones?

image

I would be really happy, if you can explain me the further details of how the secure boot flow really works?

Hex-Five-Labs commented 9 months ago

What are these 2 [boot] stages? stage-0: check integrity and authenticity of multizone kernel and policies. stage-1: setup and optionaly load zones code

and what contains this signed firmware image (only zones?)? kernel and config policies. no zones code.

Does it mean that the kernel will be executed and then call the [HiFive1] bootloader? It depends. Please contact the board maker for board boot configuration options.