CRC32 迷你計算器
計算 32/ISO-HDLC 從 UTF-8 文字或明確的十六進位位元組,使用固定引數與八位數結果。
隱私權:你的檔案不會離開裝置,所有處理均在瀏覽器本機完成。
使用方式
- 1.請確認所需的 CRC 變體與位元組範圍;本頁實作 CRC-32/ISO-HDLC,校驗值為 cbf43926(對應 123456789)。
- 2.選擇 UTF-8 文字或十六進位位元組,輸入精確的資料載荷,並進行計算。
- 3.將所有八個位數與預期值對比,並複製結果;若存在惡意修改風險,應使用加密驗證。
關於CRC32 迷你計算器
CRC32 計算器計算用於 gzip、ZIP、PNG 和許多其他格式的 CRC-32/ISO-HDLC 檢查值。選擇 UTF-8 文字或十六進位位元組,輸入載荷,並獲得八位數的小寫十六進位結果。計算在瀏覽器端進行,輸入不會上傳,複製動作僅複製精確的 32 位值。
CRC 是一種迴圈冗餘檢查,設計用來偵測資料中常見的意外變更。此實現使用寬度 32、反向多項式 0xEDB88320、初始暫存器 0xFFFFFFFF、反向位元處理以及最終 XOR 0xFFFFFFFF。這些引數會產生 cbf43926 給 123456789 的 ASCII 位元組,這是用來區分此 CRC 種類與其他 32 位元公式的標準檢查值。
此演算法從反向多項式建立 256 入口表。對於每個輸入位元組,會將其與低暫存器八位元進行 XOR 運算,查詢對應的表餘數,並將其與右移八位元的暫存器結合。最後會對暫存器進行取反,並以前導零格式化。這與 RFC 1952 中的實際範例方法一致,而非依賴瀏覽器特定的數字格式化方式。
在文字模式下,字串會先以 UTF-8 編碼再進行計算。每個 ASCII 字元貢獻一個位元組,而許多帶有重音符號的字母、CJK 字元與表情符號則會貢獻多個位元組。若計算的是 UTF-16 編碼單位、舊式字元集、標準化文字或不同換行規則,結果將會不同。當協議明確指定位元組時,應使用十六進位模式,而非重新輸入為可見文字。
十六進位模式會移除位元組之間的空白,但其他要求為偶數個十六進位數字。每兩個數字轉為一個位元組。字首如 0x、分隔符(除空白外)、註解以及奇數尾數(nibble)將被拒絕。前導的 00 位元組會被保留並影響結果。請確認目標規範是否包含標頭、長度欄位、分隔符或儲存的校驗值欄位。
CRC-32 不是加密、加密雜湊、訊息驗證碼、數位簽章或來源證明。它具有線性特性且容易被故意操作。請勿用於驗證不受信的軟體、授權命令、保護憑證或確認檔案來自可信發布者。若需對抗性完整性,應使用加密雜湊與受驗證的分發通道。
不同系統會使用 CRC32、CRC-32C、Castagnoli、Koopman、MPEG-2、BZIP2 和 JAMCRC 等名稱來表示具有不同多項式或初始與最終轉換的公式。本頁僅實現 CRC-32/ISO-HDLC。若預期 123456789 的檢查值不是 cbf43926,則其他系統可能使用不同變體或不同位元組範圍。
輸入限制為最多 5,000,000 位元組,以確保表驅動處理仍能保持響應。輸出永遠不會靜默截斷,值視為無符號數,且永遠顯示八位數十六進位數字。空輸入的程式化值為 00000000,雖然介面要求提供資料,因此意外的空點選不會看起來像有意義的驗證。
提供八個外部測試字串,涵蓋空輸入、短訊息、常見訊息雜湊與字母組合、標準數值檢查,以及 quick-brown-fox 詞句。使用 Python zlib 跨驗證來處理多位元組 UTF-8 邊界。這些值證明瞭宣告的變體與位元組處理方式,而不僅僅顯示編碼器與解碼器之間的結果一致。
先確認正確的 CRC 變體與覆蓋的位元組序列,來自規範格式。僅當 UTF-8 確認為正確時才選擇文字;否則請貼上十六進位位元組。比較完整的八位數,包含前導零,若相符僅視為偶然錯誤一致性的證據,並非安全性的驗證。
方法與來源
會產生一個以 256 為輸入的表格,反射多項式為 0xEDB88320。暫存器從 0xFFFFFFFF 開始,每次處理最低位元組,並在處理完八個位元組後與 0xFFFFFFFF 做異或,再轉為八位數的十六進位格式。
常見問題
- 這是哪一種 CRC32 變體?
- CRC-32/ISO-HDLC:反射多項式為 0xEDB88320,初始與終值異或為 0xFFFFFFFF,校驗值為 cbf43926。
- 為何不同工具的結果會出現文字差異?
- 可能因位元組編碼或換行標準化方式不同所致。本工具使用 UTF-8;若需精確的位元組序列,請切換至十六進位模式。
- CRC32 是否能驗證安全下載?
- 不能。CRC32 可偵測偶然錯誤,但不具碰撞抗性或驗證性。建議使用公開的加密雜湊與可信通訊通道。
相關工具
- 校驗和計算器從 UTF-8 文字或十六進位位元組計算明確的 XOR-8 BCC、Modbus ASCII 二補數 LRC,以及 256 位元組總和模運算值。
- Base64 到 十六進位轉換器將 RFC 4648 Base64 轉換為精確的小寫十六進位位元組,或將嚴格的十六進位位元組轉回 Base64。
- Gzip 壓縮與解壓縮將 UTF-8 字元的文字壓縮為包裝 RFC 1952 的 Base64-wrapped gzip 位元組,或解壓縮 gzip Base64 回到嚴格有效的 UTF-8 文字。
- 文字轉為十六進位將文字編碼為精確的 UTF-8 十六進位字串,支援連續、間隔或 0x 預設輸出格式,並明確顯示 Unicode 替換警告。
- A1Z26 字母數字密碼轉換器把英文字母轉為明確的 A=1 至 Z=26 益智格式,並在不混淆單字邊界的情況下解碼經驗證的數字組。
- AES 線上加密完全在瀏覽器中把文字加密為可攜、具驗證能力的 AES-256-GCM JSON 封裝,或使用密碼解密封裝。
編碼與加密 使用指南
查看全部- Calculate CRC32 Checksum and Match the 8 Hex Digits (英文原文)
- Calculate CRC32 for ZIP, PNG, and Gzip Files (英文原文)
- Calculate CRC for Modbus: CRC-16 vs CRC-32 Explained (英文原文)
- Calculate CRC for a HEX File: ISO-HDLC Bytes and Steps (英文原文)
- How to Generate CRC32 From Text or Hex Bytes (英文原文)
- How to Find CRC32: Pick the Right Variant and Bytes (英文原文)
- How to Calculate a CRC Checksum Step by Step (英文原文)
- How to Calculate CRC-32 Checksums for Data Integrity (英文原文)
- Compare Approaches to Use a ROT47 Encoder Decoder (英文原文)
- Rail Fence Cipher Decoder Alternative for Exact Text (英文原文)
- Convert Punycode to Unicode: Read xn-- Labels (英文原文)
- Check Password Strength in Python Without the Regex Trap (英文原文)
- Translate Morse Code to English: A Practical Workflow (英文原文)
- HTML Escape Cheat Sheet: Reserved Characters (英文原文)
- HMAC-SHA256 Tag Generator: Hex and Base64 Guide (英文原文)
- Hill Cipher Decoder Alternative: Skip the Matrix Math (英文原文)
- Convert Hex Format to Text: A Strict UTF-8 Workflow (英文原文)
- Convert File to Base64 for C# Code: Local Browser Steps (英文原文)
- BCC Checksum API Alternative: Compute Locally (英文原文)
- Caesar Cipher Decoder API Alternative Without Signup (英文原文)