本工具計算什麼
本工具採用 CRC-32/ISO-HDLC:反射多項式為 0xEDB88320,初始值為 0xFFFFFFFF,最終互斥或為 0xFFFFFFFF。結果以無號數表示,固定輸出 8 個十六進位字元,前導零不會省略。這裡不是 CRC32C。
CRC32C 使用不同多項式,對相同輸入通常會得到不同結果,不能因此直接判定某個檔案損毀。部分二進位格式也會規定校驗欄位的位元組儲存順序;本頁提供的是數值的十六進位顯示,不是已依容器格式序列化的欄位。
CRC32 主要偵測意外資料錯誤,不用於抵抗刻意竄改。結果相符不是安全認證。檢查檔案時,請選取實際檔案以保留原始位元組;複製解碼後的文字可能改變編碼與換行,得到另一個合法但不同的校驗值。
可核對的範例
UTF-8 · abc · CRC32
352441c2
如何計算與比較
- 在輸入文字中貼上要計算的內容,或按範例載入
abc。工具以 UTF-8 編碼計算,保留輸入中的空格與換行。 - 單筆文字模式下,不超過 64 KiB 的非空輸入會在停止輸入片刻後自動計算。計算空字串或較大的文字時,請按產生雜湊。修改輸入後,舊結果會立即清除。
- 若要核對已儲存的檔案,請切換至檔案校驗,確認演算法後選取或拖入檔案。檔案模式會讀取原始位元組並自動開始計算。
批次處理時,勾選逐行計算,選擇是否包含空白行,再按產生雜湊。逐行模式不會自動計算。CRLF、LF 與 CR 僅用來分隔記錄,不計入各行摘要;重複行保留各自的原始行號。
將完整的十六進位參考值貼到比較預期值(選填),再按核對。比對時忽略字母大小寫與頭尾空白,但不接受內部空格或錯誤長度。複製會保留完整結果。TXT、CSV 匯出包含輸入識別碼、演算法與摘要,不包含原始文字或金鑰。
限制、隱私與下一步
文字上限為 10 MiB;逐行模式最多接受 10,000 筆記錄,以過濾空白行前的數量計算。檔案佇列最多 50 個檔案,每個不超過 1 GiB,依序以 2 MiB 分塊讀取。這些限制用來控制瀏覽器資源占用,不保證每支手機都能快速處理最大輸入;必要時可取消計算。計算在瀏覽器內完成,正常的頁面與資源請求仍會傳送至託管伺服器。
與檔案工具、壓縮格式中的 CRC32 對照
本頁將 CRC-32/ISO-HDLC 的數值顯示為八碼小寫十六進位,包含前置零。其他軟體可能將相同的 32 位元模式顯示為無號十進位,或帶正負號的負整數。比較前應正確轉換表示方式;本頁欄位不接受負號或 0x 前綴。
格式內建的 CRC 還取決於涵蓋範圍。例如 gzip 尾端的 CRC 對應解壓縮後的原始資料,而非整個 .gz 檔案。將壓縮檔本身拖進本頁計算,不會重現該欄位。應確認格式涵蓋的位元組、CRC 變體與二進位儲存位元組順序;本工具不會自動解析壓縮檔成員。
同一個 CRC32 的三種整數表示
輸入 123456789,不帶結尾換行。下方的十六進位、無號十進位與帶正負號十進位代表相同的 32 位元模式。本頁比較欄位只接受八碼十六進位形式。
CRC-32/ISO-HDLC / 123456789:
Hex: cbf43926
無號十進位: 3421780262
32 位元帶正負號十進位: -873187034
CRC32 不同不一定代表檔案損壞
| 現象 | 原因 | 處理方式 |
|---|---|---|
| 與 CRC32C 參考值不同 | CRC32C 使用不同多項式 | 使用 CRC32C 實作,不要以本頁 ISO-HDLC 替代。 |
| gzip 尾端 CRC 與 .gz 檔案 CRC 不同 | 尾端欄位涵蓋解壓縮後的資料 | 對照相同的解壓縮資料,而非壓縮容器。 |
| 結果開頭帶零 | 完整格式仍需要八個十六進位字元 | 保留前置零,只移除額外的顯示前綴。 |