
什麼是雜湊 (Hashing)?
雜湊 是將任何長度的輸入資料,轉換為固定長度的字串(雜湊值)的過程,該字串看起來像是隨機的。
雜湊最重要的特性是其「單向性」或不可逆性——您無法從雜湊值推導回原始資料。
雜湊的主要目的
- 密碼儲存: 透過儲存雜湊值而非純文字密碼,您可以將資料庫遭入侵後的損害降至最低。
- 資料完整性: 透過比較雜湊值,您可以驗證檔案或訊息在傳輸過程中是否被修改過。
確保雜湊安全
在現代系統中,僅僅對數值進行雜湊是不夠的。
- SHA-256 / SHA-512: 這些是目前推薦的安全演算法。避免出於安全目的使用 MD5 或 SHA-1,因為它們已被發現存在漏洞。
- 加鹽 (Salting): 指在對密碼進行雜湊之前,先附加一個唯一的「隨機字串」(鹽)。這可以防止彩虹表攻擊 (Rainbow Table Attack,即使用預先計算好的雜湊值列表進行攻擊)。
HMAC (金鑰雜湊訊息鑑別碼)
HMAC 是一種將雜湊函數與「秘密金鑰」相結合來驗證訊息的機制。
- 發送者使用「資料」和「秘密金鑰」計算出 HMAC 值,並同時發送資料與 HMAC。
- 接收者使用相同的「資料」和「秘密金鑰」計算 HMAC,並檢查其是否與接收到的 HMAC 相符。
這可以同時驗證 完整性(資料未被更改)和 真實性(訊息來自正確的發送者)。它被廣泛用於 Web API 認證和 Webhook 驗證。
使用我們的工具進行測試
使用我們的 雜湊與 HMAC 生成器 立即生成 SHA-256 或 SHA-512 雜湊,並使用秘密金鑰輕鬆計算 HMAC。
⚠️ 注意: 雖然理論上不同的資料可能會產生相同的雜湊值(碰撞),但在現代演算法中,要蓄意造成碰撞在計算上是不可行的。