§

貼上文字或拖放檔案以進行雜湊

編碼
§

雜湊產生器 — 線上產生 SHA-256、MD5、SHA-1

所有四種摘要都在你的瀏覽器中本機計算。不會上傳任何內容。
§

MD5

已棄用
§

SHA-1

已棄用
§

SHA-256

§

SHA-512

在台灣的軟體供應鏈與資安實務中,雜湊無所不在:GitHub Actions CI 以 SHA-1 標記 commit、S3 多部分上傳以 MD5 ETag 比對、SLSA build provenance 採 SHA-256。國家資通安全研究院(NICS)與 TWCERT/CC 發布的 IoC 指紋採 SHA-256;MOICA 自然人憑證簽署的 PDF 含 SHA-512 摘要。中央存保、財金資訊 ACH 介接、與 NIST SP 800-131A 相容的金管會規範皆要求至少 SHA-256。處理電子發票歸檔、政府網路服務平臺 GSP 驗章時,雜湊比對是檢測篡改的第一道防線。

什麼是密碼學雜湊?

密碼學雜湊函式接受任意長度的輸入,並產生固定長度的摘要。同樣的輸入永遠會產生同樣的摘要;翻轉單一位元大約會改變一半的輸出位元。本工具會為你提供的任何文字或檔案計算四種使用最廣泛的摘要——MD5RFC 1321)、SHA-1SHA-256SHA-512(SHA 系列由 FIPS 180-4 定義)——而資料完全不會離開你的裝置。

這個雜湊產生器是如何運作的?

雜湊運算完全在你的機器上執行。SHA-1、SHA-256 與 SHA-512 會交由瀏覽器原生的 crypto.subtle.digest API 處理;MD5 則使用內建的公領域實作,因為 Web Crypto 並未隨附 MD5。步驟如下:

  1. 你的輸入會從文字框讀取,或將檔案從磁碟讀入 ArrayBuffer。文字會先以 UTF-8 編碼再進行雜湊,所以產生的摘要與伺服器端 hashlib.sha256(text.encode()) 的結果一致。
  2. 每種演算法都會將訊息填補到區塊邊界,並逐區塊處理,透過一連串位元運算與模運算將輸入位元組與內部狀態混合。
  3. 當最後一個區塊處理完畢,內部狀態會被定稿:MD5 產生 128 位元、SHA-1 產生 160 位元、SHA-256 產生 256 位元、SHA-512 產生 512 位元。
  4. 原始的摘要位元組會依照面板上方所選的編碼,輸出為小寫十六進位或標準 Base64。
  5. 每個摘要都會寫入專屬的唯讀文字框,並附帶複製按鈕。開啟即時模式後,每一次擊鍵都會重新計算雜湊,讓你即時觀察雪崩效應。

我應該使用哪種雜湊演算法?

本工具提供的四種演算法,涵蓋了從早期校驗碼到目前密碼學建議的整個光譜。請依用途而非熟悉度來選擇:

  • MD5(128 位元)——快速且無所不在,但在密碼學上已被攻破。自 2004 年以來實際的碰撞便已公開。僅應用於非安全性的校驗碼:去重鍵、快取破壞值、ETag 風格的指紋,以及對照可信清單驗證檔案完整性。
  • SHA-1(160 位元)——同樣已不建議用於安全用途。SHAttered 攻擊在 2017 年展示了公開的 PDF 碰撞。仍可見於舊版 Git 物件 ID、較舊的 TLS 憑證以及尚未因底層雜湊弱點而洩漏金鑰的 HMAC 構造中。不要在新專案中採用。
  • SHA-256(256 位元)——目前的通用預設選擇。用於 TLS 憑證指紋、Bitcoin 區塊雜湊、軟體釋出檢查碼、容器映像摘要,以及大多數現代程式碼簽章流程。猶豫時就選它。
  • SHA-512(512 位元)——與 SHA-256 同屬 SHA-2 系列,但內部狀態更大、字組為 64 位元寬。在 64 位元 CPU 上通常比 SHA-256 更快,並適合需要更多碰撞餘裕或為 HMAC 金鑰提供較長摘要的情境。

為什麼使用這個雜湊產生器?

  • 隱私:輸入的每一個位元組都在你的瀏覽器中本機進行雜湊。沒有檔案上傳、沒有網路往返、沒有伺服器紀錄。檔案選擇器透過 File API 直接從磁碟讀取。
  • 一次計算四種摘要:貼上一次便能並排讀取 MD5、SHA-1、SHA-256 與 SHA-512,並可在不重新雜湊的情況下於十六進位與 Base64 之間切換輸出編碼。
  • 符合標準的輸出:SHA 系列交由 crypto.subtle.digest 處理,與你的作業系統所信任的 FIPS 180-4 實作完全相同。MD5 則逐位元組遵循 RFC 1321。
  • 為驗證工作打造:即時模式可讓你在輸入時看到雪崩效應;檔案面板可處理大小直到分頁記憶體容納上限的二進位檔,讓你無需終端機即可驗證釋出封存。

雜湊函式有哪些常見應用?

雜湊在日常工程工作中隨處可見:

  • 驗證下載內容:將釋出封存的 SHA-256 摘要與專案網站上公布的值對照,確認傳輸過程中未遭竄改。
  • 除錯整合:重現合作服務在請求簽章中所期望的精確 MD5 或 SHA-256,方便你找出規範化字串建構器中的差一錯誤。
  • 內容定址:從酬載產生確定性的 ID,作為快取鍵、去重標記或 Git 風格的物件識別碼。

雜湊範例是什麼樣子?

對 ASCII 字串 hello 進行雜湊,會得到 MD5 5d41402abc4b2a76b9719d911017c592、SHA-1 aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d、SHA-256 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824,以及一段以 9b71d224bd62f3785d96d46ad3ea3d73... 開頭、128 字元長的 SHA-512 十六進位字串。在尾端加上一個空白再重新雜湊,每一個摘要都會變得面目全非。

這個雜湊產生器完全在你的瀏覽器中執行,使用的是與作業系統所信任的相同原語:SHA 系列使用 Web Crypto,並以一段精簡且經審核的 MD5 程式碼補上 Web Crypto 未提供的那種摘要。貼上、放入檔案、複製摘要——除此之外沒有任何資料離開分頁。