Crypto library and vanilla Zephyr.

Hi,

We have current product using vanilla Zephyr on other brand microcontroller. We do not want to maintain many Zephyr instances. We also are evaluating use of nrf5340 and we would like to use cryptocell accelerator functionalities with it. How to achieve it without downloading and using full NCS? How to configure use of vanila zephyr and nrf-security or nrfxlib crypto repository with vanilla zephyr? When I try to change mbedtls(sdk-mbedtls) to your implementation and also download nrfxlib(sdk-nrxflib) into my build manifest I got PSA Kconfig issues ("'modules/mbedtls/Kconfig.psa' not found"), or when I disable this config by commenting it out I got then dependency loop issues. Is it possible to use your cryptocell implementations outside of ncs? I am using Zephyr 3.2.0.

Parents
  • I will start by not answering the question you ask.

    Will you use the nRF5340 for Bluetooth Low Energy?

    When using the nRF Connect SDK, you can choose between the SoftDevice Controller and the Zephyr Bluetooth LE Controller.
    The SoftDevice Controller is a part of the nRF Connect SDK, and we do not support it with the Zephyr SDK.

    Certifying your product will likely be easier if you use the nRF Connect SDK. We work on qualifying all/most versions of the nRF Connect SDK, so you find QDIDs for this at Bluetooth QDIDs.

    From the above page, also observe:
    "The ZephyrTm Controller subsystem was qualified with QDID 150092 for nRF52840 and nRF Connect SDK 1.3.2 for core specification 5.1. Other qualifications for the Zephyr Controller subsystem are not planned."

    I found Zephyr-> Bluetooth Qualification, so Zephyr looks like they have some QDIDs as well.

    I will, of course, recommend our SoftDevice Controller, as it is based on our SoftDevice from the nRF5 SDK, which we have improved over many years of working with Bluetooth Low Energy.

    I found some kinda related conversation in the ticket  Softdevice Controller in Zephyr , so maybe you can learn something from that as well?

    For your question:
    I do not know the answer from the top of my head, so I would have to do some research to figure out how feasible it is to use the CryptoCell with Vanilla Zephyr.
    However, can you read my above comments and say if you still want me to look into this?
    If yes, I will do so.

    Regards,
    Sigurd Hellesvik

Reply
  • I will start by not answering the question you ask.

    Will you use the nRF5340 for Bluetooth Low Energy?

    When using the nRF Connect SDK, you can choose between the SoftDevice Controller and the Zephyr Bluetooth LE Controller.
    The SoftDevice Controller is a part of the nRF Connect SDK, and we do not support it with the Zephyr SDK.

    Certifying your product will likely be easier if you use the nRF Connect SDK. We work on qualifying all/most versions of the nRF Connect SDK, so you find QDIDs for this at Bluetooth QDIDs.

    From the above page, also observe:
    "The ZephyrTm Controller subsystem was qualified with QDID 150092 for nRF52840 and nRF Connect SDK 1.3.2 for core specification 5.1. Other qualifications for the Zephyr Controller subsystem are not planned."

    I found Zephyr-> Bluetooth Qualification, so Zephyr looks like they have some QDIDs as well.

    I will, of course, recommend our SoftDevice Controller, as it is based on our SoftDevice from the nRF5 SDK, which we have improved over many years of working with Bluetooth Low Energy.

    I found some kinda related conversation in the ticket  Softdevice Controller in Zephyr , so maybe you can learn something from that as well?

    For your question:
    I do not know the answer from the top of my head, so I would have to do some research to figure out how feasible it is to use the CryptoCell with Vanilla Zephyr.
    However, can you read my above comments and say if you still want me to look into this?
    If yes, I will do so.

    Regards,
    Sigurd Hellesvik

Children
  • Hi. We are doing some research to have "multiplatform" stuff. And we can use software cryptography but it would be nice to use CryptoCell accelerated operations. For BLE, protocols, and certifications it would depend on the end use case. With nrf5340, we can have firmware for the network core built with ncs while the application can be built with vanilla Zephyr. However, this is not the case with the CryptoCell stuff into which I am currently looking. I see there are incompatibilities between vanilla Zephyr and ncs to simply put mbedtls from your implementation, then add nrfxlib but I run into issues I need help with.

  • Hi,

    I did not find any reference in vanilla Zephyr for how to use the CryptoCell.

    So I checked with our developers to confirm, and they confirmed that the CryptoCell is only supported in the nRF Connect SDK.

    Regards,
    Sigurd Hellesvik

Related