MD5 / SHA 雜湊產生器

線上計算 MD5、SHA-1、SHA-256、SHA-384、SHA-512 雜湊或 HMAC 簽章,輸入支援 UTF-8、UTF-16、Latin-1、Hex、Base64,輸出可選 Hex 或 Base64。

雜湊是單向運算,無法解密。HMAC 會加上一把密鑰,常用於 API 請求與 Webhook 的簽章驗證。

檔案只在你的瀏覽器中讀取,不會上傳。

雜湊是什麼?

雜湊(Hash)會把任意長度的資料算成一串固定長度的「指紋」。同樣的輸入一定得到同樣的結果,只要改一個字元,結果就會完全不同,而且無法從結果反推出原文。常用來檢查檔案是否完整、比對資料是否被改過、產生快取的識別碼等。

如何使用

  1. 選擇演算法,或選「全部演算法」一次算出全部結果。
  2. 在左邊輸入內容。開啟「自動計算」時,停止輸入後會自動產生結果。
  3. 視需要調整「輸入編碼」與「輸出格式」,或啟用 HMAC 並輸入金鑰。

演算法比較

演算法長度(Hex)適合用途
MD532 字元檔案校驗、快取 key;已不安全,不要用在安全相關用途
SHA-140 字元舊系統相容(例如 Git);已不建議用在安全相關用途
SHA-25664 字元目前最常用,適合大多數用途
SHA-384 / SHA-51296 / 128 字元需要更長結果的場合

HMAC 是什麼?

HMAC 是「加上金鑰的雜湊」,只有知道金鑰的人才能算出相同結果。很多服務用它來簽署 API 請求、驗證 Webhook 確實來自對方,例如付款平台、GitHub、LINE 都使用 HMAC-SHA256。啟用 HMAC 後輸入金鑰即可計算;金鑰可以是一般文字、Hex 或 Base64。

輸入編碼與輸出格式

範例

檔案雜湊與比對

常見問題

雜湊可以解密嗎?

不行。雜湊是單向運算,沒有「解密」這回事。網路上所謂的「MD5 解密」,其實是拿大量常見字串事先算好的結果來比對,所以簡單的密碼很容易被查出來。

為什麼和其他工具算出來的結果不同?

通常是輸入內容有些微差異:多了空白或換行、換行符號不同(Windows 的 CRLF 與 Unix 的 LF),或是文字編碼不同。請確認輸入完全相同,並使用相同的輸入編碼。

可以用 MD5 或 SHA-256 儲存使用者密碼嗎?

不建議。這些演算法算得很快,攻擊者也能快速大量嘗試。儲存密碼應使用專為密碼設計的 bcrypt、scrypt 或 Argon2。

HMAC 金鑰會被儲存嗎?

不會。計算在你的瀏覽器中完成;本站會記住你的輸入與設定,但 HMAC 金鑰刻意不記憶,重新整理後需要再輸入一次。