🧰在线工具箱

哈希计算器

计算 MD5、SHA-256 等哈希值

提示:所有计算均在浏览器本地完成,数据不会上传至服务器

工具简介

哈希(Hash)是一种将任意长度的数据转换为固定长度摘要的算法。同样的输入永远产生相同的输出,但无法从输出反推出输入,且微小的输入变化会导致输出完全不同。本工具支持MD5、SHA-1、SHA-256、SHA-512等常用哈希算法,可以快速计算文本的哈希值。所有计算都在浏览器本地完成,您的数据不会上传到任何服务器,适合处理敏感信息。

使用方法

  1. 在「输入文本」框中输入或粘贴要计算哈希的内容
  2. 点击「计算哈希值」按钮
  3. 页面会同时显示MD5、SHA-1、SHA-256、SHA-512四种哈希结果
  4. 点击各算法旁的「复制」按钮复制对应的哈希值
  5. 可以通过对比哈希值验证数据完整性

常见使用场景

  • 文件校验:计算文件哈希值验证下载是否完整
  • 密码存储:使用哈希存储密码(建议配合盐值)
  • 数据完整性:验证数据在传输过程中未被篡改
  • 数字签名:作为数字签名和证书的基础
  • 数据去重:使用哈希值快速判断数据是否重复
  • 区块链:哈希算法是区块链技术的核心

常见问题(FAQ)

Q1: MD5、SHA-1、SHA-256有什么区别?

它们的主要区别是输出长度和安全性:MD5产生128位(32个十六进制字符)哈希值,SHA-1产生160位(40字符),SHA-256产生256位(64字符),SHA-512产生512位(128字符)。MD5和SHA-1已不再被认为是安全的,推荐使用SHA-256或更高版本。

Q2: 哈希可以被破解吗?

哈希是单向的,理论上无法从哈希值反推原文。但MD5和SHA-1已被发现存在碰撞漏洞(不同输入产生相同哈希),不应用于安全敏感场景。简单密码可能被彩虹表攻击,因此密码存储建议使用bcrypt、scrypt等专用算法。

Q3: 为什么同样的内容哈希值不同?

可能的原因:1) 文本前后有不可见的空格或换行符;2) 使用了不同的字符编码(UTF-8 vs GBK);3) Windows和Unix的换行符不同(CRLF vs LF)。哈希对输入极其敏感,任何微小差异都会导致完全不同的结果。

Q4: 这个工具可以计算文件的哈希吗?

目前本工具只支持文本输入。文件哈希计算需要读取整个文件内容,对于大文件可能影响浏览器性能。如需计算文件哈希,可以在命令行使用md5sum、sha256sum等工具,或使用专业的文件校验软件。

Q5: 哈希和加密有什么区别?

哈希是单向的,无法还原原文;加密是双向的,可以解密还原。哈希用于验证数据完整性,加密用于保护数据机密性。例如,密码应该哈希存储而不是加密存储,因为哈希无法被还原。