Bulid MCUBoot with TINYCRYPT to support DFU image cipher/encryption

 I am testing with NRF Connect SDK 2.3.0

I'm trying to add mcuboot encryption feature as described in the mcuboot design documentation.  Unfortunately the Nordic Security Module libraries used in mcuboot supprorting mbed do not provide the necessary AES-CTR features.  Therefore I'm trying to switch mcuboot to build with tinycrypt. 

I put these configuration values into the child_image/mcuboot.conf

CONFIG_BOOT_SIGNATURE_KEY_FILE="D:/aaa/dev_vault/mcuboot_prime256_pair_1.pem"
CONFIG_BOOT_ENCRYPTION_KEY_FILE="D:/aaa/dev_vault/mcuboot_enc_prime256_pair_1.pem"
CONFIG_BOOT_ENCRYPT_EC256=y

#tiny crypt to support image enryption
CONFIG_TINYCRYPT=y
CONFIG_MBEDTLS=n
CONFIG_TINYCRYPT_SHA256=y
CONFIG_TINYCRYPT_ECC_DSA=y
CONFIG_TINYCRYPT_AES=y
CONFIG_TINYCRYPT_AES_CTR=y

However I keep getting errors like its not including tinycrypt

D:\aaa\v2.3.0\bootloader\mcuboot\boot\bootutil\include\bootutil\crypto\aes_ctr.h:19:6: error: #error "One crypto backend must be defined: either MBED_TLS or TINYCRYPT"
19 | #error "One crypto backend must be defined: either MBED_TLS or TINYCRYPT"
| ^~~~~

I see in  build/mcuboot/zephy/.config  there are some things which I did not set which might be a problem

CONFIG_BOOT_USE_NRF_CC310_BL=y

CONFIG_BOOT_USE_CC310=y

CONFIG_NRFXLIB_CRYPTO=y
CONFIG_NRF_CC310_BL=y

CONFIG_MBEDTLS_CFG_FILE="mcuboot-mbedtls-cfg.h"

How do I build with tinycrypt so I can use the mcuboot encryption feature.

Related