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.

[参考译文] AM263P4:与 AM263P4 硬件的 SHA 模块相关的程序问题

Guru**** 2847400 points

Other Parts Discussed in Thread: AM263P4, SHA-256

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1630659/am263p4-program-issues-related-to-the-sha-module-of-am263p4-hardware

器件型号: AM263P4
主题中讨论的其他部件: SHA-256

我回顾了 AM263P4 SDK 中 DTHE 模块的 SHA 计算程序 (MCU_PLUS_SDK_am263px_11_00_00_19)。 当它不是最后一个数据块时、对于 SHA256、原始文本的输入长度必须是 64 字节的倍数。 根据程序逻辑、对于非 SHA256 算法、如 SHA1、SHA224、SHA384 SHA512 和 MD5、原始文本的输入长度必须是 128 字节的倍数。

第一个问题: 这是否表示程序仅考虑 SHA256 和 SHA512 的情况(因为只列出了 dthe_SHA256_block_size 和 dthe_SHA512_block_size、并且注释状态/*完整性检查:除最后一个块之外的任何数据缓冲区都应根据 SHA 大小对齐。 对于 SHA256、这个是 64 字节、而对于 SHA512、这个应该是 128 字节*/)、而不考虑其他情况、或者程序是否旨在简单地区分 SHA256 和非 SHA256?

第二个问题: 无论是哪种算法、最后一个数据块都不需要输入长度?

image.png

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

    尊敬的  Mingzhe:

    让我在内部同步、然后返回给您。

    谢谢。此致、
    Aditya Singal

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

    尊敬的 Dai 

    dthe_sha.c 仅通过 SHA2-256、SHA2-384 和 SHA2-512 验证。 对于所有上述中间块、大小 必须等于输入的大小。 硬件就是这样 设计的、因为只有在 IP 接收到块大小的数据时才会进行块处理。 如果您的数据小于块大小、则可以在应用包装程序中处理它们。

    您对其他 SHA 选项(如 SHA1)有要求吗? 我们不支持它们、因为 SHA1 因碰撞预测增加而贬值。

    此致、
    Aakash

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

    那么、您是否意味着当前的 DTHE 仅支持 SHA2-256、SHA2-384 和 SHA2-512、并且不支持 MD5 和 SHA1 等算法? 此外、对于 SHA2-256、非最终块需要 64 字节对齐、而对于 SHA2-384 和 SHA2-512、非最终块需要 128 字节对齐。 是这样吗?

    那么为什么下面的文本说明它支持 MD5、SHA-1、SHA-224、SHA-256、SHA-384 和 SHA-512?

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

    尊敬的 Dai 

    [引用 userid=“655954" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1630659/am263p4-program-issues-related-to-the-sha-module-of-am263p4-hardware/6294715 ]此外、对于 SHA2-256、非最终块需要 64 字节对齐、而对于 SHA2-384 和 SHA2-512、非最终块需要 128 字节对齐。 正确吗?

    是的、正确且符合 SHA 规范。

    那么、为什么下面的文本表明它支持 MD5、SHA-1、SHA-224、SHA-256、SHA-384 和 SHA-512?

    上述内容在硬件中受支持、但在软件中尚不受支持。

    谢谢。此致、
    Aditya Singal