CRC32校驗計算
工具用的順手嗎?
你的回饋能幫助我們做得更好
計算任意字串或編碼資料的CRC32雜湊值,用於驗證資料完整性。
概覽
了解工具能解決的問題、計算或處理邏輯,以及資料邊界。
輸入一段文字後,頁面會即時計算 CRC32,並以 8 位大寫十六進位顯示;例如標準 ASCII 字串 123456789 的結果是 CBF43926。CRC 是「循環冗餘校驗」的縮寫,通常用來檢查資料在傳輸或儲存時是否意外改變。它把輸入序列映射為固定長度的校驗值,適合快速比對,並不是加密或密碼學雜湊。
此頁的輸入欄接受文字,結果只有 CRC32 的十六進位值;輸入有變更時結果隨即更新,空白輸入不顯示結果。沒有檔案上傳、原始位元組輸入、Hex/Base64 解碼或 CRC 參數選擇。若需求是計算某個檔案的完整位元組,或對指定 Hex 字節序列計算校驗,文字欄無法代替這類流程。
此處採用常見的反射式 CRC-32 計算方式:初始暫存值為全 1,逐位元由低位方向處理,完成後再反相,最後將 32 位結果補足為 8 個十六進位字元。W3C 的 PNG 規格也記載其 CRC 使用全 1 初值、由低位元開始處理並在結尾反相;不過規格中的 CRC 是針對 PNG 區塊指定的位元組範圍,不能因此推定任意文字都採相同文字編碼。
CRC 實際運算對象是位元組。本頁直接讀取文字字元單元的低 8 位元組,因此 ASCII 英文、數字與常見符號可按單一位元組口徑理解。中文、表情符號或其他非 ASCII 字元的處理,不等同於先把文字轉為 UTF-8 位元組再計算;若要與其他程式比對,務必先確認雙方的文字編碼和位元組轉換方式。畫面上看到相同文字,不保證不同程式會算出相同 CRC。
指南
依步驟完成操作,並透過範例核對輸入與結果。
先確認參考值是對文字還是檔案位元組計算,並確認文字編碼、CRC 變體及是否包含換行。若採用此頁,優先以 ASCII 文字作一致性檢查。
輸入完整字串。大小寫、前後空白、標點及換行都會改變計算內容;不要只依文字看起來相同就略過空白檢查。
結果會自動更新,顯示為 8 位大寫十六進位。複製時保留前導零;若外部參考值有 0x 前綴或用小寫字母,可忽略前綴和大小寫,但需逐位核對八個數字。
檢查首尾空白、換行符號、輸入文字是否完全相同,再核對對方是否將文字編碼成 UTF-8 或其他位元組格式,以及是否使用相同 CRC 初值、反射方式和結尾處理。
可用 123456789 作為 ASCII 範例,結果應為 CBF43926。若結果不符,先確認字串前後沒有空白或換行,再確認所比較的工具採用相同的 CRC-32 參數。
情境
查看這項工具在不同工作與生活流程中的用法。
開發或測試人員可以輸入規格文件中的 ASCII 範例,確認手動抄錄內容是否一致,並把 8 位結果與文件提供的參考值比較。前提是文件所指的字元序列與此頁的輸入口徑一致。
要快速檢查設定名稱、短代碼或文字片段是否可能在複製過程中改變,可在相同口徑下分別計算並比較結果。結果不同表示輸入不同;結果相同只能作快速檢查,不能取代逐字核對。
學習校驗概念時,可在 ASCII 字串中改一個字母大小寫、增刪空格或換行,再觀察 CRC 值變化。這能說明計算依據是精確輸入,而不是文字含義。
問答
集中解答常見疑問與容易混淆的問題。
先確認輸入中的空格、換行與大小寫,再檢查文字如何轉成位元組、對方採用的 CRC 變體和參數。對中文或表情符號,文字編碼差異尤其容易造成結果不同。
不行。輸入欄把內容當作文字處理,不讀取檔案,也不會將 Hex 或 Base64 字元解碼為原始位元組。若要計算檔案或編碼資料所代表的位元組,需使用能讀取相應資料並明確支援該輸入格式的工具。
不能。CRC32 是固定 32 位的校驗值,不同輸入可能得到相同結果。它可協助發現常見的意外變動,但不能證明來源可信或排除刻意竄改。
須知
使用前了解適用範圍、結果限制與必要提醒。
CRC 用於偵測資料錯誤,不是加密、數位簽章或安全雜湊。W3C PNG 規格將 CRC 描述為用來檢查資料損壞的校驗值;這不代表 CRC32 能提供防蓄意竄改的保證。
推薦
查找相關工具、專題與可用的 API 能力。