CRC-32 哈希码计算器
已出版: 2025年2月17日 UTC 18:12:40
哈希码计算器使用 CRC-32(32 位循环冗余校验)哈希函数根据文本输入或文件上传计算哈希码。为了使尽可能多的人能够访问本页面,本页面由英文机译而成。遗憾的是,机器翻译技术尚不完善,因此可能会出现错误。如果您愿意,可以在此处查看原始英文版本:
CRC-32 Hash Code Calculator
CRC-32 Hash Code Calculator
循环冗余校验 (CRC) 是一种错误检测代码,通常用于检测对原始数据的意外更改。虽然从技术上讲 CRC-32 不是加密哈希函数,但它通常被称为哈希函数,因为它能够从可变长度的输入中生成固定大小的输出(32 位)。
完全披露:本页面使用的哈希函数的具体实现并不是我写的。它是 PHP 编程语言中的一个标准函数。我只是为了方便,制作了网络接口,以便在此公开使用。
关于 CRC-32 哈希算法
我不是数学家,但我会尝试用一个简单的类比来解释这个哈希函数。与许多加密哈希函数不同,它不是一个特别复杂的算法,所以它可能没问题 ;-)
想象一下,您正在邮寄一封信,但您担心它在到达收件人之前可能会被损坏。根据信件的内容,您计算出 CRC-32 校验和并将其写在信封上。当收件人收到信件时,他或她也可以计算校验和并查看它是否与您写的内容相符。如果相符,则表明信件在途中没有损坏或被更改。
CRC-32 的实现方式分为四个步骤:
步骤 1:添加一些额外的空间(填充)
- CRC 在消息末尾添加一些额外的空间(就像在盒子里包装花生一样)。
- 这有助于它更容易地发现错误。
第二步:魔法尺(多项式)
- CRC-32使用特殊的“魔尺”来测量数据。
- 把这把尺子想象成一个凸起和凹槽的图案(这是多项式,但不要担心这个词)。
- CRC-32 最常见的“标尺”是固定模式。
步骤 3:滑动标尺(分割过程)
- 现在 CRC 将标尺滑过消息。
- 在每个点,它会检查凸起和凹槽是否对齐。
- 如果它们不对齐,CRC 就会做出记录(这可以通过简单的 XOR 完成,就像打开或关闭开关一样)。
- 它不断滑动和翻转开关,直到到达末端。
步骤 4:最终结果(校验和)
- 将标尺滑过整个消息后,您将剩下一个小数字(32 位长),它代表原始数据。
- 这个号码就像是这条信息的唯一指纹。
- 这是 CRC-32 校验和。
页面上显示的版本是原始的 CRC-32 函数,您应该使用该函数来实现与其他系统的最佳兼容性。
我也有其他变体的计算器: