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+條目。