gpt4 book ai didi

encryption - 使用 AES 进行文件完整性检查,替换 MD5

转载 作者:行者123 更新时间:2023-12-04 15:04:12 29 4
gpt4 key购买 nike

首先:我知道 AES 是分组密码而不是散列函数。但是,我坚持使用 RAM 和闪存很少的微 Controller ,并且 AES-128 已经在其上实现并用于其预期目的 - 加密。

不幸的是,我还必须在同一个微 Controller 上实现用于文件完整性检查的散列函数。鉴于资源有限,我想知道是否可以使用现有的 AES 算法而不是 MD5 进行散列。这样做的一种可能性是:

  • 使用虚拟 key (例如全零)加密文件的第一个块
  • 使用前一个加密块作为 key 加密下一个块
  • 继续这样,直到处理完文件中的所有数据
  • 使用最后一个加密块作为哈希

  • 从理论上讲,我认为这应该有效。如果文件中的任何地方都存在损坏的数据,则会导致所有后续块中出现差异。

    现在,最大的问题是:这种方法在碰撞方面的表现如何?或者换一种说法:最终的“散列”分布情况如何?

    最佳答案

    听起来您想使用 AES-CMAC ,一种基于 AES 的认证算法。

    关于encryption - 使用 AES 进行文件完整性检查,替换 MD5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4633949/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com