<?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>Kinetis MicrocontrollersのトピックRe: Kinetis KW2X AES128 CBC and CTR (CCM)</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-KW2X-AES128-CBC-and-CTR-CCM/m-p/407063#M22819</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;The cryptographic module from MC1322X had full AES CCM acceleration.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The FSL_FEATURE_SOC_CAU_COUNT macro is defined in the MCU_features.h header file (ex: MKW24D5_features.h). If it is set to 1, then the MCU has CAU support. You should not modify the value of these defines!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The MKW24D5 has MMCAU which supports the following algorithms: DES, 3DES, AES, MD5, SHA-1, and SHA-256.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The SecLib.h also contains API for AES CCM which in case of MKW24D5 uses part HW part SW. The actual AES encryption is done by the MMCAU module.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;George&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 30 Oct 2015 12:55:38 GMT</pubDate>
    <dc:creator>georgecapraru</dc:creator>
    <dc:date>2015-10-30T12:55:38Z</dc:date>
    <item>
      <title>Kinetis KW2X AES128 CBC and CTR (CCM)</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-KW2X-AES128-CBC-and-CTR-CCM/m-p/407062#M22818</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm using a Kinetis KW21D512 MCU and am porting / implementing our original code from the MC1322X (MC13224).&amp;nbsp; In the original code, we are using AES 128 CCM to encrypt our data with both a key and a CTR Key.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; For the MC1322X code, we use the original Freescale Security Management, which has 2 functions we use:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FuncReturn_t CipherConfigure(cipher_mode_t CipherMode, cipher_key_t *pCipherKey, ctr_value_t *pCtrValue)&lt;/P&gt;&lt;P&gt;FuncReturn_t CipherMsgU8(uint8_t *pu8CipherBuffer, uint8_t u8BufferLength)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But Freescale's Cau API only has a few functions for encrypting data:&lt;/P&gt;&lt;P&gt;cau_aes_set_key&lt;/P&gt;&lt;P&gt;cau_aes_encrypt&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So that didn't seem like it had the support we needed.&amp;nbsp; Looking at the KW2xD_SMAC example, the SecLib.h appears to have more AES128 support(which uses the 2 functions above):&lt;/P&gt;&lt;P&gt;AES_128_CBC_Encrypt&lt;/P&gt;&lt;P&gt;AES_128_CTR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Using these two function, I was able to match the same encryption as the MC1322X code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So is there a way to tell if it is using the MCU hardware to do the encryption or if it is doing it all in software?&lt;/P&gt;&lt;P&gt;I set the FSL_FEATURE_SOC_CAU_COUNT macro, is that enough to set it up to use the hardware?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Oct 2015 18:52:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-KW2X-AES128-CBC-and-CTR-CCM/m-p/407062#M22818</guid>
      <dc:creator>davidguinn</dc:creator>
      <dc:date>2015-10-16T18:52:37Z</dc:date>
    </item>
    <item>
      <title>Re: Kinetis KW2X AES128 CBC and CTR (CCM)</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-KW2X-AES128-CBC-and-CTR-CCM/m-p/407063#M22819</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;The cryptographic module from MC1322X had full AES CCM acceleration.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The FSL_FEATURE_SOC_CAU_COUNT macro is defined in the MCU_features.h header file (ex: MKW24D5_features.h). If it is set to 1, then the MCU has CAU support. You should not modify the value of these defines!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The MKW24D5 has MMCAU which supports the following algorithms: DES, 3DES, AES, MD5, SHA-1, and SHA-256.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The SecLib.h also contains API for AES CCM which in case of MKW24D5 uses part HW part SW. The actual AES encryption is done by the MMCAU module.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;George&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Oct 2015 12:55:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Kinetis-KW2X-AES128-CBC-and-CTR-CCM/m-p/407063#M22819</guid>
      <dc:creator>georgecapraru</dc:creator>
      <dc:date>2015-10-30T12:55:38Z</dc:date>
    </item>
  </channel>
</rss>

