FormLab

Hash 计算器

基于 Web Crypto API 的 SHA-1 / SHA-256 / SHA-384 / SHA-512。文本或文件,实时计算。

它能解决什么问题

Hash(哈希)是把任意数据映射成定长"指纹"的单向函数。本工具能:

算法对比

算法 输出长度 安全性(2026) 推荐用途
SHA-1160 bit / 40 hex⚠ 已破解(碰撞攻击)仅 git 提交校验等场景
SHA-256256 bit / 64 hex✓ 安全通用首选(文件校验、内容指纹)
SHA-384384 bit / 96 hex✓ 安全高安全场景
SHA-512512 bit / 128 hex✓ 安全密码学级哈希、签名

使用技巧与注意事项

  • 不要把 SHA 当密码哈希:SHA 计算速度太快(每秒 GB 级),无法抵御暴力破解。生产密码请用 Argon2id / bcrypt / scrypt。
  • MD5 已不再支持:浏览器出于安全考虑移除了 MD5 加速指令,本工具不提供 MD5。如确实需要,请用其他工具或 Node.js 的 crypto 模块。
  • SHA-1 已不再安全:2017 年 SHAttered 证明了 SHA-1 碰撞攻击可行。本工具仅保留以校验 git 等历史场景。
  • 文件哈希:SHA-256 已足够应对绝大多数场景,无需 SHA-512。SHA-512 在 64 位 CPU 上反而更快(用 64 位整数运算),但输出更大。
  • 大文件:本工具会分块读取并合并哈希,浏览器主线程不会卡顿。但超过 500 MB 仍可能触发内存警告。

FAQ

为什么没有 MD5?

浏览器出于安全考虑已移除 MD5。如果确实需要 MD5(例如校验旧文件),建议使用 Node.js 的 crypto.createHash('md5') 或 Python 的 hashlib.md5()。

哈希可以反向吗?

理论上不行(单向函数)。但"彩虹表"可以用预先算好的字典反查弱口令。本工具生成的 SHA-256 是密码学安全单向的。

相关工具