CRC-32 是 32 位循环冗余校验,用来发现意外的数据损坏,不是密码学哈希,也不能防故意篡改。下面重点说明常见输入与结果。
CRC32开发对照表
| 输入 | 计算结果 |
|---|---|
| user@example.com | 616df5a1(十进制 1634596257) |
| https://www.123wen.cn/?q=测试 | 0e639547(十进制 241407303) |
| <b>粗体</b> | 62704e05(十进制 1651527173) |
| abc | 352441c2(十进制 891568578) |
| I ♥ Unicode | b99f480b(十进制 3114223627) |
| Hello | f7d18982(十进制 4157704578) |
| 123问 | eec6b01f(十进制 4005998623) |
| 中文 | 5a09ed37(十进制 1510599991) |
工作原理
CRC 把数据看作二进制多项式,按约定多项式做除法,余数即为校验值。实现上多用 256 项表加速。Python zlib.crc32 与以太网/PNG 使用相同参数:初值 0xFFFFFFFF,末尾再异或 0xFFFFFFFF,多项式反转形式为 0xEDB88320。
乱码排查
结果本身是十六进制。对不上先确认变体名称和输入的真实字节。
本站的哈希全家桶工具可以直接处理,计算在浏览器本地完成,适合快速核对结果。
常见问题
【和 Adler-32 有什么不同?】Adler-32 是另一种校验和(zlib 常用),更简单,查错能力也不同。
【“abc”的 CRC-32 是多少?】352441c2(crc32b / zlib)。
【CRC-32 安全吗?】只适合发现意外损坏,不能防故意伪造。
文中示例可以在本站对应工具中验证;处理密钥、证书等敏感数据时,请注意保护隐私。
标签: 数码开发
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。