application access to AES encryption hardware

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

cross mob
StSm_298421
Level 3
Level 3
10 replies posted 5 replies posted 10 questions asked

The BCM920736, like any other BLE SoC, has hardware AES support, and a true random number generator. In the BLE spec, there are HCI commands for direct access to this hardware, e.g. HCI_LE_Rand and HCE_LE_Encrypt.

Some HCI commands are obviously supported when delivered over the UART - see e.g. Tools/mbt/mbt.cpp.

Can these commands be delivered from the application level - for example to use the built-in AES hardware to perform encryption at the application, not the link layer?

If there is no direct support in the SDK, is there a possibility to use register-level access to deliver HCI commands and receive HCI events?

0 Likes
1 Solution
MichaelF_56
Moderator
Moderator
Moderator
250 sign-ins 25 comments on blog 10 comments on blog

Note that the AES API is only usable with 20737 builds as this is our full featured device which inludes security.

The good news is that the latest TAG3 development board is based on the 20737.

The API is in WICED-Smart-SDK/Wiced-Smart/bleapp/lestack/smp/aes*.*

View solution in original post

0 Likes
2 Replies
MichaelF_56
Moderator
Moderator
Moderator
250 sign-ins 25 comments on blog 10 comments on blog

I will check with the developers.

0 Likes
MichaelF_56
Moderator
Moderator
Moderator
250 sign-ins 25 comments on blog 10 comments on blog

Note that the AES API is only usable with 20737 builds as this is our full featured device which inludes security.

The good news is that the latest TAG3 development board is based on the 20737.

The API is in WICED-Smart-SDK/Wiced-Smart/bleapp/lestack/smp/aes*.*

0 Likes