<?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: PRNG support in HSE for S32G3 in S32G</title>
    <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1974495#M11250</link>
    <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/241648"&gt;@Suresh_iast_332&lt;/a&gt;,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Yes there is a demo application with the RNG HSE functionalities. You should be able to download it from the NXP flexnet page, the same page from which you downloaded the HSE firmware, please follow these steps:&lt;/P&gt;
&lt;P&gt;- Sign in to your NXP account (&lt;A href="https://www.nxp.com/" target="_blank"&gt;NXP Semiconductors&lt;/A&gt;)&lt;/P&gt;
&lt;P&gt;- Click on &lt;STRONG&gt;My NXP Account&lt;/STRONG&gt; (top-right) and click on&lt;STRONG&gt; Software Licensing and Support&lt;/STRONG&gt; under the &lt;STRONG&gt;Licensing section&lt;/STRONG&gt; within the window it opens.&lt;/P&gt;
&lt;P&gt;- This will redirect you to another page. In this new page, select the option &lt;STRONG&gt;View Accounts&lt;/STRONG&gt; under the &lt;STRONG&gt;Software accounts&lt;/STRONG&gt; section.&lt;/P&gt;
&lt;P&gt;- This will again redirect you to another page. On this page, you should see an &lt;STRONG&gt;Automotive SW – S32G Standard Software&lt;/STRONG&gt; option, click on it.&lt;/P&gt;
&lt;P&gt;- now you should be able to see the &lt;STRONG&gt;Automotive SW - S32G - HSE Firmware&amp;nbsp;&lt;/STRONG&gt;option, click on it.&lt;/P&gt;
&lt;P&gt;- Now you should be able to see all the HSE versions available, click on &lt;STRONG&gt;HSE FW 0.2.51.0 SR STANDARD Release for S32G3&lt;/STRONG&gt;.&lt;/P&gt;
&lt;P&gt;- accept the Software Terms and Conditions, now you should be able to see all the files related to that HSE release, you should be able to see the executable&amp;nbsp;&lt;STRONG&gt;HSE_DEMOAPP_S32G3XX_0_2_51_0_D2404.exe&lt;/STRONG&gt;, download and install this package, by default it will be installed in your NXP folder (C:\NXP\HSE_DEMOAPP_S32G3XX_0_2_51_0)&lt;/P&gt;
&lt;P&gt;- Once installed you can open import the project from the S32 Design Studio, use the following path&amp;nbsp;&lt;STRONG&gt;C:\NXP\HSE_DEMOAPP_S32G3XX_0_2_51_0\demo_app\projects\S32DS\HSE_DEMO_S32G2XX&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;- In the main file (located in src\services\src) you will see a function call for &lt;STRONG&gt;void HSE_Crypto(void)&amp;nbsp;&lt;/STRONG&gt;inside this function you can see a call to&amp;nbsp;&lt;STRONG&gt;static void HSE_GetRng_Example(void)&lt;/STRONG&gt; there you can see how to use the RNG functionality of the HSE.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please follow the&amp;nbsp;&lt;STRONG&gt;HSE_DEMOAPP_S32G3XX_0_2_51_0_ReadMe.pdf&amp;nbsp;&lt;/STRONG&gt;located directly on the installation path of the HSE, there you will see the instructions on how to compile and execute the HSE demo app.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Let me know if this information was useful&lt;/P&gt;</description>
    <pubDate>Tue, 15 Oct 2024 17:41:38 GMT</pubDate>
    <dc:creator>alejandro_e</dc:creator>
    <dc:date>2024-10-15T17:41:38Z</dc:date>
    <item>
      <title>PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1968781#M11052</link>
      <description>&lt;P&gt;In HSE user manual of S32G3, Random Number Generation class DRG3, DRG4 and PTG3 uses the TRNG&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Suresh_iast_332_0-1728379070869.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/303365i4FB15223BC098910/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Suresh_iast_332_0-1728379070869.png" alt="Suresh_iast_332_0-1728379070869.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;is the PRNG is supported in HSE for s32G3?&lt;/P&gt;&lt;P&gt;if yes, may I know which HSE service API is responsible to generate the PRNG?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Suresh&lt;/P&gt;</description>
      <pubDate>Tue, 08 Oct 2024 09:23:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1968781#M11052</guid>
      <dc:creator>Suresh_iast_332</dc:creator>
      <dc:date>2024-10-08T09:23:00Z</dc:date>
    </item>
    <item>
      <title>Re: PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1970898#M11120</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/241648"&gt;@Suresh_iast_332&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Sorry for the late response, the teams bandwidth is limited at the moment.&lt;/P&gt;
&lt;P&gt;About your questions, the HSE does not support PRNG, since the aim of that module is crypto and secure operations it only supports TRNG.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Let me know if this information was useful or if you have more questions.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 10 Oct 2024 04:18:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1970898#M11120</guid>
      <dc:creator>alejandro_e</dc:creator>
      <dc:date>2024-10-10T04:18:02Z</dc:date>
    </item>
    <item>
      <title>Re: PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1973880#M11230</link>
      <description>&lt;P&gt;Thanks for response &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/238460"&gt;@alejandro_e&lt;/a&gt;&amp;nbsp;, is there any demo code or example code on HSE for Random number generation&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 15 Oct 2024 05:32:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1973880#M11230</guid>
      <dc:creator>Suresh_iast_332</dc:creator>
      <dc:date>2024-10-15T05:32:51Z</dc:date>
    </item>
    <item>
      <title>Re: PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1974495#M11250</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/241648"&gt;@Suresh_iast_332&lt;/a&gt;,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Yes there is a demo application with the RNG HSE functionalities. You should be able to download it from the NXP flexnet page, the same page from which you downloaded the HSE firmware, please follow these steps:&lt;/P&gt;
&lt;P&gt;- Sign in to your NXP account (&lt;A href="https://www.nxp.com/" target="_blank"&gt;NXP Semiconductors&lt;/A&gt;)&lt;/P&gt;
&lt;P&gt;- Click on &lt;STRONG&gt;My NXP Account&lt;/STRONG&gt; (top-right) and click on&lt;STRONG&gt; Software Licensing and Support&lt;/STRONG&gt; under the &lt;STRONG&gt;Licensing section&lt;/STRONG&gt; within the window it opens.&lt;/P&gt;
&lt;P&gt;- This will redirect you to another page. In this new page, select the option &lt;STRONG&gt;View Accounts&lt;/STRONG&gt; under the &lt;STRONG&gt;Software accounts&lt;/STRONG&gt; section.&lt;/P&gt;
&lt;P&gt;- This will again redirect you to another page. On this page, you should see an &lt;STRONG&gt;Automotive SW – S32G Standard Software&lt;/STRONG&gt; option, click on it.&lt;/P&gt;
&lt;P&gt;- now you should be able to see the &lt;STRONG&gt;Automotive SW - S32G - HSE Firmware&amp;nbsp;&lt;/STRONG&gt;option, click on it.&lt;/P&gt;
&lt;P&gt;- Now you should be able to see all the HSE versions available, click on &lt;STRONG&gt;HSE FW 0.2.51.0 SR STANDARD Release for S32G3&lt;/STRONG&gt;.&lt;/P&gt;
&lt;P&gt;- accept the Software Terms and Conditions, now you should be able to see all the files related to that HSE release, you should be able to see the executable&amp;nbsp;&lt;STRONG&gt;HSE_DEMOAPP_S32G3XX_0_2_51_0_D2404.exe&lt;/STRONG&gt;, download and install this package, by default it will be installed in your NXP folder (C:\NXP\HSE_DEMOAPP_S32G3XX_0_2_51_0)&lt;/P&gt;
&lt;P&gt;- Once installed you can open import the project from the S32 Design Studio, use the following path&amp;nbsp;&lt;STRONG&gt;C:\NXP\HSE_DEMOAPP_S32G3XX_0_2_51_0\demo_app\projects\S32DS\HSE_DEMO_S32G2XX&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;- In the main file (located in src\services\src) you will see a function call for &lt;STRONG&gt;void HSE_Crypto(void)&amp;nbsp;&lt;/STRONG&gt;inside this function you can see a call to&amp;nbsp;&lt;STRONG&gt;static void HSE_GetRng_Example(void)&lt;/STRONG&gt; there you can see how to use the RNG functionality of the HSE.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please follow the&amp;nbsp;&lt;STRONG&gt;HSE_DEMOAPP_S32G3XX_0_2_51_0_ReadMe.pdf&amp;nbsp;&lt;/STRONG&gt;located directly on the installation path of the HSE, there you will see the instructions on how to compile and execute the HSE demo app.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Let me know if this information was useful&lt;/P&gt;</description>
      <pubDate>Tue, 15 Oct 2024 17:41:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1974495#M11250</guid>
      <dc:creator>alejandro_e</dc:creator>
      <dc:date>2024-10-15T17:41:38Z</dc:date>
    </item>
    <item>
      <title>Re: PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1981055#M11424</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/238460"&gt;@alejandro_e&lt;/a&gt;,&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for response.&lt;/P&gt;&lt;P&gt;1) As per your input I have downloaded the&amp;nbsp;&lt;STRONG&gt;HSE_DEMOAPP_S32G3XX_0_2_51_0_D2404.exe and&lt;/STRONG&gt; installed I can see the&amp;nbsp;&lt;SPAN&gt;&lt;SPAN class=""&gt;HSE_GetRng_Example API in&amp;nbsp;hse_crypto.c file, which uses the&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG3&lt;/STRONG&gt; for Random number generation. This means the deterministic random number generation or Pseudo random number generation via HSE is same which uses &lt;STRONG&gt;HSE_RNG_CLASS_DRG3&amp;nbsp;&lt;/STRONG&gt;or&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG4&lt;/STRONG&gt;?&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class=""&gt;2) How the seed is generated for&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG3&lt;/STRONG&gt; and&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG4,&amp;nbsp;&lt;/STRONG&gt;from the example directly calling the &lt;STRONG&gt;GetRngNum&amp;nbsp;&lt;/STRONG&gt;API by passing&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG3 &lt;/STRONG&gt;without any entropy or seed. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class=""&gt;&lt;STRONG&gt;a.&lt;/STRONG&gt; So&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG3 &lt;/STRONG&gt;uses entropy generated by TRNG implicit and user no need pass or call TRNG API to generate entropy?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;b. &lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN class=""&gt;For&lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;&lt;SPAN&gt;HSE_RNG_CLASS_DRG3 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN class=""&gt;how&lt;/SPAN&gt;&lt;SPAN class=""&gt;&lt;SPAN&gt;&amp;nbsp;the seed or reseeding done, is it on every invoke of&amp;nbsp;&lt;STRONG&gt;GetRngNum&amp;nbsp; API or is there any other mechanism?&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;SPAN&gt;&lt;STRONG&gt;c. &lt;/STRONG&gt;If we want to reseed the &lt;STRONG&gt;DRG&lt;/STRONG&gt; for certain count of Random number generation ( eg. 10 or 20 random numbers via DRG) then where and how we could reseed the&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG3 and&amp;nbsp;HSE_RNG_CLASS_DRG4?&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;SPAN&gt;&lt;STRONG&gt;d.&amp;nbsp; &lt;/STRONG&gt;From the HSE service API reference manual we are not able to find the API for generating Random Number using &lt;STRONG&gt;TRNG&lt;/STRONG&gt;&lt;STRONG&gt;. &lt;/STRONG&gt;could please let us know which API can be used for Random number generation using &lt;STRONG&gt;TRNG&lt;/STRONG&gt;?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;SPAN&gt;Best Regards&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;SPAN&gt;Suresh&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 24 Oct 2024 08:51:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1981055#M11424</guid>
      <dc:creator>Suresh_iast_332</dc:creator>
      <dc:date>2024-10-24T08:51:34Z</dc:date>
    </item>
    <item>
      <title>Re: PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1981509#M11451</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/241648"&gt;@Suresh_iast_332&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Here are the answers to your questions:&lt;/P&gt;
&lt;P&gt;1 - The&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_X&amp;nbsp;&lt;/STRONG&gt;defines the reseeding of the of the RNG module as explained in the&amp;nbsp;&lt;STRONG&gt;HSE Service API Reference Manual &lt;/STRONG&gt;[page 251, 0.2.51.0] that you can find in your installation path, for me it is&amp;nbsp;C:/NXP/HSE_FW_S32G3XX_0_2_51_0/&lt;STRONG&gt;docs&lt;/STRONG&gt;/HSE_FW_H_S32G3XX_0.2.51.0_Service_API_Reference_Manual.pdf:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="alejandro_e_0-1729804304089.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/306858i7DA16245AED83428/image-size/medium?v=v2&amp;amp;px=400" role="button" title="alejandro_e_0-1729804304089.png" alt="alejandro_e_0-1729804304089.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;2 - for the entropy/seed you can see the following at the end of the same page of the API reference manual:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="alejandro_e_1-1729804383962.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/306859i95D22A8AC2025485/image-size/medium?v=v2&amp;amp;px=400" role="button" title="alejandro_e_1-1729804383962.png" alt="alejandro_e_1-1729804383962.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;2a - Yes, exactly.&lt;/P&gt;
&lt;P&gt;2b - the&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG3&amp;nbsp;&lt;/STRONG&gt;does not do a reseeding on each call, as you can see above.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;2c - if you need to reseed the &lt;STRONG&gt;TRNG&amp;nbsp;&lt;/STRONG&gt;module every X number of calls, you will need to implement your own control flow. For example, if you want to reseed every 10 calls, you can call the &lt;STRONG&gt;TRNG&amp;nbsp;&lt;/STRONG&gt;functionality with&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG3&amp;nbsp;&lt;/STRONG&gt;9 times and on the 10th time you use&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG4&amp;nbsp;&lt;/STRONG&gt;to generete a reseed, so the next 9 calls have a different seed, and you repeat the flow again.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Depending on your performance requirements you can use&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG4&amp;nbsp;&lt;/STRONG&gt;or&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_PTG3&lt;/STRONG&gt;.&lt;/P&gt;
&lt;P&gt;2d - As I mentioned before and as shown in the last image, the HSE &lt;STRONG&gt;always&amp;nbsp;&lt;/STRONG&gt;provides TRNG functionality, therefore it does not provide &lt;STRONG&gt;PRNG&lt;/STRONG&gt;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Let me know if this information solves your question.&lt;/P&gt;</description>
      <pubDate>Thu, 24 Oct 2024 21:24:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1981509#M11451</guid>
      <dc:creator>alejandro_e</dc:creator>
      <dc:date>2024-10-24T21:24:25Z</dc:date>
    </item>
    <item>
      <title>Re: PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1981814#M11458</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/238460"&gt;@alejandro_e&lt;/a&gt;&amp;nbsp;,&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for your quick response.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am adding some more quires related to my previous question&amp;nbsp;&lt;/P&gt;&lt;P&gt;1. We want to generate &lt;STRONG&gt;non-deterministic&lt;/STRONG&gt; random number using &lt;STRONG&gt;TRNG&lt;/STRONG&gt; so which class from HSE API service reference manual we can use?&amp;nbsp;&lt;BR /&gt;2.We want to generate &lt;STRONG&gt;deterministic&lt;/STRONG&gt; random number using &lt;STRONG&gt;PRNG&lt;/STRONG&gt; so which class from HSE API service reference manual we can use?&lt;BR /&gt;3.if we want to use seed form &lt;STRONG&gt;TRNG&lt;/STRONG&gt; for &lt;STRONG&gt;PRNG&lt;/STRONG&gt;, then can we first call &lt;STRONG&gt;TRNG&lt;/STRONG&gt;&amp;nbsp;HSE API for random number generation and then call &lt;STRONG&gt;PRNG HSE API&amp;nbsp;&lt;/STRONG&gt;for deterministic random number generation&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Suresh_iast_332_0-1729841959340.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/306943i78702CC150133E61/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Suresh_iast_332_0-1729841959340.png" alt="Suresh_iast_332_0-1729841959340.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;4. From above classes to achieve point 3 can we have the following&lt;BR /&gt;a. can we call &lt;STRONG&gt;HSE API&lt;/STRONG&gt; &lt;STRONG&gt;GetRngNum&lt;/STRONG&gt; with &lt;STRONG&gt;HSE_RNG_CLASS_DRG4&lt;/STRONG&gt; (Non-Deterministic) for&amp;nbsp;&lt;STRONG&gt;TRNG&lt;/STRONG&gt; and then call &lt;STRONG&gt;GetRngNum&lt;/STRONG&gt; with &lt;STRONG&gt;HSE_RNG_CLASS_DRG3&lt;/STRONG&gt;&amp;nbsp;(Deterministic) for &lt;STRONG&gt;PRNG&lt;/STRONG&gt;?&lt;BR /&gt;b. can we achieve generating deterministic random number (&lt;STRONG&gt;PRNG&lt;/STRONG&gt;) via HSE or is there is any other option/API to generate &lt;STRONG&gt;PRNG&lt;/STRONG&gt;?&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 25 Oct 2024 07:40:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1981814#M11458</guid>
      <dc:creator>Suresh_iast_332</dc:creator>
      <dc:date>2024-10-25T07:40:58Z</dc:date>
    </item>
    <item>
      <title>Re: PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1982199#M11462</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/241648"&gt;@Suresh_iast_332&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Here are the answers to your questions:&lt;/P&gt;
&lt;P&gt;1 - I can recommend using&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG4&amp;nbsp;&lt;/STRONG&gt;or&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG4&amp;nbsp;&lt;/STRONG&gt;depending on your security and performance requirements.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="alejandro_e_0-1729870521503.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/307034i36D4E83D216EACEE/image-size/medium?v=v2&amp;amp;px=400" role="button" title="alejandro_e_0-1729870521503.png" alt="alejandro_e_0-1729870521503.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;2 - The closes to &lt;STRONG&gt;PRNG&amp;nbsp;&lt;/STRONG&gt;functionality could be using&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_DRG3&lt;/STRONG&gt;:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="alejandro_e_1-1729870584023.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/307035i8A17F400ED0530D7/image-size/medium?v=v2&amp;amp;px=400" role="button" title="alejandro_e_1-1729870584023.png" alt="alejandro_e_1-1729870584023.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;where prediction resistance means [page 23-24, &lt;A href="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-90Ar1.pdf" target="_blank"&gt;https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-90Ar1.pdf&lt;/A&gt;]:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="alejandro_e_2-1729871538362.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/307037i88938363F7D81A78/image-size/medium?v=v2&amp;amp;px=400" role="button" title="alejandro_e_2-1729871538362.png" alt="alejandro_e_2-1729871538362.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;3/4 -&amp;nbsp; The HSE does not directly give the &lt;STRONG&gt;PRNG&lt;/STRONG&gt; functionality, furthermore you cannot access the seed used internally by the HSE. One thing you could do is implement you own &lt;STRONG&gt;PRNG&amp;nbsp;&lt;/STRONG&gt;algorithm for example&amp;nbsp;&lt;A href="https://en.wikipedia.org/wiki/Counter-based_random_number_generator#Squares_RNG" target="_blank"&gt;https://en.wikipedia.org/wiki/Counter-based_random_number_generator#Squares_RNG&lt;/A&gt;&amp;nbsp;for which you can find source code here:&amp;nbsp;&lt;A href="https://github.com/FlorisSteenkamp/squares-rng" target="_blank"&gt;https://github.com/FlorisSteenkamp/squares-rng&lt;/A&gt;, there you can see there is a C implementation in the readme. Please consider that &lt;STRONG&gt;this code is not provided by NXP and therefore we do not provide support or any kind of license or warranty&lt;/STRONG&gt;.&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;With that said, what you could do is use a random number generated by HSE (for example using&amp;nbsp;&lt;STRONG&gt;HSE_RNG_CLASS_PTG3&lt;/STRONG&gt; to have the highest level of entropy) as the seed for your&amp;nbsp; &lt;STRONG&gt;PRNG&lt;/STRONG&gt; algorithm. As I mentioned, the code I shared and the example of the implementation are not provided by NXP and therefore we won't be able to give you any support.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Let me know if this information answers your questions.&lt;/P&gt;</description>
      <pubDate>Fri, 25 Oct 2024 16:49:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1982199#M11462</guid>
      <dc:creator>alejandro_e</dc:creator>
      <dc:date>2024-10-25T16:49:34Z</dc:date>
    </item>
    <item>
      <title>Re: PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1995005#M11732</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/241648"&gt;@Suresh_iast_332&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;I want to correct a mistake. This won't change anything in your implementation and most of the explanation stills holds valid, it is just a concept clarification.&lt;/P&gt;
&lt;P&gt;The service ID &lt;STRONG&gt;HSE_SRV_ID_GET_RANDOM_NUM&lt;/STRONG&gt; is used to generate &lt;STRONG&gt;PRNG&lt;/STRONG&gt;. The parameter of this service is struct &lt;STRONG&gt;hseGetRandomNumSrv_t&lt;/STRONG&gt;, which contains the type &lt;STRONG&gt;hseRngClass_t&lt;/STRONG&gt; as a member. The type &lt;STRONG&gt;hseRngClass_t&lt;/STRONG&gt; is used to specify the &lt;STRONG&gt;DRGN&lt;/STRONG&gt; (Deterministic Random Number Generator) class: &lt;STRONG&gt;DRG3&lt;/STRONG&gt;, &lt;STRONG&gt;DRG4&lt;/STRONG&gt; and &lt;STRONG&gt;PTG3&lt;/STRONG&gt;. The &lt;STRONG&gt;DRNG&lt;/STRONG&gt; is also known as &lt;STRONG&gt;PRNG&lt;/STRONG&gt;. In other words, the HSE service &lt;STRONG&gt;HSE_SRV_ID_GET_RANDOM_NUM&lt;/STRONG&gt; is used to generate &lt;STRONG&gt;PRGN&lt;/STRONG&gt;.&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;The &lt;STRONG&gt;TRNG&lt;/STRONG&gt; generated by HSE cannot be used by the host, instead it is used by the &lt;STRONG&gt;DRNG&lt;/STRONG&gt; as a seed. More information about HSE RNG service is described in &lt;STRONG&gt;chapter 7.5 of HSE Firmware Reference manual&lt;/STRONG&gt;&amp;nbsp;[HSE_H/M Firmware Reference Manual, Rev.2.5, 10/2024], this document is in the secure file section of the S32G3, you may need to request access to get this file, for this please contact your FAE/NXP representative.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Alejandro&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 14 Nov 2024 23:50:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1995005#M11732</guid>
      <dc:creator>alejandro_e</dc:creator>
      <dc:date>2024-11-14T23:50:53Z</dc:date>
    </item>
    <item>
      <title>Re: PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1995240#M11736</link>
      <description>&lt;P&gt;Hello Team,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Could you please clarify the below points regarding reseeding&lt;/P&gt;&lt;P&gt;1.Can we do reseeding for PRNG via TRNG for a particular condition like reseeding shall happen after every 10 call.&lt;/P&gt;&lt;P&gt;2.If not what NXP is suggesting for a conditional reseeding.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;</description>
      <pubDate>Fri, 15 Nov 2024 07:19:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1995240#M11736</guid>
      <dc:creator>kavyapk</dc:creator>
      <dc:date>2024-11-15T07:19:15Z</dc:date>
    </item>
    <item>
      <title>Re: PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1995692#M11742</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/234164"&gt;@kavyapk&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;As mentioned in one of my previous replies you need to implement your own logic to reseed every X number of calls, for example:&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;you can call the&amp;nbsp;&lt;STRONG&gt;P&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;STRONG&gt;RNG&amp;nbsp;&lt;/STRONG&gt;&lt;SPAN&gt;functionality with&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;HSE_RNG_CLASS_DRG3&amp;nbsp;&lt;/STRONG&gt;&lt;SPAN&gt;9 times and on the 10th time you use&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;HSE_RNG_CLASS_DRG4&lt;/STRONG&gt;&amp;nbsp;(this class generated reseeding on each service call) and&amp;nbsp;&lt;SPAN&gt;generate a reseed, so the next 9 calls have a different seed, and you repeat the flow again.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;As mentioned, most of the explanation in this post still holds valid after my clarification, it is just a concept change, but the implementation suggestions are still correct.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best regards,&lt;/P&gt;
&lt;P&gt;Alejandro&lt;/P&gt;</description>
      <pubDate>Fri, 15 Nov 2024 23:05:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1995692#M11742</guid>
      <dc:creator>alejandro_e</dc:creator>
      <dc:date>2024-11-15T23:05:28Z</dc:date>
    </item>
    <item>
      <title>Re: PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1999778#M11819</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/238460"&gt;@alejandro_e&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for your previous response.&lt;/P&gt;&lt;P&gt;As per response TRNG cannot be used by the Host instead it is used by the DRNG as a seed.&amp;nbsp; So, is this the same implementation for the premium package or do we have option to use TRNG at the host for random number generation?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;/P&gt;&lt;P&gt;Suresh&lt;/P&gt;</description>
      <pubDate>Fri, 22 Nov 2024 05:53:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/1999778#M11819</guid>
      <dc:creator>Suresh_iast_332</dc:creator>
      <dc:date>2024-11-22T05:53:25Z</dc:date>
    </item>
    <item>
      <title>Re: PRNG support in HSE for S32G3</title>
      <link>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/2000324#M11836</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/241648"&gt;@Suresh_iast_332&lt;/a&gt;,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The premium package is a version created with each clients requirements, therefore there is not a unique premium package. You will need to speak with your FAE/NXP representative to determine which functionalities can be enabled/customized.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Let me know if you have more questions regarding this topic.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best regards,&lt;/P&gt;
&lt;P&gt;Alejandro&lt;/P&gt;</description>
      <pubDate>Fri, 22 Nov 2024 18:35:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32G/PRNG-support-in-HSE-for-S32G3/m-p/2000324#M11836</guid>
      <dc:creator>alejandro_e</dc:creator>
      <dc:date>2024-11-22T18:35:03Z</dc:date>
    </item>
  </channel>
</rss>

