...
To increase the security level, the bootable image can be signed and further encrypted by the CST. The KeyBlob must be generated on the device. The hardware deletes all sensitive keys if any security violation happens, so the sensitive keys cannot be cloned.
Generate i.MX RT bootable image
There are two types of bootable images for i.MX RT devices.
Normal boot image: This type of image can boot directly by boot ROM.
Plugin boot image: This type of image can be used to load a boot image from devices that are not natively supported by boot ROM.
Both types of images can be unsigned, signed, and encrypted for different production phases and different security level requirements:
Unsigned Image: The image does not contain authentication-related data and is used during the development phase.
Signed Image: The image contains authentication-related data (CSF section) and is used during the production phase.
Encrypted Image: The image contains encrypted application data and authentication-related data and is used during the production phase with the higher security requirements.
The above types of bootable images can be generated by using the elftosb utility. The detailed usage of the elftosb utility is available in elftosb User's Guide.
https://www.nxp.com/docs/en/user-guide/MBOOTELFTOSBUG.pdf
Expand | ||||
---|---|---|---|---|
| ||||
Typically, the unsigned bootable image is generated and programmed to the destination memory during the development phase. Step 1: Create a BD file. For unsigned image creation, the “constants” block is optional, as shown below.
After the BD file is created, place it into the same folder that holds elftosb utility executable. Step 2: Copy Flashloader.srec provided in the release package into the same folder that holds elftosb utility executable. Step 3: Generate the Bootable image using elftosb utility.
Then, there are two bootable images generated by elftosb utility. The first one is ivt_flashloader_unsigned.bin. The memory regions from 0 to ivt_offset are filled with padding bytes (all 0x00s). |
Expand | ||||
---|---|---|---|---|
| ||||
To generate a signed bootable image using elftosb utility, perform the following steps: Step 1: Create a BD file. The BD file can be as follows
After the blank BD file is created, place it into the same folder that holds elftosb utility executable. Step 2: Copy Flashloader.srec provided in the release package into the same folder that holds elftosb utility executable. Step 3: Copy the “cst” executable, “crts” folder, and “keys” folder from “<cst_installation_dir>” to the same folder that holds elftosb utility executable. Step 4: Generate a bootable image using elftosb utility.
Then, there are two bootable images generated by elftosb utility. The first one is ivt_flashloader_signed.bin. The memory regions from 0 to ivt_offset is filled with padding bytes (all 0x00s). The second one is ivt_flashloader_signed_nopadding.bin, which starts from ivt_offset directly. The CSF section is generated and appended to the unsigned bootable image successfully. |