<?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>i.MX ProcessorsのトピックRe: HABv4 encryption with 4096-bit keys</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653090#M99972</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Yuri,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks, it now works fine. Note this had nothing to do with the key length actually.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The problem was with the&amp;nbsp;[Authenticate Data] section. It was authenticating the whole space before U-Boot entry (IVT + DCD + padding). This works in open device (no event).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But apparently when you close the device, the BootROM only copies the IVT + DCD, not the padding, hence the failure.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Gary&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 17 Nov 2016 10:40:08 GMT</pubDate>
    <dc:creator>gary_bisson</dc:creator>
    <dc:date>2016-11-17T10:40:08Z</dc:date>
    <item>
      <title>HABv4 encryption with 4096-bit keys</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653086#M99968</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've written an article on how to use HABv4 on i.MX6/i.MX7 &amp;nbsp;to sign and encrypt your bootloader.&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://boundarydevices.com/high-assurance-boot-hab-dummies/" title="https://boundarydevices.com/high-assurance-boot-hab-dummies/"&gt;https://boundarydevices.com/high-assurance-boot-hab-dummies/&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;During my testing, I've used &lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;4096-bit keys&lt;/STRONG&gt;&lt;/SPAN&gt; and everything was working fine in open mode, no HAB events. However when I closed the device it wasn't booting!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I reported the issue here already with no answer:&lt;/P&gt;&lt;P&gt;&lt;A _jive_internal="true" class="link-titled" href="https://community.nxp.com/docs/DOC-330622#comment-37543" title="https://community.nxp.com/docs/DOC-330622#comment-37543"&gt;https://community.nxp.com/docs/DOC-330622#comment-37543&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In order to boot the board with a signed bootloader I've had to add a 'Engine = CAAM' line &lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;although it was working fine in open mode with no HAB events reported!&lt;/STRONG&gt;&lt;/SPAN&gt; I think this should be documented somewhere.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However I couldn't get encryption to work, although, once again,&amp;nbsp;&lt;STRONG style="text-decoration: underline;"&gt;it was working in open mode&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So my question: &lt;STRONG&gt;have 4096-bit keys been tested with encryption on close devices?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Looking at the HABCST_UG.pdf, it seems that a configuration for 4096 keys is provided (section 5.3.5):&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;It doesn't have the [UNLOCK] section&lt;UL&gt;&lt;LI&gt;Does this configuration force to set the RNG Trim in Fuse?&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;It is providing the .der files instead of the .pem files, is it normal?&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;BR /&gt;Please advise.&lt;BR /&gt; &lt;BR /&gt;Regards,&lt;BR /&gt;Gary&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Oct 2016 09:59:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653086#M99968</guid>
      <dc:creator>gary_bisson</dc:creator>
      <dc:date>2016-10-20T09:59:23Z</dc:date>
    </item>
    <item>
      <title>Re: HABv4 encryption with 4096-bit keys</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653087#M99969</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Hello,&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; Please create request. &lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;A href="https://community.nxp.com/docs/DOC-329745"&gt;https://community.nxp.com/docs/DOC-329745&lt;/A&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Have a great day,&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Yuri&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Note: If this post answers your question, please click the Correct &lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Answer button. Thank you!&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Oct 2016 02:59:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653087#M99969</guid>
      <dc:creator>Yuri</dc:creator>
      <dc:date>2016-10-21T02:59:58Z</dc:date>
    </item>
    <item>
      <title>Re: HABv4 encryption with 4096-bit keys</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653088#M99970</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Yuri,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Isn't this support request for people that want something specific? Here I'm only asking for something that you claim in every documentation and every tutorial is working.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So it is not so much of a support request but instead a confirmation request that this feature has been tested with an explanation on how it has been verified.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please advise.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Gary&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Oct 2016 21:24:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653088#M99970</guid>
      <dc:creator>gary_bisson</dc:creator>
      <dc:date>2016-10-21T21:24:54Z</dc:date>
    </item>
    <item>
      <title>Re: HABv4 encryption with 4096-bit keys</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653089#M99971</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; As for 4096-bit key : there is an example, that I cannot locate here.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Yuri.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 24 Oct 2016 03:09:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653089#M99971</guid>
      <dc:creator>Yuri</dc:creator>
      <dc:date>2016-10-24T03:09:28Z</dc:date>
    </item>
    <item>
      <title>Re: HABv4 encryption with 4096-bit keys</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653090#M99972</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Yuri,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks, it now works fine. Note this had nothing to do with the key length actually.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The problem was with the&amp;nbsp;[Authenticate Data] section. It was authenticating the whole space before U-Boot entry (IVT + DCD + padding). This works in open device (no event).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But apparently when you close the device, the BootROM only copies the IVT + DCD, not the padding, hence the failure.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Gary&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Nov 2016 10:40:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653090#M99972</guid>
      <dc:creator>gary_bisson</dc:creator>
      <dc:date>2016-11-17T10:40:08Z</dc:date>
    </item>
    <item>
      <title>Re: HABv4 encryption with 4096-bit keys</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653091#M99973</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Gary,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That means the (zero) padding after DCD isn't copied. This means that the authentication has to be very specific. I have few questions for you before I try them myself&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;How does the Boot ROM know the size of the DCD? My DCD header is "D2 00 08 40". Is "0008", 8 bytes the size of DCD. So, should I be very particular in authenticating it exactly to that 8 bytes?&lt;/LI&gt;&lt;LI&gt;What happenes if the DCD address is made null (0x0) in the IVT ? I used multi-stage booting: "SPL + u-boot.img". So, DCD is not actually needed as that part is done by the second stage boot loader. Do you still think in closed mode, I have to sign the DCD to that 8 bytes mentioned above?&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Greets,&lt;/P&gt;&lt;P&gt;Satya&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 29 Nov 2016 10:58:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653091#M99973</guid>
      <dc:creator>satyadamarla</dc:creator>
      <dc:date>2016-11-29T10:58:49Z</dc:date>
    </item>
    <item>
      <title>Re: HABv4 encryption with 4096-bit keys</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653092#M99974</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Satya,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I *believe* that it means that the BootROM doesn't copy the zero padding, or at least not entirely. But at this point it is an assumption since NXP didn't comment on this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As for your other questions:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Yes my guess is that the boot ROM reads the&amp;nbsp;DCD Header (0xD2 tag), so yes I'd put the exact value. Note we are working on the U-Boot community so the imximage tool displays that value directly:&lt;BR /&gt;&lt;A class="link-titled" href="http://lists.denx.de/pipermail/u-boot/2016-November/273067.html" title="http://lists.denx.de/pipermail/u-boot/2016-November/273067.html"&gt;[U-Boot] [PATCH] tools: imximage: display DCD block offset, length&lt;/A&gt;&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;Don't know, but I guess it is fine if the pointer is null. How can the BootROM find the DCD Header above if the DCD pointer is null? I think you can just discard the DCD signing in that case, but there's only one way to know for sure ;-)&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Gary&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 29 Nov 2016 11:48:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/HABv4-encryption-with-4096-bit-keys/m-p/653092#M99974</guid>
      <dc:creator>gary_bisson</dc:creator>
      <dc:date>2016-11-29T11:48:21Z</dc:date>
    </item>
  </channel>
</rss>

