-
Notifications
You must be signed in to change notification settings - Fork 8.2k
bt_crypto: provide a PSA APIs implementation alternative to TinyCrypt #73378
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bt_crypto: provide a PSA APIs implementation alternative to TinyCrypt #73378
Conversation
|
The following west manifest projects have been modified in this Pull Request:
Note: This message is automatically posted and updated by the Manifest GitHub Action. |
91ed86b to
cbbb2b8
Compare
cbbb2b8 to
ca886c1
Compare
5437c0d to
2c4981b
Compare
4ff6817 to
f64efc3
Compare
ceolin
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
\0/
7bf45b7 to
4325d08
Compare
|
I think I need a bit of help here: failure on |
Re-triggered the bsim tests, let's see if it solve the issue |
I already did this early this morning, but it failed in the same point. However let's see, maybe this time is better :) |
Oh my bad, I guess it's a problem on main if the problem persist |
Sorry that was my bad, a fix is queued in here #74289 |
|
@valeriosetti please rebase. Currently the old workflow file is still being picked and it will fail again. |
TF-M is a PSA API provider alternative to Mbed TLS one. As a consequence when CONFIG_BUILD_WITH_TFM is set CONFIG_PSA_CRYPTO_CLIENT should be set as well. Signed-off-by: Valerio Setti <[email protected]>
This commit adds CONFIG_BT_USE_PSA_API to allow the end user to prefer PSA APIs over TinyCrypt for crypto operations in bluetooth. Of course, this is possible only if a PSA provider is available on the system, i.e. CONFIG_PSA_CRYPTO_CLIENT is set. This commit also extends tests/bluetooth/bt_crypto adding a test case for PSA. Signed-off-by: Valerio Setti <[email protected]>
By enabling CONFIG_BT_USE_PSA_API the user can specify to use PSA APIs instead of TinyCrypt for crypto operations in bluetooth host module. This commit also extends tests/bluetooth/gatt in order to add a PSA test. Signed-off-by: Valerio Setti <[email protected]>
Some bluetooth test were using BT_TINYCRYPT_ECC without also setting BT_ECC. This means that BT_TINYCRYPT_ECC gets disabled as it depends on BT_ECC. This commit fix this by removing BT_TINYCRYPT_ECC in all test for bluetooth mesh. Signed-off-by: Valerio Setti <[email protected]>
This commit adds CONFIG_BT_USE_PSA_API to allow the end user to prefer PSA APIs over TinyCrypt for crypto operations in bluetooth. Of course, this is possible only if a PSA provider is available on the system, i.e. CONFIG_PSA_CRYPTO_CLIENT is set. This commit also extends tests/bluetooth/mesh/basic/bluetooth.mesh.gatt adding a specific case using PSA. Signed-off-by: Valerio Setti <[email protected]>
Update migration guide about the support to PSA functions introduced in bt-crypto. Signed-off-by: Valerio Setti <[email protected]>
Add a couple PSA overlay configs for the BT tests in order to evaluate PSA API support introduced by CONFIG_BT_USE_PSA_API. These test are performed on nrf52840dk platform. Signed-off-by: Valerio Setti <[email protected]>
4325d08 to
fabb256
Compare
This PR adds a new kconfig symbol named
CONFIG_BT_USE_PSA_APIto allow the end user to specifically request PSA API usage over TinyCrypt for crypto operations in bluetooth. This might be useful in platforms/scenarios which already have some PSA API provider (ex: TF-M or Mbed TLS +CRYPTO_C) in order to reduce memory footprint and not duplicate crypto libraries for no reason.For sake of example here's a memory footprint comparison on some BT test cases on the
nrf9160dk/nsplatform (which has TFM):