雜湊產生器
雜湊產生器是一個線上工具,可以產生MD5、SHA-1、SHA-256、SHA-512雜湊值。支援即時雜湊計算和一鍵複製功能。
📝 輸入文字
✨ 生成的雜湊
MD5128-bit
SHA-1160-bit
SHA-256256-bit ⭐ 권장
SHA-512512-bit
雜湊函數將任意大小的資料轉換為固定大小的值。用於密碼儲存、檔案完整性驗證等。SHA-256是目前最推薦的演算法。
功能
- 多種演算法:支援MD5、SHA-1、SHA-256、SHA-512
- 即時計算:輸入時自動產生所有雜湊值
- 一鍵複製:快速複製任何雜湊值
- 清除功能:一鍵清除所有輸入和輸出
什麼是雜湊函數?
雜湊函數是將任意長度的資料轉換為固定長度輸出的演算法。雜湊值用於驗 證資料完整性、密碼儲存、數位簽章等。
雜湊演算法比較
| 演算法 | 輸出長度 | 安全性 | 用途 |
|---|---|---|---|
| MD5 | 128位元 (32字元) | ❌ 不安全 | 非安全性校驗和 |
| SHA-1 | 160位元 (40字元) | ⚠️ 已弱化 | 舊系統 |
| SHA-256 | 256位元 (64字元) | ✅ 安全 | 推薦用於安全用途 |
| SHA-512 | 512位元 (128字元) | ✅ 安全 | 高安全要求 |
安全警告
- 不要使用MD5和SHA-1用於安全目的:這些演算法已經被破解,不再安全
- 不適合密碼儲存:直接雜湊密碼不安全,應使用bcrypt、scrypt或Argon2
- 需要加鹽:密碼雜湊時必須使用隨機鹽值防止彩虹表攻擊
程式範例
JavaScript
// 使用Web Crypto API產生SHA-256
async function sha256(text) {
const encoder = new TextEncoder();
const data = encoder.encode(text);
const hashBuffer = await crypto.subtle.digest('SHA-256', data);
const hashArray = Array.from(new Uint8Array(hashBuffer));
return hashArray.map(b => b.toString(16).padStart(2, '0')).join('');
}
// 使用
sha256('Hello World').then(hash => {
console.log(hash);
// 輸出: a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e
});
Python
import hashlib
# MD5
md5_hash = hashlib.md5('Hello World'.encode()).hexdigest()
print(md5_hash) # b10a8db164e0754105b7a99be72e3fe5
# SHA-256
sha256_hash = hashlib.sha256('Hello World'.encode()).hexdigest()
print(sha256_hash)
# a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e
# SHA-512
sha512_hash = hashlib.sha512('Hello World'.encode()).hexdigest()
print(sha512_hash)