# CRC32 生成器

立即计算任意文本的 CRC32 校验和。该工具将输入编码为 UTF-8，并应用标准的 IEEE 802.3 CRC-32 多项式。这一多项式用于 ZIP、gzip、PNG 和以太网。随后，工具会以 8 位十六进制数字或无符号十进制数返回结果。你可以用它检查已存储的校验和、调试文件格式，并与 zlib、PHP crc32 或其他库的结果进行比较。

## 常见问题

### 什么是 CRC32？

CRC32 是一种 32 位循环冗余校验，用于检测数据是否意外更改。此工具使用 IEEE 802.3 多项式 0x04C11DB7 的反射形式，也就是 ZIP、gzip、PNG 和 zlib 所使用的变体。结果是一个 32 位数值。

### CRC32 的标准校验值是什么？

文本 123456789 的 CRC-32 已发布校验值为 cbf43926。空输入的结果为 00000000，abc 的结果为 352441c2。你可以用这些值确认另一个实现使用的是相同变体。

### 为什么有些工具显示的 CRC32 不同？

还有其他变体，例如 iSCSI 和 ext4 使用的 CRC-32C（Castagnoli），以及非反射的 BZIP2 形式。它们使用不同的多项式或位顺序，因此结果也不同。还要确认两端对相同字节进行哈希，包括换行符。

### 十进制输出是什么意思？

十进制格式会将校验和显示为从 0 到 4294967295 的无符号整数。在 64 位系统上，这与 PHP 的 crc32 以及 Python 的 zlib.crc32 相符。十六进制输出是用八位十六进制数字表示的同一个数值。

### CRC32 是加密哈希吗？

不是。CRC32 用于检测随机传输错误，但任何人都可以构造出具有指定校验和的数据。如果需要防范蓄意篡改，请使用 SHA-256 或其他加密哈希。

### CRC32 碰撞的可能性有多大？

由于只有 32 位，两个随机输入的校验和相同的概率约为四十亿分之一。在约 77,000 个输入中，任意一对发生碰撞的概率就已达到 50%。CRC32 适合错误检测，但不适合用作唯一标识符。

### 校验和计算前，文本会如何转换？

该工具会将文本按原样转换为 UTF-8 字节。非 ASCII 字符会占用多个字节，换行符也会计入，因此请确保另一端使用相同的字节。

### 十六进制输出会补零吗？

会。十六进制形式始终包含八位小写数字，必要时会在前面补零，因此 0x0000abcd 会显示为 0000abcd。有些工具会省略前导零或使用大写字母，但数值相同。

### 可以计算文件的 CRC32 吗？

此工具适用于你粘贴的文本。对于文件，请使用本地命令，例如 libarchive 工具中的 crc32，或用 zlib 编写一个简短脚本。ZIP 中央目录也会存储每个条目的 CRC32。

### 输入最长可以有多长？

每次请求最多可处理 5 MiB 文本。CRC32 的速度很快，因此结果会立即返回，且不会存储输入内容。

在这里投放广告？

[给我们发邮件](mailto:hi@dennn.is?subject=%E5%9C%A8%20OneClick%20Pro%20%E4%B8%8A%E6%8A%95%E6%94%BE%E5%B9%BF%E5%91%8A)

[广告 适用于 WordPress 的智能体就绪型插件套件。](https://sleekwp.com/?ref=oneclickpro)
