<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: MbedTLS v.1.2 handshake in Secure Authentication</title>
    <link>https://community.nxp.com/t5/Secure-Authentication/MbedTLS-v-1-2-handshake/m-p/2375383#M2090</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/262552"&gt;@MohitGediya&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;No—you should not design this as a&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG class=""&gt;full TLS 1.2 handshake offload&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;to SE052. The host TLS stack may use SE05x/SE052 as a&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG class=""&gt;secure crypto co-processor&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;, but not as a standalone TLS engine that owns the complete TLS protocol state machine. The host MCU/RTOS still runs mbedTLS/Zephyr TLS, parses and builds handshake messages, manages certificate exchange/validation flow, and uses the secure element for selected cryptographic operations and secure credential storage such as :&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;random generation, ECDH/ECDHE-related secret derivation, and&amp;nbsp;ECDSA or RSA sign/verify/decrypt depending on configuration and key type.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;For your questions:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;1)If I store CA certificate or server certificate inside SE052, than how it will become part of TLS handshake using SE052 ICs.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=""&gt;It becomes part of the handshake only after the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG class=""&gt;host retrieves or associates that certificate with the TLS stack&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;. The middleware example shows the certificate being read from the SE, parsed on the host, and then used by mbedTLS; the private key remains referenced inside the SE for sign/ECDH operations.&lt;/P&gt;
&lt;P class=""&gt;&lt;SPAN&gt;For CA certificates specifically, the common architecture is that the host uses the CA certificate to verify the peer certificate chain.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=""&gt;&lt;SPAN&gt;2)&amp;nbsp;If I will not stores it inside SE052 than how to add support for TLS handshake process.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=""&gt;You can still do the handshake normally by:&lt;/P&gt;
&lt;UL class=""&gt;
&lt;LI class=""&gt;keeping the certificate chain in host memory/flash&lt;/LI&gt;
&lt;LI class=""&gt;loading it into mbedTLS on the host&lt;/LI&gt;
&lt;LI class=""&gt;keeping only the private key in SE052 and associating it as a reference key for sign/ECDH operations&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hope that makes sense,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Have a great day,&lt;BR /&gt;Kan&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;BR /&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt;Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;
&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 03 Jun 2026 00:42:46 GMT</pubDate>
    <dc:creator>Kan_Li</dc:creator>
    <dc:date>2026-06-03T00:42:46Z</dc:date>
    <item>
      <title>MbedTLS v.1.2 handshake</title>
      <link>https://community.nxp.com/t5/Secure-Authentication/MbedTLS-v-1-2-handshake/m-p/2374365#M2087</link>
      <description>&lt;P&gt;I want to offload TLS v.1.2 handshake process to SE052 Secure element IC from host ESP32c3devkitm.&lt;BR /&gt;It is act as server, which is v.3.7.0 zephyr based sample application.&lt;BR /&gt;There is no support is added in module to offload whole cryptographic operations to SE.&lt;/P&gt;&lt;P&gt;I go though "SE05x IoT applet APDU Specification". Using this document, I was thinking i can create wrapper function using APDU commands. Which is working based on directly perform operation on SE052.&lt;BR /&gt;&lt;BR /&gt;There is Understanding gap for certificate stores.&lt;BR /&gt;If I store CA certificate or server certificate inside SE052, than how it will become part of TLS handshake using SE052 ICs.&lt;BR /&gt;&lt;BR /&gt;If I will not stores it inside SE052 than how to add support for TLS handshake process.(Whole handshake process is offloaded to SE052).&lt;BR /&gt;&lt;BR /&gt;What approach should I use to handshake offloads to SE052 from host controller.&lt;BR /&gt;What maximum operations can i performs.&lt;BR /&gt;I can create wrapper function for possible each process.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/38145"&gt;@Kan&lt;/a&gt;&amp;nbsp;@kan_li&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 01 Jun 2026 09:25:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Secure-Authentication/MbedTLS-v-1-2-handshake/m-p/2374365#M2087</guid>
      <dc:creator>MohitGediya</dc:creator>
      <dc:date>2026-06-01T09:25:11Z</dc:date>
    </item>
    <item>
      <title>Re: MbedTLS v.1.2 handshake</title>
      <link>https://community.nxp.com/t5/Secure-Authentication/MbedTLS-v-1-2-handshake/m-p/2375383#M2090</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/262552"&gt;@MohitGediya&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;No—you should not design this as a&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG class=""&gt;full TLS 1.2 handshake offload&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;to SE052. The host TLS stack may use SE05x/SE052 as a&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG class=""&gt;secure crypto co-processor&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;, but not as a standalone TLS engine that owns the complete TLS protocol state machine. The host MCU/RTOS still runs mbedTLS/Zephyr TLS, parses and builds handshake messages, manages certificate exchange/validation flow, and uses the secure element for selected cryptographic operations and secure credential storage such as :&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;random generation, ECDH/ECDHE-related secret derivation, and&amp;nbsp;ECDSA or RSA sign/verify/decrypt depending on configuration and key type.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;For your questions:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;1)If I store CA certificate or server certificate inside SE052, than how it will become part of TLS handshake using SE052 ICs.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=""&gt;It becomes part of the handshake only after the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG class=""&gt;host retrieves or associates that certificate with the TLS stack&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;. The middleware example shows the certificate being read from the SE, parsed on the host, and then used by mbedTLS; the private key remains referenced inside the SE for sign/ECDH operations.&lt;/P&gt;
&lt;P class=""&gt;&lt;SPAN&gt;For CA certificates specifically, the common architecture is that the host uses the CA certificate to verify the peer certificate chain.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=""&gt;&lt;SPAN&gt;2)&amp;nbsp;If I will not stores it inside SE052 than how to add support for TLS handshake process.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=""&gt;You can still do the handshake normally by:&lt;/P&gt;
&lt;UL class=""&gt;
&lt;LI class=""&gt;keeping the certificate chain in host memory/flash&lt;/LI&gt;
&lt;LI class=""&gt;loading it into mbedTLS on the host&lt;/LI&gt;
&lt;LI class=""&gt;keeping only the private key in SE052 and associating it as a reference key for sign/ECDH operations&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hope that makes sense,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Have a great day,&lt;BR /&gt;Kan&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;BR /&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt;Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;
&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 03 Jun 2026 00:42:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Secure-Authentication/MbedTLS-v-1-2-handshake/m-p/2375383#M2090</guid>
      <dc:creator>Kan_Li</dc:creator>
      <dc:date>2026-06-03T00:42:46Z</dc:date>
    </item>
  </channel>
</rss>

