This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Tool/software:
Hi,
I am building firmware for TI AM64 EVM and SK. Besides UBOOT, I basically have a FIT image that includes the Linux Kernel and ROOT Files System (in CPIO InitramFs) Format. I saw in the AM64X Linux SDK 10 under UBOOT Source Code directory arch/arm/mach-k3 there is a directory namely "keys" that has private key and public certificate that one can replace with their own SMPK or BMPK, so essentially secure boot with authentication is supported out of box in the SDK.
Now my question is, in order to also support encryption in secure boot, presumably encrypting tiboot.bin, tispl.bin, u-boot.img, and cust-fw.fit (Linux, DTB, and ROOTFS), how should one modify the UBOOT and Linux Build Process, what are the proper command systax to use SMEK or BMEK to encrypt these files and under what kind of binman specifications, and for the cust-fw.fit, maybe one has to modify the UBOOT to decrypt his cust-fw.fit image right. (This image can first loaded by TFTP, but later on will be in a OSPI flash partition).
Binary blob encryption/decryption with the OTP symmetric key (i.e. SMEK/BMEK) is not supported out-of-box in Linux SDK.
Best,
-Hong
May I got some hints or I have to completely work on my own?
Other question I have is about switching to the BMPK keyset once KEYREV has been set to 1 to activate the primary set already. The OTP Writer User Guide Note said that once KEYREV has been programed, than the USER's ROOT of Trust is taken into control, and the OPT writer application can no longer BOOT. But in some extreme circumstances if a customer suspect that the primary key is compromised, and we want to be able to use the BMPK as the active set instead, but since in an HS-SE already activated board, the OPT writer App is unable to BOOT, then how should we do it or it is impossible?
Paul
1/. AM64x MCU+SDK reference on binary blob encryption/decryption.
https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1365236/am6422-hs-se-secure-boot-u-boot-linux-stalls-when-encrypted/5213311#5213311
2/. Key revoke
https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1202686/faq-am6442-am243-how-to-use-the-tisci-apis-read_keycnt_keyrev-write_keyrev-to-activate-the-backup-key-set
Best,
-Hong