什麼是 SHA-1?
SHA-1(安全雜湊演算法 1)是一種加密雜湊函數,產生 160 位元(20 位元組)的雜湊值,通常呈現為 40 個字元的十六進位數。它由 NSA 設計並於 1995 年由 NIST 作為數位簽章標準的一部分發布。
主要特徵:
- 確定性:相同的輸入總是產生相同的雜湊
- 快速計算:對於任何給定輸入都能快速計算
- 雪崩效應:輸入的微小變化會產生截然不同的輸出
- 不可逆:從雜湊反推原始輸入在計算上是不可行的
- 碰撞脆弱性:已知漏洞使得找到碰撞成為可能
安全狀態: ⚠️ SHA-1 在密碼學上已被破解,不應用於安全關鍵應用。理論攻擊在 2005 年得到證明,實際碰撞攻擊在 2017 年實現。
常見用途(歷史):
- 數位簽章和憑證(已棄用)
- Git 版本控制系統(為了相容性)
- 需要 SHA-1 的遺留系統
- 檔案完整性驗證(非安全關鍵)
- 工作量證明演算法(一些較老的加密貨幣)
推薦替代方案:
- 新應用使用 SHA-256 或 SHA-3
- 高安全要求使用 SHA-512