2023-11-12 09:04 PM - edited 2023-11-12 09:17 PM
Hi @ST Community @Jocelyn RICARD ,
Greetings
Iam implementing using the reference from TF-M SBSFU for secure boot and secure firmware update service. As per UM2851 the signature scheme that is used is RSA 3072/2048 using RSA-OAEP padding.
1. My requirement is to use RSASSA-PSS padding. how can i get this implementation done without altering the SBSFU Implementation.
2. I also have a requirement to decrypt the firmware - during the firmware update process - in the application using AES256.
3. one more clarification -. when executing the TFM_update.sh script the plain application is being dumped into the controller instead of the encrypted_signed_firmware.bin file, on the other hand when doing a firmware update the encrypted-signed_firmware.bin file is downloaded to the controller. please suggest how to download the encrypted_signed_firmware.bin directly using the TFM_update.sh script.
I require sincere support and help in these 3 aspects and the steps on how these can be implemented. Requesting team to support in this regard at the earliest.
Thanks and regards
Philip
2023-11-14 05:22 AM
Hello @PJose.4
answering your questions
"My requirement is to use RSASSA-PSS padding. how can i get this implementation done without altering the SBSFU Implementation. I also have a requirement to decrypt the firmware - during the firmware update process - in the application using AES256. "
SBSFU offers 3 crypto_shemes defined in SBSFU_Boot\\Inc\\mcuboot_config\\mcuboot_config.h
2023-11-15 05:11 AM
Hi @STea
Greetings
Thanks for your quick reply in this regard.
Point 1 - Regarding to the changes that are to be implemented is the step like to add the implementation of RSAPSS-PS through mbedtls -> configure mcuboot to use the RSAPSS-PS padding for signature. In this case i believe it is a big effort to bootloader for the implementation to be done.
point 2 and Point 3 are clear. thanks for your valuable time. Can we use mcuboot for adding AES256 encryption for the firmware update process? Could you please suggest the implementation requirement for adding aes256 support in the TF-M Appli for firmware update process.
One more additional query - In the TF-M Appli folder - how can i access a secure service from the non secure area because it does not have a non-secure callable function(nsc.c). Can you please suggest a look out of how can i implement an adc(in the secure zone of the TF-M Appli) and call the voltage value from the channel in the non secure code of the appli.
Grateful for your support in this regard.
Thanks
Philip
2023-11-15 06:56 AM
Hello again @PJose.4 ,
adding the AES256 (changing the AES -CTR-128) can be done by implementing a the desired algorithm in the update process of SBSFU unfortunately there is not a detailed guide on this specific manipulation.
this is can be quite challenging as the keys used by the SBSFU boot for the AES-CTR-128 is encrypted with RSA-2048 key as explained in the UM2851 table 6 in the 12.2Minimal customization section so the hole process should be redone and this can be quit the effort .
if you want to have answers on your additional query i suggest to have a new threat for better visibility.
BR
2023-11-15 08:42 PM
Hi @STea
Greetings
Thanks for your support.
Will look more into the details that you have provided.
Will create a new thread for the additional query that was posted here.
Thanks again for your time
Best Regards
Philip