校驗和計算器
技術細節
校驗和計算器如何運作
工具功能說明
校驗和計算器用於資料完整性驗證,計算非密碼學校驗和,支援 CRC-16、CRC-24、CRC-32、Adler-32 與 Luhn 演算法。它同時接受純文字與原始十六進位位元組輸入,讓你能針對網路協定、檔案格式與識別號碼驗證校驗和。結果會以十六進位與十進位顯示,便於與規格文件比對。
常見的開發者使用情境
開發者在除錯網路協定(Ethernet 使用 CRC-32、PPP 使用 CRC-16)、驗證 ZIP 與 PNG 等封存格式的檔案完整性,或用 Luhn 驗證識別號碼(信用卡、IMEI)時,會使用 CRC 計算器。嵌入式工程師也會用此工具在燒錄韌體或測試序列通訊框架之前,確認 CRC 實作是否與預期輸出一致。
資料格式、型別或變體
CRC-16(CCITT)會產生 16 位元校驗和,使用於 XMODEM、Bluetooth 與 USB。CRC-32(ISO 3720)會產生 32 位元數值,使用於 Ethernet、ZIP 與 PNG。Adler-32 是 zlib 中使用的 CRC-32 更快速替代方案。Luhn mod-10 不是 CRC,而是用於驗證信用卡號、ISIN 代碼與 IMEI 號碼的檢查碼演算法。十六進位輸入模式可讓你輸入原始位元組序列,以進行協定層級的驗證。
常見陷阱與邊界情況
CRC 演算法有許多多項式與初始化的變體——CRC-16-CCITT 與 CRC-16-IBM 不同,因此務必確認協定所期望的變體。校驗和只能偵測意外損毀,對於蓄意竄改完全沒有安全性;此用途請使用密碼學雜湊。使用十六進位輸入模式時,請確保位元組輸入不含分隔符,或使用一致的格式,因為多出一個半位元組(nibble)會使後續所有位元組位移。
何時使用此工具 vs 程式碼
在除錯通訊協定框架、用 Luhn 驗證單一信用卡號,或將 CRC 輸出與規格比對時,使用這個瀏覽器工具做快速抽查。若是大量檔案驗證、CI 流水線或嵌入式韌體建置,請使用語言原生的 CRC 函式庫(Python 的 zlib.crc32、Node 的 Buffer 型 crc 套件),它們能處理串流並整合到自動化工作流程中。