跳至主內容

雜湊產生器

雜湊產生器是一個線上工具,可以產生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
  • 即時計算:輸入時自動產生所有雜湊值
  • 一鍵複製:快速複製任何雜湊值
  • 清除功能:一鍵清除所有輸入和輸出

什麼是雜湊函數?

雜湊函數是將任意長度的資料轉換為固定長度輸出的演算法。雜湊值用於驗證資料完整性、密碼儲存、數位簽章等。

雜湊演算法比較

演算法輸出長度安全性用途
MD5128位元 (32字元)❌ 不安全非安全性校驗和
SHA-1160位元 (40字元)⚠️ 已弱化舊系統
SHA-256256位元 (64字元)✅ 安全推薦用於安全用途
SHA-512512位元 (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)

使用場景

1. 檔案完整性驗證

# 計算檔案的SHA-256雜湊
sha256sum file.zip

# 比較雜湊值驗證檔案完整性

2. Git提交ID

Git使用SHA-1雜湊值作為提交ID:

git log --oneline
# 輸出: a1b2c3d Fix bug in authentication

3. 資料去重

使用雜湊值快速識別重複資料,無需逐位元組比較。

相關工具