文本哈希(MD5 / SHA)
本地计算 MD5、SHA-1、SHA-256、SHA-384、SHA-512
输入文本后自动计算多种摘要;比对结果前检查末尾换行和 UTF-8 字节数,SHA 计算需要浏览器支持。
| MD5 | ||
|---|---|---|
| SHA-1 | ||
| SHA-256 | ||
| SHA-384 | ||
| SHA-512 |
示例
输入
abc
示例结果
SHA-256: ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
输入末尾不要加换行;示例为 3 个 UTF-8 字节。
技术细节与边界
相同算法处理完全相同的字节才会得到相同摘要,空格、换行、BOM 和 Unicode 组合形式都会影响结果。SHA 系列使用 Web Crypto,需 HTTPS 或 localhost 安全上下文。MD5、SHA-1 存在碰撞弱点;无盐快速散列不适合存储密码,本页也不计算 HMAC。
关于此工具
计算 UTF-8 文本的 MD5、SHA-1、SHA-256、SHA-384 与 SHA-512 摘要,同时显示输入字节数。适合核对文本内容和实现测试向量;不上传输入,不提供摘要反查。
适用场景
- 核对下载文件是否与官方公布的哈希一致。
- 为登录 / 支付签名生成 SHA-256 摘要。
- 排查数据库或缓存里散列后的 key 是不是同一原文。
输入 / 输出说明
- 输入
- 任意 UTF-8 文本。
- 输出
- 5 种哈希算法各一行十六进制摘要,可分别复制。
注意事项
MD5 与 SHA-1 已经不建议用于签名或防篡改用途;对普通去重、缓存 key 仍然可用。密码存储请用带盐的 bcrypt/argon2,不要直接哈希。
常见问题
- 为什么和 Linux `md5sum` 结果不一样?
- 很可能是编码或行尾差异。本工具按 UTF-8 编码后哈希;`md5sum` 直接按文件字节。检查是否有 BOM、行尾 `\r\n` vs `\n` 差异。
- MD5 还能用吗?
- 不再适合用作签名(存在实用碰撞攻击)。用于内容去重、缓存 key 等非安全场景仍然可以。
- 有 SHA-3、BLAKE2 吗?
- 浏览器 WebCrypto 目前不含 SHA-3 与 BLAKE 系列;本工具暂不提供。
- 为什么和命令行算出的摘要不同?
- 先检查命令是否自动补换行,例如 echo 与 printf 的输出可能不同;再核对编码、BOM 和算法。这里处理文本框中的 UTF-8 文本,不是原文件原始字节。
- SHA 结果不可用时,MD5 结果也无效吗?
- 不一定。MD5 使用本站前端实现,SHA 系列调用浏览器 Web Crypto 接口。SHA 不可用时请检查浏览器支持和安全连接;两部分的执行路径不同。
相关工具