檔案完整性與雜湊驗證引擎

File Checksum Calculator & Verifier

計算檔案的 MD5、SHA-1、SHA-256、SHA-384、SHA-512 雜湊值,並與官方 Checksum 一鍵比對。支援 Drag & Drop、多檔案模式、Checksum 格式自動辨識。純前端本地運算,檔案絕不上傳。

拖曳檔案到此區域

支援任何檔案類型,無大小限制(純前端本地運算)

範例測試

使用預設的範例 Checksum 驗證工具功能(SHA-256 比對)。

MD5 (32 chars)
d41d8cd98f00b204e9800998ecf8427e
SHA-256 (64 chars)
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

雜湊演算法教學

MD5 是什麼?

MD5(Message Digest Algorithm 5)是由 Ronald Rivest 於 1991 年設計的 128 位元雜湊函式,輸出固定 32 字元的十六進位字串。MD5 運算速度快,常用於檔案完整性檢查和非安全性場景的比對。然而 MD5 已被證實存在嚴重的碰撞漏洞(2004 年由中國學者王小雲團隊破解),不應用於密碼儲存或數位簽章等安全場景

SHA-1 為什麼已不安全?

SHA-1(Secure Hash Algorithm 1)輸出 160 位元(40 字元),曾經是業界標準。但 2017 年 Google 與 CWI Amsterdam 成功演示了 SHAttered 攻擊(首例 SHA-1 碰撞),證實其強度已不足以抵禦現代攻擊。NIST 已於 2011 年正式棄用 SHA-1,建議全面遷移至 SHA-256 或更高等級。GitHub 也在 2017 年棄用 SHA-1。

SHA-256 是什麼?

SHA-256 屬於 SHA-2 家族,輸出 256 位元(64 字元),由美國 NSA 設計、NIST 標準化。目前被廣泛認為是安全的雜湊演算法,用於:
• TLS/SSL 憑證
• 區塊鏈與加密貨幣(Bitcoin 使用雙層 SHA-256)
• Linux ISO 與軟體套件驗證
• 密碼儲存(搭配 Salt)
目前無已知可行碰撞攻擊。

如何驗證 Linux ISO?

以 Ubuntu 為例:
1. 下載 ISO 檔案及對應的 SHA256SUMS 檔案
2. 將 ISO 拖入本工具,計算 SHA-256
3. 從 SHA256SUMS 中複製官方 Checksum
4. 貼入比對欄位,確認為 🟢 Match
若比對失敗表示 ISO 可能在下載過程中損毀或被篡改,請重新下載。

如何驗證 Android ROM?

刷機前務必驗證 ROM 的完整性:
1. 從開發者官網下載 ROM 與對應的 MD5/SHA256 雜湊值
2. 使用本工具計算 ROM 檔案的雜湊值
3. 比對是否與官方公布一致
⚠️ 若雜湊不符,刷入可能導致變磚(brick)或安全性問題,切勿安裝。

常見問題 (FAQ)

什麼是 Checksum?為什麼要用它?
Checksum(校驗和)是透過雜湊演算法從檔案內容計算出的固定長度字串。只要檔案內容改變一個位元,Checksum 就會完全不同。用途包括:
• 驗證下載檔案是否完整(未因網路問題損毀)
• 確認檔案未被篡改或植入惡意程式碼
• 備份資料的完整性檢查
MD5、SHA-1、SHA-256 該選哪個?
建議優先使用 SHA-256。MD5 和 SHA-1 因碰撞攻擊已不推薦用於安全驗證。但以下情況可以繼續使用 MD5:
• 與舊系統相容(某些 NAS、老舊軟體只提供 MD5)
• 非安全性場景(如比對快取檔案)
本工具會同時計算全部五種演算法,方便你根據需求選擇。
為什麼兩個檔案的 MD5 相同但 SHA-256 不同?
正常情況下不應該發生。若出現此情況,表示 MD5 發生碰撞(collision),兩個不同的檔案產生了相同的 MD5 值。這是 MD5 的已知弱點,正好說明了為什麼應該使用 SHA-256 來取代 MD5。
Checksum 格式自動辨識是怎麼判斷的?
根據十六進位字串的長度自動判斷:
• 32 字元 → MD5
• 40 字元 → SHA-1
• 56 字元 → SHA-224
• 64 字元 → SHA-256
• 96 字元 → SHA-384
• 128 字元 → SHA-512
你無需事先知道是哪種雜湊,直接貼上即可比對對應演算法的結果。
檔案上傳到伺服器嗎?隱私安全嗎?
完全不上傳。所有計算均在你的瀏覽器中本地進行,使用 Web Crypto API(SubtleCrypto)進行 SHA 計算。檔案不會離開你的電腦,斷網也可以正常使用。這也是為什麼本工具可以處理 GB 級檔案而不受限於上傳頻寬。
為什麼計算 SHA-512 比 MD5 慢?
SHA-512 使用 64 位元運算,輸出 512 位元(128 字元),計算複雜度遠高於 MD5(128 位元輸出,32 位元運算)。在現代瀏覽器中,SHA-256/SHA-512 有硬體加速支援(Web Crypto API 使用原生實作),通常仍能在數秒內完成 GB 級檔案的計算。MD5 沒有硬體加速,依賴純 JS 實作,但因其演算法較簡單,速度仍然很快。