TLS in nR5 SDK 17.1.0 – Nordic Q&A – Nordic DevZone

Hello,

I’m using the nR5 SDK 17.1.0 and my goal is to implement a TLS client connection between a nRF52840 and an MQTT broker – I have a Wiznet 5500 set up for the TCP stack via SPI. This works well for not secure connections.

I’ve since reduced my scope to simply having a secure connection to an OpenSSL server, in order to get any TLS communication to work. For this, I have been trying to use mbedTLS, included in the SDK.

Having browsed the documentation I have not noticed any clear examples of TLS with mbedtls for the most recent bare metal SDK 17.1.0. Older SDKs have them, but tickets such as this one no longer seem to apply (specially since the Revision 1 of the nRF52840 is no longer in production, so downgrading the SDK is not a solution).

Since I’m using bare metal, most ARM mbedTLS configuration manuals using sockets don’t seem to apply. 

Currently I’m a bit confused as to what is already ported in SDK 17.1.0 and what I have to use to configure the mbedTLS library properly. I have the following questions:

1) mbedTLS is included in the externals library inside nR5 SDK 17.1.0, is this ported in some way or just a cloned fork? If it’s a port, what has already been done?

2) What do I need to configure for the nRF52840 to set up the crypto/entropy sources for the nRF52840 in SDK 17.1.0?

3) According to documentation, the IoT SDK was merged into the nR5 SDK to aid with this sort of use case. It seems to have disappeared in the recent SDK 17.1.0. Is it still somewhere to assist me in configuring the TLS connection?

4) How should I deal with timers for the included mbedtls external library?

Thanks

Read more here: Source link