This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC3235MODASF:AES-CCM 配置

Guru**** 1753810 points
Other Parts Discussed in Thread: CC3235SF
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1385599/cc3235modasf-aes-ccm-configuration

器件型号:CC3235MODASF
Thread 中讨论的其他器件:CC3235SF

工具与软件:

您好!

我正在 CC3235SF 中实施 AES-CCM 算法。 我不确定如何配置 CryptoCC32XX_AesParams 中的随机存取存储器和 MAC 大小。  CryptoCC32XX_AesAadParams 作为附加身份验证数据提供、其用途是什么。 这是可选的吗? 本例中的输入是什么?

如果没有任何初始化矢量或  CryptoCC32XX_AesAadParams、加密/解密都能正常工作。

请告诉我有关 AES CCM 库的文档。 simplelink_cc32xx_sdk_6_10_00_05/docs/drivers/doxygen/html/index.html 中是否有其他 API 指南?

谢谢

SN

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我包含了我们所有关于 AES 加密的文档。

    https://www.ti.com/lit/an/swra509c/swra509c.pdf 

    https://dev.ti.com/tirex/explore/node?a=IOGqZri__3.80.13.03&node=A__ANnox4Ad0GiVUzt2hT4adw__com.ti.SIMPLELINK_CC32XX_SDK__fc2e6sr__LATEST&r=wg2mfY3__6.10.00.00 

    https://dev.ti.com/tirex/explore/node?a=IOGqZri__3.80.13.03&node=A__AaAWCBblrIypUYklEIIfkg__SIMPLELINK-ACADEMY-CC32XX__-LLELo7__LATEST&r=wg2mfY3__6.10.00.00 

    此致!

    Rogelio

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我已经浏览过相关文档、但它仍然无法处理初始化矢量。 下面是我的代码:

    CryptoCC32XX_Handle     cryptoHandle1;
    
    CryptoCC32XX_EncryptParams aesCCMParams;
    
    CryptoCC32XX_EncryptMethod  method;
    
    unsigned char               plainData[16] = "plaindata12345";
    unsigned int                plainDataLen = sizeof(plainData);
    unsigned char               cipherData[16];
    unsigned int                cipherDataLen;
    
    unsigned char aesKey[16]= "aesencyrptionke";
    uint8_t aesIV[16]="000000000000002";
    unsigned char decryptedData[16]="";
    int32_t retVal = -1;
    
    void encryptFunc()
    {
     method = CryptoCC32XX_AES_CCM;
        aesCCMParams.aes.pKey = &aesKey[0];
        aesCCMParams.aes.keySize = CryptoCC32XX_AES_KEY_SIZE_128BIT;
        aesCCMParams.aes.pIV = &aesIV[0]; 
        cryptoHandle1  = CryptoCC32XX_open(0, CryptoCC32XX_AES);
        retVal = CryptoCC32XX_encrypt(cryptoHandle1, method, &plainData[0], sizeof(plainData), &cipherData[0], sizeof(cipherData), &aesCCMParams);
        retVal = CryptoCC32XX_decrypt(cryptoHandle1, method, &cipherData[0], sizeof(cipherData), &decryptedData[0], sizeof(decryptedData), &aesCCMParams);
        }

    解密后不会获得明文数据。

    没有 IV 都能正常工作。我知道 IV 是 AES-CCM 的随机数。 但它不能正常工作。 PLZ 帮助

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 SN:

    我很抱歉耽误了时间,我生病了。 在此例中、代码看起来几乎与示例相同  

    我看到的 IV 指针的唯一区别是不是 void *、而是 uint8_t *。 您是否可以尝试将其更改为空指针并测试结果?  

    此致!

    Rogelio

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Rogelio:

    我尝试将其更改为 void*、但它仍然不起作用。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    这方面有什么更新吗? 您是否在自己这边进行了测试? 由于此问题、我们的产品处于暂停状态。 请仔细观察。