K
ken
首页文章🕐 时间转换📋 JSON 工具🖼️ Base64 图片🔑 密码生成 Cron 表达式🔤 命名转换📱 二维码生成#️⃣ 哈希计算🔡 编码转换🔍 正则表达式⚙️ 配置文件格式转化🔐 加解密⚖️ BMI 计算🎲 随机数据🗜️ 图片工具🌍 世界时钟🏛️ 罗马数字🔢 数字转中文💰 贷款计算

哈希计算

哈希函数(Hash Function)将任意长度的输入数据映射为固定长度的输出(摘要),是密码学和数据完整性校验的基础工具。SHA-256 用于 API 签名和区块链,MD5 用于文件校验,SHA-512 用于密码哈希——不同的场景需要不同的算法。这个工具在浏览器本地计算五种主流哈希值,你的数据不会离开设备。

支持 MD5、SHA-1、SHA-256、SHA-384、SHA-512 五种算法,实时计算,支持大小写输出切换。注意:MD5 和 SHA-1 已被证明存在碰撞漏洞,不应用于安全场景;密码存储请使用 bcrypt/argon2 等专用算法,而非裸哈希。

📖 哈希计算工具使用说明

什么是哈希函数?

哈希函数(Hash Function)是一类数学算法,它将任意长度的输入数据映射为固定长度的输出(称为摘要、哈希值或指纹)。哈希函数的核心特性:确定性(相同输入永远得到相同输出)、单向性(无法从哈希值反推原始输入)、雪崩效应(输入改动一个 bit,输出至少一半不同)。这三个特性使哈希成为数据完整性校验的基础。

五种算法对比

  • MD5(128 位):输出 32 位十六进制字符串。速度快但已被破解——存在碰撞漏洞,两个不同文件可生成相同 MD5。不应用于安全场景,但仍广泛用于文件校验和(如软件下载站的校验码)。
  • SHA-1(160 位):输出 40 位十六进制。2017 年 Google 公布首个 SHA-1 碰撞攻击(SHAttered)。Git 仍用 SHA-1 作为对象标识符,但已向 SHA-256 过渡。不推荐用于新项目。
  • SHA-256(256 位):输出 64 位十六进制。SHA-2 家族中最常用的算法。比特币挖矿、TLS 证书、API 签名(HMAC-SHA256)均使用此算法。目前认为安全。
  • SHA-384(384 位):SHA-512 的截断版,输出 96 位十六进制。安全性介于 SHA-256 和 SHA-512 之间,在某些平台上比 SHA-512 更快。
  • SHA-512(512 位):输出 128 位十六进制,哈希值最长。适用于高安全要求场景,但计算开销更大。在 64 位 CPU 上效率比 SHA-256 更高。

⚠️ 安全提醒

MD5 和 SHA-1 已被破解,不应用于任何安全场景。对于密码存储,不要直接使用 SHA 哈希——应使用 bcrypt、scrypt 或 Argon2 等专门的密码哈希算法(它们内置了加盐和多次迭代)。SHA-256 适用于 API 签名、文件完整性校验、证书验证等场景,但不适用于密码存储。

命令行替代方案

# Linux/macOS sha256sum file.txt echo -n "hello" | sha256sum md5sum file.txt # macOS 专用 shasum -a 256 file.txt md5 file.txt