哈希生成

哈希是某段数据的简短指纹:相同的输入永远得到相同的字符串,而改动一个字节就会让它面目全非。因此它是校验下载是否完整、两个文件是否真的相同、文件在别人公布校验值之后有没有被改动的标准做法。这个工具会为你输入的文本或选择的文件同时计算 SHA-1、SHA-256、SHA-384 和 SHA-512,还能把结果与你粘贴进来的校验值比对——当那串数字有 64 个字符时,用眼睛核对正是出错的方式。计算由浏览器内建的密码学实现完成,所以再大的文件也不会离开你的设备。

如何生成哈希或校验一个 checksum

  1. 选择「文本」来计算你输入内容的哈希,或选择「文件」来计算设备上某个文件的哈希。
  2. 查看结果——四种算法一次算完,你不必猜某个网站公布的是哪一种。
  3. 要校验下载文件,把公布的校验值粘进比对框。是否一致由工具确认,不用交给你的眼睛。
  4. 用旁边的按钮复制你需要的那一个哈希值。

关于哈希和校验值的常见问题

为了计算哈希,我的文件会被上传吗?

不会。文件在你的设备上读取,并由浏览器内建的 WebCrypto 实现计算哈希。什么都不会经过网络,而且大文件也能以原生速度处理。

我该用哪种算法?

除非对方另有说明,就用 SHA-256——它是软件校验值、签名和多数协议的默认选择。SHA-512 也很好,在 64 位机器上可能更快。SHA-1 只用于比对一个旧的公布值,绝不要用于任何与安全相关的用途。

为什么没有提供 MD5?

因为浏览器没有实现它:它多年前就已被攻破——可以构造出两个不同的文件共享同一个 MD5。任何还依赖 MD5 做完整性或安全校验的东西,都该迁移到 SHA-256。

能把哈希还原成原始数据吗?

不能。哈希只朝一个方向走,而且无论输入多大,输出长度都是固定的。不过简短、常见的输入仍可以靠逐一试候选值猜出来——这正是密码需要加盐且刻意放慢的哈希,而不是一个朴素 SHA-256 的原因。

校验值对不上,怎么办?

重新下载一次文件——传输中断或损坏是最常见的原因。如果重新下载的副本仍然对不上,请不要打开它:要么公布的校验值属于另一个版本,要么这个文件根本不是他们发布的那一个。

Other tools

Languages