主要功能
- 单项CRC计算:支持UTF-8文本、十六进制、Base64、文件四种输入,可以选择常用算法预设。
- 多种结果格式:CRC的结果可以用HEX、DEC、BIN显示,也可以启用实时计算和常用算法比较。
- 文件批量验证:可以选择多个文件,并勾选CRC-8、CRC-16、MODBUS、CCITT、CRC-32、MD5、SHA-1、SHA-256、SHA-512。
- 与已知校验和的比较:输入预期CRC值后,可以指定算法,或者让页面使用常用算法自动检测,然后确认待验证的数据。
- 参数和历史管理:本页面可以保存当前算法、输入类型、输出格式、实时计算设置,并提供最近50次单项计算的本地历史记录。
操作前的准备
- 进行单项计算时,请准备文本、十六进制或Base64内容,或者待验证的文件,并确认实际使用的CRC算法。
- 如果需要比较校验和,请准备已知的CRC值、待验证的数据以及对方使用的算法。如果算法未知,可以选择页面提供的自动检测。
- 进行批量验证时,请准备需要一起确认的多个文件,并确定要勾选的CRC或哈希算法。
- 如果协议使用特殊的CRC参数,则需要在选择自定义参数之前确认位宽、POLY、INIT、XOROUT、REFIN、REFOUT。
详细操作步骤
-
选择输入类型和算法,输入待验证的数据
请在“工具使用”区域选择“单项计算”。首先根据数据来源选择“UTF-8文本”、“十六进制”、“Base64”或“文件”,然后打开“算法预设”,选择与协议一致的CRC算法。请在“输入数据”栏中输入文本、十六进制或Base64内容。如果选择了文件输入,请通过页面显示的文件入口操作。为便于确认预设,页面会在算法下方显示POLY、INIT、XOROUT、REFIN、REFOUT、CHECK参数。

图1:选择单项计算方式,设置输入类型、CRC算法和待验证的数据 -
设置输出方式,执行CRC计算
请在“输出格式”中选择HEX、DEC或BIN。如果需要在输入更改后自动更新,可以勾选“实时计算”。如果需要同时显示多个常用算法,请勾选“显示常用算法比较”。确认输入类型、算法和数据正确后,请点击“计算CRC”。本教程仅说明按钮位置,实际上并未输入数据或执行计算。

图2:设置结果格式和辅助选项后,使用“计算CRC”按钮 -
根据需要使用文件批量验证
请切换到“批量文件”功能区域,在左侧文件区域选择多个待验证的文件。然后勾选所需的CRC或哈希算法,设置“CRC输出”和“结果排序”。如果文件较多,也可以在“筛选文件名”中输入关键词。准备完成后,请点击“开始批量计算”。页面注明,界面仅显示前20个文件,但处理对象为所有选定文件。

图3:选择多个文件,勾选算法,设置批量验证选项 -
将已知CRC值用于验证比较
请切换到“验证比较”,在“预期CRC值”中输入已知结果。如果算法明确,请在“验证算法”中直接选择对应预设。如果只知道结果值,可以保持“自动检测常用算法”。然后选择文本、HEX或文件输入类型,在“待验证的数据”区域输入内容,最后点击“验证CRC”。页面说明,自动检测会依次尝试CRC-8、CRC-16、CRC-32的常用预设。

图4:输入预期值和待验证的数据,选择算法后执行验证比较 -
保存设置,管理本地历史
请切换到“历史设置”。点击“保存设置”即可保留当前算法、输入类型、输出格式、实时计算开关。如果需要恢复初始状态,请使用“恢复默认”。单项计算完成后,页面会在“计算历史”中保存最近50条本地记录,并提供“复制历史”和“清除历史”按钮。

图5:保存常用设置,根据需要复制或清除本地历史
主要参数说明
| 参数 | 功能 | 选择建议 |
|---|---|---|
| 输入类型 | 单项计算支持UTF-8文本、十六进制、Base64或文件 | 根据现有数据的实际编码或来源选择 |
| 算法预设 | 提供CRC-8、CRC-16、CRC-32系列的常用算法,以及自定义参数入口 | 必须与协议或对方系统使用的参数完全一致 |
| 输出格式 | 将CRC的结果以HEX、DEC或BIN显示 | 根据后续确认系统的要求选择。页面默认为HEX |
| 实时计算 | 输入或设置更改时自动更新计算 | 如果需要在执行前确认所有参数,可以保持关闭 |
| 常用算法比较 | 一次输入后同时显示多个常用算法的结果 | 算法不确定且需要并列确认时使用 |
| 批量算法 | 可以同时勾选多个CRC及MD5、SHA系列算法 | 为便于查看结果,仅勾选本次需要的项目 |
| CRC输出 | 批量模式提供HEX、DEC或HEX + DEC | 需要同时确认两种表示时选择HEX + DEC |
| 结果排序 | 批量模式支持按选择顺序、文件名或文件大小排序 | 根据后续确认习惯选择 |
| 验证算法 | 可以指定CRC预设,或自动检测常用算法 | 知道算法时直接指定,仅在只知道结果值时使用自动检测 |
| 自定义CRC参数 | 页面注明可以输入位宽、POLY、INIT、XOROUT、REFIN、REFOUT | 仅按照协议文档中明确的参数填写 |
结果的显示和保存
执行单项计算后,页面会更新当前概要,并将最近的单项计算添加到“历史设置”。如果需要重复使用记录,可以点击“复制历史”,常用算法和显示设置可以通过“保存设置”保留。验证比较完成后,请根据页面显示判断是否一致。对于批量任务,请在页面处理结束后显示的结果区域继续操作。由于本教程没有运行工具,因此不会显示或推测计算值。
常见问题和使用建议
为什么同一数据会得出不同的CRC结果?
CRC的结果取决于算法以及位宽、POLY、INIT、XOROUT、REFIN、REFOUT等参数。请首先确认双方使用相同的预设或完全相同的自定义参数。
只知道CRC结果而不知道算法时该怎么办?
请转到“验证比较”,在“验证算法”中选择“自动检测常用算法”。页面会使用CRC-8、CRC-16、CRC-32的常用预设尝试匹配。
批量模式中可以选择哪些验证项目?
页面提供CRC-8、CRC-16、MODBUS、CCITT、CRC-32、MD5、SHA-1、SHA-256、SHA-512复选框,可以根据需要同时勾选。
为什么历史设置中仍未显示记录?
页面注明,只有完成一次单项计算后,结果才会显示在这里。历史区域最多保留最近50条本地记录。
“保存设置”会保留什么?
页面明确列出了当前算法、输入类型、输出格式、实时计算开关。这些设置可以在下次打开时自动恢复。
算法预设与特殊协议不一致时该怎么办?
请在算法预设中选择“自定义参数”,按照协议资料输入位宽、POLY、INIT、XOROUT、REFIN、REFOUT,不要仅根据相似的算法名称进行推测。