enabling internal micro-ecc

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
SaSh_4649506
Level 2
Level 2
5 replies posted 5 questions asked 5 sign-ins

Hi all,

I want to know and understand how to enable the in-built micro-ecc in WICED Studio. I can see that WICED offers micro-ecc feature located in folder: 43xxx_Wi-Fi\WICED\security\BESL\crypto_internal\micro-ecc.

Kindly suggest how to turn on this feature to be able to use it in the file: "wiced_ota2_image.c" located in folder: 43xxx_Wi-Fi\libraries\filesystems\ota2

0 Likes
1 Solution
Aditi_B
Moderator
Moderator
Moderator
500 replies posted 5 questions asked 250 replies posted

Hi,

You can enable the uECC (micro-ecc) in WICED Studio by enabling the macro WICED_CONFIG_ENABLE_MBEDTLS_ECC_ALT in config.h file .

Location : 43xxx_Wi-Fi\WICED\security\BESL\mbedtls_open\include\mbedtls\config.h .

This macro will invoke uECC functions for ECC crypto operations.

Also, which elliptic curve have you planned to use in your application?

Thanks

View solution in original post

0 Likes
5 Replies
Aditi_B
Moderator
Moderator
Moderator
500 replies posted 5 questions asked 250 replies posted

Hi,

You can enable the uECC (micro-ecc) in WICED Studio by enabling the macro WICED_CONFIG_ENABLE_MBEDTLS_ECC_ALT in config.h file .

Location : 43xxx_Wi-Fi\WICED\security\BESL\mbedtls_open\include\mbedtls\config.h .

This macro will invoke uECC functions for ECC crypto operations.

Also, which elliptic curve have you planned to use in your application?

Thanks

0 Likes

Hi AditiB_81​,

I am planning on using SECP256R1-ECDSA algorithm.

More suggestions will be appreciated from your end.

0 Likes

Hi AditiB_81​,

How can I integrate this internal micro-ecc with the bootloader code to be able to verify the signature using SECP256R1-ECDSA algorithm?

0 Likes
Aditi_B
Moderator
Moderator
Moderator
500 replies posted 5 questions asked 250 replies posted

Hi,

Can you specify what exactly you want to verify? What bootloader code are you referring to? Is it your custom bootloader or waf.bootloader or waf.ota2_bootloader?

Thanks

What did I do to enable inbuilt uECC?

1. Defined the WICED_CONFIG_ENABLE_MBEDTLS_ECC_ALT in the location: 43xxx_Wi-Fi\WICED\security\BESL\mbedtls_open\include\mbedtls\config.h.

2. In the Make file: ota2_bootloader.mk, added a line : GLOBAL_INCLUDES  += ..\..\..\WICED\security\BESL\mbedtls_open\include\mbedtls. Did this change in the Make file so that I can include "uECC.h"  in waf\ota2_bootloader\ota2_bootloader.c.

SHA256 library used was imported from GitHub and modified. Currently working towards enabling the internal SHA256 library and modifying accordingly for the same purpose.