【问题标题】:Probability of a collision using 32 bit CRC of a unique 32 byte array使用唯一 32 字节数组的 32 位 CRC 的冲突概率
【发布时间】:2018-09-26 13:02:18
【问题描述】:

我试图弄清楚使用 32 位 CRC 是否会在 32 字节数组上产生冲突。

背景

我的系统从外部闪存启动时会读取一些配置。我存储了最后知道的配置的 SHA256 哈希,每当我读取配置时,我都会计算 SHA256 哈希并进行比较。如果两个哈希不同,则数据不同。

我需要将该 SHA256 转换为系统另一部分的 32 位散列(由于一些遗留代码限制)。

问题

如果我在 SHA256 的 32 字节哈希上计算 32 位 CRC,是否会发生大量冲突?

我计算出碰撞的概率为 0。你能告诉我这是否正确吗? 在我的问题中,样本K 的数量始终为 2(我认为),因为我在两个 32 字节字节数组(SHA256 字节数组)上计算 32 位 CRC。

see calculation here

【问题讨论】:

    标签: probability crc32


    【解决方案1】:

    没错,如果“0”是指非常小的数字。这个小数字是您从意外匹配您期望的随机数据中获得 32 位 CRC 的概率。它只是 2-32

    【讨论】:

      猜你喜欢
      • 2012-12-22
      • 2011-04-10
      • 2013-02-05
      • 1970-01-01
      • 1970-01-01
      • 2015-03-26
      • 1970-01-01
      • 2018-09-13
      • 2016-04-07
      相关资源
      最近更新 更多