<?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>S32KのトピックRe: [Security]  secure boot Verify interface confirm</title>
    <link>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1797337#M31192</link>
    <description>&lt;P&gt;Dear NXPs:&lt;BR /&gt;Thank you for your strong support. I want to verify the content of D-Flash (Bootloader) on P-Flash (BootManager). According to your suggestion, I should use normal CMD_VERIFY_MAC command. But IC's resources are limited.&lt;BR /&gt;RAM size: 22K&lt;BR /&gt;D-Flash size: 32K&lt;/P&gt;&lt;P&gt;I understand that first, the contents of D-Flash (1000_0000, 1000_8000, 32K) need to be copied to RAM, and then the normal CMD_VERIFY_MAC command is called for verification.&lt;/P&gt;&lt;P&gt;Q1: How to copy the contents of D-Flash to RAM? memcpy? ?&lt;BR /&gt;Q2: Our actual RAM size is only 22K. It seems that the entire D-Flash (32K) cannot be copied to RAM. In order to verify the D-Flash, what should I do?&lt;/P&gt;</description>
    <pubDate>Tue, 30 Jan 2024 08:13:23 GMT</pubDate>
    <dc:creator>Gideon</dc:creator>
    <dc:date>2024-01-30T08:13:23Z</dc:date>
    <item>
      <title>[Security]  secure boot Verify interface confirm</title>
      <link>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1796644#M31151</link>
      <description>&lt;P&gt;Dear NXPs：&lt;/P&gt;&lt;P&gt;S32K146&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;background:&lt;/P&gt;&lt;P&gt;CMD_BOOT_DEFINE→BootManager 6KB Use CSEC's secureboot mechanism for verification.&lt;/P&gt;&lt;P&gt;The secondary verification area is Flex NVM Bootloader;&lt;/P&gt;&lt;P&gt;The area of third-level verification is Application;&lt;/P&gt;&lt;P&gt;question:&lt;/P&gt;&lt;P&gt;Q1: When BootManager verifies the Flex NVM Bootloader area, does it call the CMD_VERIFY_MAC or CMD_VERIFY_MAC (pointer method) interface? There are differences between these two interfaces but I don't understand them thoroughly. please. Which one should I use?&lt;/P&gt;&lt;P&gt;Q2: When the Flex NVM Bootloader checks the Application area, should CMD_VERIFY_MAC or CMD_VERIFY_MAC (pointer method) be used? It’s the same question as Q1.&lt;/P&gt;&lt;P&gt;Q3: When the second-level verification fails or the third-level verification fails, CMD_BOOT_FAILURE needs to be called. Is this true?&lt;/P&gt;&lt;P&gt;Q4: If the trust chain image verification is successful (the entire three-level verification is successful), CMD_BOOT_OK needs to be called, is that right?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 25 Apr 2024 12:49:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1796644#M31151</guid>
      <dc:creator>Gideon</dc:creator>
      <dc:date>2024-04-25T12:49:45Z</dc:date>
    </item>
    <item>
      <title>Re: [Security]  secure boot Verify interface confirm</title>
      <link>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1796824#M31166</link>
      <description>&lt;P&gt;Hi &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/218898"&gt;@Gideon&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;the pointer method works only on program flash. If you want to check also FlexNVM code, you need to use normal CMD_VERIFY_MAC command. In case of program flash, I recommend to use pointer method which is much faster.&lt;/P&gt;
&lt;P&gt;Yes, if second-level verification fails or the third-level verification fails, CMD_BOOT_FAILURE should be called to finish the secure boot process. Then the boot protected keys cannot be used. &lt;/P&gt;
&lt;P&gt;If it is successful, you should call CMD_BOOT_OK to finish the boot process. It's not mandatory but it's recommended. It will lock the process, so no one can call CMD_BOOT_FAILURE or CMD_BOOT_OK again.&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Lukas&lt;/P&gt;</description>
      <pubDate>Mon, 29 Jan 2024 11:37:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1796824#M31166</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2024-01-29T11:37:16Z</dc:date>
    </item>
    <item>
      <title>Re: [Security]  secure boot Verify interface confirm</title>
      <link>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1797337#M31192</link>
      <description>&lt;P&gt;Dear NXPs:&lt;BR /&gt;Thank you for your strong support. I want to verify the content of D-Flash (Bootloader) on P-Flash (BootManager). According to your suggestion, I should use normal CMD_VERIFY_MAC command. But IC's resources are limited.&lt;BR /&gt;RAM size: 22K&lt;BR /&gt;D-Flash size: 32K&lt;/P&gt;&lt;P&gt;I understand that first, the contents of D-Flash (1000_0000, 1000_8000, 32K) need to be copied to RAM, and then the normal CMD_VERIFY_MAC command is called for verification.&lt;/P&gt;&lt;P&gt;Q1: How to copy the contents of D-Flash to RAM? memcpy? ?&lt;BR /&gt;Q2: Our actual RAM size is only 22K. It seems that the entire D-Flash (32K) cannot be copied to RAM. In order to verify the D-Flash, what should I do?&lt;/P&gt;</description>
      <pubDate>Tue, 30 Jan 2024 08:13:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1797337#M31192</guid>
      <dc:creator>Gideon</dc:creator>
      <dc:date>2024-01-30T08:13:23Z</dc:date>
    </item>
    <item>
      <title>Re: [Security]  secure boot Verify interface confirm</title>
      <link>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1797521#M31202</link>
      <description>&lt;P&gt;You are not supposed to copy whole flash image to the RAM when using CMD_VERIFY_MAC. You are supposed to continuously push 128bit data blocks to CSEc via CSE_PRAM interface, so you do not need normal RAM. Do you use SDK? Or do you use drivers from application note AN5401? If yes, you can just call a function which will do that for you (AN5401 - CMAC_VERIFY(), SDK -&amp;nbsp;CSEC_DRV_VerifyMAC()).&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Lukas&lt;/P&gt;</description>
      <pubDate>Tue, 30 Jan 2024 07:26:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1797521#M31202</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2024-01-30T07:26:53Z</dc:date>
    </item>
    <item>
      <title>Re: [Security]  secure boot Verify interface confirm</title>
      <link>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1798189#M31233</link>
      <description>&lt;P&gt;Dear NXPs：&lt;/P&gt;&lt;P&gt;Thank you for your strong support. For the verification of D-Flash, I use the SDK - CSEC_DRV_VerifyMAC(), then I need to read the 128bit data of D-Flash (1000_0000, 1000_8000, 32K) to the CSEC_DRV_VerifyMAC() interface each time.&lt;BR /&gt;Q1: It seems that this is a loop process. Every time there is a loop, the verifStatus of the CSEC_DRV_VerifyMAC() interface will return false. VerifStatus will not return true until the last data block is verified. Is my understanding correct?&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 31 Jan 2024 02:42:14 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1798189#M31233</guid>
      <dc:creator>Gideon</dc:creator>
      <dc:date>2024-01-31T02:42:14Z</dc:date>
    </item>
    <item>
      <title>Re: [Security]  secure boot Verify interface confirm</title>
      <link>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1798669#M31273</link>
      <description>&lt;P&gt;Yes, that's correct. Function CSEC_DRV_VerifyMAC will do that for you. Just call that function and check the result.&lt;/P&gt;</description>
      <pubDate>Wed, 31 Jan 2024 12:17:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Security-secure-boot-Verify-interface-confirm/m-p/1798669#M31273</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2024-01-31T12:17:53Z</dc:date>
    </item>
  </channel>
</rss>

