<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/107489/reference-for-mutual-tls-and-private-key-handling</link><description>I intend to implement an application on nrf9160, that makes use of mutual-tls to communicate with a peer. 
 To this end, I need to store a private key in a save place on the nrf9160 and create tls-sockets from it. 
 My understanding of the recommended</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 20 Aug 2024 10:54:58 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/107489/reference-for-mutual-tls-and-private-key-handling" /><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/499013?ContentTypeID=1</link><pubDate>Tue, 20 Aug 2024 10:54:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5e878594-6a49-4c4e-a144-74310a34c294</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;Hi again,&lt;/p&gt;
&lt;p&gt;I made &lt;a href="https://github.com/hellesvik-nordic/samples_for_nrf_connect_sdk/tree/main/crypto/psa_csr"&gt;this sample &lt;/a&gt;recently to do CSR in v2.7.0. Maybe it can be useful to you:&lt;/p&gt;
&lt;p&gt;PS: The patch in the sample currently breaks TF-M, but I am working on that.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/467575?ContentTypeID=1</link><pubDate>Mon, 05 Feb 2024 13:11:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7771cf27-bcb9-49fc-9fec-7bb3ecf7e208</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;&amp;quot;psk&amp;quot; is for TLS with &lt;a href="https://en.wikipedia.org/wiki/TLS-PSK"&gt;Pre-Shared Keys (PSK)&lt;/a&gt;, which our PSA TLS drivers do not yet support for PSA Crypto.&lt;/p&gt;
&lt;p&gt;Can I suggest that since TLS-PSK is kindof a corner case here, you start by trying to learn how to do TLS with asymmetric encryption?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/467551?ContentTypeID=1</link><pubDate>Mon, 05 Feb 2024 12:02:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4e8b7a1b-91c0-4b65-893d-a11bbb0b8270</guid><dc:creator>Cla</dc:creator><description>&lt;p&gt;Thanks, you are right.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;I do not fully understand. My understanding is now, the private information is in the `psk`, it is loaded with `tls_credential_add` in `tls_set_preshared_key` (in the sample from hard coded dummy_psk). The sample does not cover the safe storage of the psk. Do I understand correctly, that after a reset, the key is not persisted and needs to be loaded in (via NSPE-RAM) using `tls_credentila_add`-function again?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/467348?ContentTypeID=1</link><pubDate>Fri, 02 Feb 2024 11:38:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:836616c3-eb0b-4ed4-8c18-a336393eb790</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;From &lt;a href="https://github.com/nrfconnect/sdk-nrf/blob/52cb8fc8309d748bcc9a523c0938bb41d50a6aa7/samples/crypto/psa_tls/src/non-secure/psa_tls_credentials_client.c#L50-L53"&gt;tls_set_credentials_from_ps&lt;/a&gt;:&lt;/p&gt;
&lt;p&gt;&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;Function for fetching the CA certificate from Protected Storage,&lt;/p&gt;
&lt;p&gt;&amp;quot;&lt;/p&gt;
&lt;p&gt;This gets the certificate, and the certificate is not secret, and is therefore it is not a problem to have this in NSPE RAM&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/467329?ContentTypeID=1</link><pubDate>Fri, 02 Feb 2024 09:59:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:caed6c50-317d-4b31-8980-0ffe1fc2fa1b</guid><dc:creator>Cla</dc:creator><description>[quote userid="106736" url="~/f/nordic-q-a/107489/reference-for-mutual-tls-and-private-key-handling/466995"]&lt;span style="font-size:inherit;"&gt;Our&lt;/span&gt;&lt;a title="https://developer.nordicsemi.com/nrf_connect_sdk/doc/latest/nrf/samples/crypto/psa_tls/readme.html" href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/samples/crypto/psa_tls/README.html" rel="noopener noreferrer" target="_blank"&gt;&lt;span style="font-size:inherit;"&gt; PSA TLS sample&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:inherit;"&gt; which I linked to earlier show you how to do the TLS handshake using the PSA Crypto API and then communicate over the established link.&lt;/span&gt;[/quote]
&lt;p&gt;I have maybe one follow up. In the sample, if I understand correctly, it still loads the key into NSPE RAM in the function `tls_set_credentials_from_ps`, did I understand correctly, that this can not be avoided?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/466995?ContentTypeID=1</link><pubDate>Wed, 31 Jan 2024 16:11:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:212e6286-193a-49d6-b2ca-eaeb5b568f8a</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;I had one of our crypto experts read though my previous message, and they caught some misunderstandings. I will edit that comment soon after I have posted this.&lt;/p&gt;
&lt;p&gt;So instead of that comment, I will suggest how you can do mutual TLS for a client with the PSA Crypto API.&lt;/p&gt;
&lt;p&gt;Let&amp;#39;s split this into some steps, to keep it tidy.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Provisioning&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Generate private key&lt;/li&gt;
&lt;li&gt;Get Client Certificate from Certificate Signing Request (CSR)&lt;/li&gt;
&lt;li&gt;Get Clouds CA certificate&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Runtime
&lt;ul&gt;
&lt;li&gt;Do TLS handshake&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;&lt;strong&gt;Provisioning&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Generate private key&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Use the PSA Crypto API. See &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/samples/crypto/ecdsa/README.html"&gt;Crypto: ECDSA sample&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This will generate the key in SPE and store it in ITS. Set CONFIG_TFM_ITS_ENCRYPTED if you want to encrypt ITS. This will use the MKEK to encrypt ITS.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;CSR&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;We do not have a sample for this. See &lt;a href="https://os.mbed.com/docs/mbed-os/v6.16/porting/using-psa-enabled-mbed-tls.html#using-opaque-ecdsa-keys-to-generate-certificate-signing-requests-csrs"&gt;Using opaque ECDSA keys to generate certificate signing requests (CSRs)&lt;/a&gt; for a list of steps. Specifically the subsection &amp;quot;Application flow with PSA&amp;quot;.&lt;/p&gt;
&lt;p&gt;Since we set up mbedtls to use opaque keys, the private key will never be in NSPE for this operation, which is good.&lt;/p&gt;
&lt;p&gt;Store the Client Certificate in PS from NSPE. The Client Certificate is public information, so it can be stored however you want really.&lt;/p&gt;
&lt;p&gt;The CSR will be done against a CA, often controlled by you. Normally you will sign the Client Certificate against a root certificate or intermediate certificate you have, so that you do not need to store every client certificate in the cloud.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Get cloud server CA cert&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The device needs to know the servers certificate to be able to &lt;span&gt;&lt;span dir="ltr"&gt;authenticate&lt;/span&gt;&lt;/span&gt; the cloud server. This is usually done with a &lt;a href="https://en.wikipedia.org/wiki/Certificate_authority"&gt;Certificate Authority (CA)&lt;/a&gt; certificate.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span dir="ltr"&gt;Since the cloud server CA certificate is not secret, it can be stored available to the NSPE. (For example using Protected Storage).&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Which cloud server CA certificate need and how you aquire it depends on the cloud server. For example for Azure IoT Hub, that would be the &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/libraries/networking/azure_iot_hub.html#prerequisites-for-connecting-to-azure-iot-hub"&gt;Baltimore CyberTrust Root Certificate&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;&lt;strong&gt;Runtime&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:inherit;"&gt;Now that you have configured your device, you have a Private Key in ITS, a Client certificate and Cloud CA certificate in your non-volatile storage (for example Persistent Storage). &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span dir="ltr"&gt;&lt;span style="font-size:inherit;"&gt;Our&lt;/span&gt;&lt;a title="https://developer.nordicsemi.com/nrf_connect_sdk/doc/latest/nrf/samples/crypto/psa_tls/readme.html" href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/samples/crypto/psa_tls/README.html" rel="noopener noreferrer" target="_blank"&gt;&lt;span style="font-size:inherit;"&gt; PSA TLS sample&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:inherit;"&gt; which I linked to earlier show you how to do the TLS handshake using the PSA Crypto API and then communicate over the established link.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:inherit;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:inherit;"&gt;I will have a colleguae read through this as well tomorrow, so beware there might be edits. I am learning here as well.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:inherit;"&gt;Let me know if you got any questions.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:inherit;"&gt;EDIT: Last edit of this post 2024-02-01 09:40&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/465868?ContentTypeID=1</link><pubDate>Wed, 24 Jan 2024 16:56:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1f7de606-9c9e-4671-9df9-c3acc1cb5144</guid><dc:creator>Cla</dc:creator><description>[quote userid="106736" url="~/f/nordic-q-a/107489/reference-for-mutual-tls-and-private-key-handling/465816"]So we are on the same side, what will you use this randomness for?[/quote]
&lt;p&gt;I forgot to say. To initialize the private key before writing in the next step.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/465816?ContentTypeID=1</link><pubDate>Wed, 24 Jan 2024 13:44:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b0fe7ae4-ad9c-443e-934b-f41bd55b8218</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;EDIT: I wrote a new answer here: &amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/107489/reference-for-mutual-tls-and-private-key-handling/466995"&gt;RE: Reference for mutual TLS and private key handling&lt;/a&gt;. See that instead of this comment. I also removed some things from this comment, so it will be inclomplete.&lt;/p&gt;
[quote user=""]Generate cryptographic randomness[/quote]
&lt;p&gt;So we are on the same side, what will you use this randomness for?&lt;/p&gt;
[quote user=""]&lt;ul&gt;&lt;li&gt;Read it to NSPE-RAM from protected storage to create csr with mbedtls.&lt;/li&gt;
&lt;li&gt;Read it to NSPE-RAM from protected storage to hand it off to zephyrs tls_credentials_add-API.&lt;/li&gt;&lt;/ul&gt;[/quote]
&lt;p&gt;You dont want to have keys in NSPE-RAM if you can avoid it. We use opaque keys for this instead. See the other newer comment for more info on this.&lt;/p&gt;
[quote user=""]Can slots in the KMU be used to store the private key forgoing the need for protected storage altogether?[/quote]
&lt;p&gt;Instead of using the KMU for the private key, we recommend generating the private key in the PSA Crypto API, which will make it live in ITS, and use opaque key handling from there. If you want the ITS will be encrypted with the &lt;a title="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.4.0/nrf/libraries/others/hw_unique_key.html" href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.4.0/nrf/libraries/others/hw_unique_key.html"&gt;Hardware unique key (HUK)&lt;/a&gt; of type MKEK, which lives in the KMU for the nRF9160.&lt;/p&gt;
&lt;p&gt;Opaque key handling is when you only use a reference to the key, and not the key itself. This makes it possible to call crypto APIs (PSA or mbedtls) from the NSPE without having the key in the NSPE.&lt;/p&gt;
[quote user=""]Can the key be derrived from a HUK every time before use forgoing the need to store it anywhere persistently? If so which HUK shall be used?[/quote]
&lt;p&gt;This is not the way, see above.&lt;/p&gt;
[quote user=""]How many space is in the KMU? I understand 125 slots a 128 bits/slot?[/quote]
&lt;p&gt;See &lt;a href="https://infocenter.nordicsemi.com/topic/ps_nrf9160/uicr.html?cp=2_1_0_3_5_0_10#register.KEYSLOT.KEY.VALUE"&gt;KEYSLOT.KEY[n].VALUE[o]&lt;/a&gt; and &lt;a href="https://infocenter.nordicsemi.com/topic/ps_nrf9160/kmu.html?cp=2_1_0_5_7"&gt;KMU&lt;/a&gt;. &lt;br /&gt;From the latter:&lt;/p&gt;
&lt;p&gt;&amp;quot; In total there are 128 key slots available, where each key slot can store one 128-bit key value together with an access policy and a destination address for the key value. Multiple key slots can be combined in order to support key sizes larger than 128 bits. &amp;quot;&lt;/p&gt;
&lt;p&gt;I think you are correct that 3 slots are already used, so that would be 125 left yes.&lt;/p&gt;
[quote user=""]Is there an alternative to tls_credentials_add and mbedtls sockets, that allows to store the information persistently in some other way? Maybe &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.4.0/nrfxlib/nrf_modem/doc/sockets.html"&gt;developer.nordicsemi.com/.../sockets.html&lt;/a&gt; ?[/quote]
&lt;p&gt;See the newer comment mentioned above were I suggest how you should do this.&lt;/p&gt;
[quote user="Cla"]From the sample you linked, I understand, that one would add the credentials anew with `tls_credentials_add` after each reset. Do you agree?[/quote]
&lt;p&gt;The sample is for TLS communication, not for generating certificates. The PSA TLS sample assumes that you already have certificates and keys.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;The sample seems to only use tls_credentials_add for NSPE. If you have a look at all the code in the &amp;quot;non-secure&amp;quot; folders, which confusingly enough are for code running when we build with TF-M, it uses something else.&lt;/p&gt;
&lt;p&gt;The tls_credentials_add in main is only used for preshared keys, as we do not support this in PSA Crypto TLS yet.&lt;/p&gt;
&lt;p&gt;See how tls_set_credentials points to either &lt;a href="https://github.com/nrfconnect/sdk-nrf/blob/4a3f7407414bd63d6928b9423ca3aba0bde2b5ff/samples/crypto/psa_tls/src/non-secure/psa_tls_credentials_client.c#L82"&gt;non-secure folder&lt;/a&gt; or &lt;a href="https://github.com/nrfconnect/sdk-nrf/blob/4a3f7407414bd63d6928b9423ca3aba0bde2b5ff/samples/crypto/psa_tls/src/secure/psa_tls_credentials_client.c#L20"&gt;secure folder&lt;/a&gt;, all depending on if &lt;a href="https://github.com/nrfconnect/sdk-nrf/blob/4a3f7407414bd63d6928b9423ca3aba0bde2b5ff/samples/crypto/psa_tls/CMakeLists.txt#L18-L22"&gt;TF-M is enabled or not&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;EDIT: This comment was last edited 31. Jan 17:18. I changed it quite a lot then, so if you remember something from last time you read it, that may have changed. Sorry for the possible confusion.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/465121?ContentTypeID=1</link><pubDate>Fri, 19 Jan 2024 16:49:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6d52b99f-c426-4fdc-93b8-e9921ec3c409</guid><dc:creator>Cla</dc:creator><description>&lt;p&gt;Thanks.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;From the sample you linked, I understand, that one would add the credentials anew with `tls_credentials_add` after each reset. Do you agree?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/465106?ContentTypeID=1</link><pubDate>Fri, 19 Jan 2024 15:36:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e0561609-1b7e-4984-97fd-edf82fb78932</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;My first though is: Why in the world would you use a nRF9160 and then go ahead and use another network interface?&lt;br /&gt;So if you want to entertain my curiosity, I am curious to what you are doing? (optional)&lt;/p&gt;
&lt;p&gt;However, that is besides the point. I agree that in your case, it makes sense to use TLS from the application, so I will help you with that, which is why you are here after all.&lt;/p&gt;
&lt;p&gt;Yes, TLS from the application is what I would recommend.&lt;/p&gt;
&lt;p&gt;I think the &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/samples/crypto/psa_tls/README.html"&gt;PSA TLS sample&lt;/a&gt; might be what you are looking for, but I suspect that you have seen this sample already.&lt;/p&gt;
&lt;p&gt;Next week I will look into the questions you got in the top of this ticket, cause I need to read some on this to be sure before I give answers.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/464864?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 15:06:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9b61def0-d957-4220-b83c-f6775d5bd51b</guid><dc:creator>Cla</dc:creator><description>&lt;p&gt;In other words, I am attempting to ask: what is the best way to do Y? Y=`generate and securely store a private key for mutual tls on an nrf9160 on a network interface, that is not LTE`?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/464808?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 12:54:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bbb3ba0d-7157-4da6-9b6d-a91742fae756</guid><dc:creator>Cla</dc:creator><description>&lt;p&gt;Thank you for your reply. I intentionally asked the question as openly as I could to check, if there are alternatives, that I am unaware of.&lt;/p&gt;
&lt;p&gt;Please note, that I am not intending to use the nrf9160 for LTE. Instead I am using it with other networking interfaces.&lt;br /&gt;&lt;br /&gt;Can the TLS operations of the modem be used with (zephyr) sockets, that do not use the modem (LTE) but some other networking interface?&lt;br /&gt;&lt;br /&gt;If no, that is the reason that I use the application for TLS.&lt;br /&gt;If yes, could you give me some more information on it?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/464805?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 12:50:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e23b285a-8a3a-4553-bf38-eeb2c6b73f17</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;In that case, we usually recommend that you do TLS operations in the modem of the nRF9160, and not in the application.&lt;br /&gt;The modem has its own security features, so you do not have to handle that yourself, which will make life easier for everyone involved.&lt;/p&gt;
&lt;p&gt;To make sure this is not an &lt;a href="https://en.wikipedia.org/wiki/XY_problem"&gt;XY Problem&lt;/a&gt;:&lt;/p&gt;
&lt;p&gt;Is there any reason that you use the application for TLS instead, and are you sure that is the way you want to do it?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/464802?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 12:46:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b4dd1312-de94-41ad-9522-dceb3c38a45d</guid><dc:creator>Cla</dc:creator><description>&lt;p&gt;client&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Reference for mutual TLS and private key handling</title><link>https://devzone.nordicsemi.com/thread/464799?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 12:41:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e8b12bda-da73-48cb-9a78-a335f113cf6b</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;Hi Cla,&lt;/p&gt;
&lt;p&gt;Let me start by not answering anything of what you ask and instead ask you a question:&lt;/p&gt;
&lt;p&gt;Are you going to use the nRF9160 as a client or server?&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Sigurd Hellesvik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>