CRC 校验计算器
对文本或文件计算 CRC-8、CRC-16、CRC-32、CRC-32C、CRC-64 与 Adler-32 校验值。15 种算法,十六进制与十进制输出,大文件在后台 Worker 中计算——全程浏览器本地完成。
CRC 是什么?
CRC 即循环冗余校验(Cyclic Redundancy Check),是对数据字节做多项式除法得到的校验值。它能检测意外损坏:传输或存储中只要有一个比特翻转,收到数据的 CRC 几乎必然与发送方不同。Modbus、HDLC、USB、以太网、ZIP 等协议和格式都依赖它。
CRC 与 SHA-256 等加密哈希有什么区别?
CRC 是错误检测码,不是安全原语。它计算快、能发现随机损坏,但很容易被逆向——任何人都能构造出指定 CRC 的数据——因此绝不能用于验证真实性、签名或存储密码。SHA-256 等加密哈希是单向、抗碰撞的函数,才是为这些用途设计的。
包含哪些算法?
共 15 种:CRC-8/SMBUS、CRC-8/1-WIRE(Maxim)、CRC-8/DVB-S2、CRC-16/IBM(ARC)、CRC-16/CCITT-FALSE、CRC-16/KERMIT、CRC-16/XMODEM、CRC-16/MODBUS、CRC-24(OpenPGP)、CRC-32、CRC-32/MPEG-2、CRC-32/JAMCRC、CRC-32C(Castagnoli)、Adler-32 与 CRC-64/GO-ECMA,覆盖嵌入式、网络与文件格式领域最常用的变体。
为什么 CCITT-FALSE、KERMIT 和 XMODEM 对同一数据结果不同?
它们使用相同的多项式(0x1021),但初始值、位反射和最终异或不同。所以说"CRC-16"是有歧义的——一定要确认你的协议或设备指定的具体变体,再在这里选择对应算法。
UTF-8 与 Latin-1 编码有影响吗?
有。CRC 作用于字节,编码决定了文本变成哪些字节。纯 ASCII 输入两者相同,但 é、中 这类字符就不同了:UTF-8 每字符占 2–3 字节,Latin-1 只占 1 字节(而且根本无法表示"中")。请选择接收方系统使用的编码。
大文件是怎么处理的?
文件标签页会把文件交给 Web Worker,分块在后台线程计算校验值并显示进度条。界面不会卡顿,几十 MB 的文件瞬间完成;文件始终不离开你的设备。
为什么同时输出十六进制和十进制?
文档、数据手册和调试器习惯用十六进制("123456789" 的 CRC-32 是 CBF43926),而某些串口协议、PLC 工具和日志格式要求十进制原值。大写开关可匹配参考资料的写法,两个字段都支持一键复制。
CRC 能纠错而不只是检错吗?
只有在特殊构造下才行(Reed–Solomon 等纠错码建立在类似数学上)。普通 CRC 只能告诉你数据坏了,不能指出坏在哪、怎么修。要修复需要 FEC、奇偶校验文件等冗余方案。
数据会被上传到服务器吗?
不会。文本和文件都在浏览器里用 JavaScript 本地计算,完全没有网络请求。给私密文件算校验值也安全——不过请记住 CRC 不是安全工具。
项目里该选哪种 CRC?
选对端已经使用的那个——只有收发双方算法完全一致,CRC 才有意义。新设计可以用 CRC-32 或 CRC-32C(检错能力强、现代 CPU 有硬件加速);Modbus 设备用 CRC-16/MODBUS;HDLC/PPP 按规范用 CCITT-FALSE 或 KERMIT。
如何使用CRC 校验计算器
这款 CRC 计算器为文本或文件计算 15 种常用算法的校验值:CRC-8/SMBUS、CRC-8/1-WIRE、CRC-8/DVB-S2、CRC-16/IBM (ARC)、CRC-16/CCITT-FALSE、CRC-16/KERMIT、CRC-16/XMODEM、CRC-16/MODBUS、CRC-24 (OpenPGP)、CRC-32、CRC-32/MPEG-2、CRC-32/JAMCRC、CRC-32C、Adler-32 和 CRC-64/GO-ECMA。结果同时给出十六进制与十进制,支持大写切换和一键复制。文件在后台 Web Worker 中计算并显示进度条,全部在浏览器本地完成。
- 在「文本」标签页输入或粘贴内容,校验值随输入实时更新。
- 选择字符编码:现代文本用 UTF-8;接收方按单字节处理时用 Latin-1(ISO-8859-1)。
- 选择协议或数据手册指定的算法——默认选中 CRC-32。同一数据在不同算法下结果不同。
- 读取「十六进制」与「十进制」两个字段,用「十六进制大写」开关匹配参考文档的写法,点「复制」即可取值。
- 处理文件时切到「文件」标签页,点击拖放区或直接拖入文件:计算在后台 Worker 中进行并显示实时进度,文件不会离开你的设备。
自检基准:ASCII 字符串 "123456789" 的 CRC-32 为 CBF43926(十进制 3421780262)。如果设备算出的结果与这里不一致,几乎可以肯定是用错了 CRC 变体——先核对该设备的多项式、初始值和位反射配置,再怀疑数据本身。
相关工具
- 哈希生成器 在浏览器中即时生成MD5、SHA-1、SHA-256、SHA-512哈希值
- Base58 编码/解码 使用 Bitcoin 字母表将文本编码为 Base58,或把 Base58 解码回文本,支持 Base58Check(版本字节 0x00/0x05)与双重 SHA-256 校验,全部在浏览器本地完成。
- AES加密/解密 AES加密解密工具,支持CBC、CFB、CTR、OFB、ECB模式,Pkcs7/ZeroPadding/NoPadding填充,128/192/256位密钥,Base64输出,自动识别密钥/IV格式
- 文件哈希校验 本地计算校验MD5、SHA-1、SHA-256、SHA-512文件哈希值
- Chmod 计算器 免费在线chmod计算器,通过复选框可视化Linux文件权限并计算chmod值。即时转换数字(755, 644)和符号(rwxr-xr-x)表示法,支持setuid、setgid、sticky bit等特殊权限。
- ASCII码表 完整的ASCII字符编码参考表,包含十进制、十六进制、八进制、二进制编码、HTML实体和字符描述。支持即时搜索和筛选。
- Hex文件查看器 以十六进制转储格式查看文件内容,支持搜索、偏移导航和虚拟滚动
- MIME类型查询 通过文件扩展名即时查询MIME类型,或反向查找扩展名。免费在线工具,收录1000+条目。