文件哈希值计算(SHA-256/SHA-512 校验和)

在浏览器内计算文件或文本的 SHA-256、SHA-512 哈希值,并与公布的校验和比对是否一致。文件不会上传。

  • 在浏览器内处理(不上传)
要计算的对象

文件不会上传。Web Crypto 无法分段计算,因此会把整个文件读入本设备的内存。 每个文件上限 256 MB

算法

与公布的哈希值比对

粘贴下载页面等处公布的值。忽略大小写和空格。也支持“哈希值 文件名”格式的行、SHA256SUMS 等多行列表、“sha256:…”以及 SRI(sha256-…)。

使用方法

  1. 选择“文件”或“文本”,再选择文件(或输入文本)。
  2. 选择要计算的算法。默认是 SHA-256 和 SHA-512,也可以加上 SHA-384 和旧式的 SHA-1。
  3. 把公布的哈希值粘贴到“预期的哈希值”,即可立即看到是否一致。

常见问题

文件会上传到服务器吗?

不会。文件只会读入本设备的内存,由浏览器内置的 Web Crypto API(crypto.subtle.digest)计算。文件内容、文本和哈希值都不会被发送、保存或记录。

有文件大小限制吗?

每个文件最多 256 MB。Web Crypto 不支持分段计算,必须把整个文件读入内存。更大的文件可以在 Windows 用“certutil -hashfile 文件名 SHA256”、macOS 用“shasum -a 256 文件名”、Linux 用“sha256sum 文件名”校验。

应该选哪种算法?

请与发布方公布的算法保持一致,最常见的是 SHA-256。SHA-1 已于 2017 年被证实可以碰撞,只适合比对旧的公开值。不支持 MD5。

为什么文本的哈希值和其他工具不同?

常见原因是换行符(LF 与 CRLF)、末尾换行(echo 命令会自动加换行)或文本编码不同。本工具直接按输入文本的 UTF-8 字节计算。

一致就说明文件安全吗?

一致只说明内容与生成该哈希值的文件相同,并不检查恶意程序。如果攻击者同时替换了文件和公布的值,结果仍会一致,因此请从官方 HTTPS 网站或带签名的来源获取哈希值。

注意事项与限制

  • 你输入的内容只在本页面处理,不会发送到 YUCTS 的服务器。
  • 每个文件最多 256 MB。整个文件会读入内存,内存较小的手机计算大文件时可能较慢或失败。
  • 支持 SHA-256、SHA-512、SHA-384 和 SHA-1;不支持 MD5、CRC32、SHA-3、BLAKE。
  • 哈希值一致只说明内容相同,并非恶意程序扫描,也不是数字签名(如 GPG)验证。
  • 文件和文本只在浏览器内处理,不会被发送、保存或记录。

数据来源