跳到主要内容
AZ Tools

文件哈希 (校验和)

拖入任意文件,即可并行计算出它的 SHA-1、SHA-256 和 SHA-512 摘要(小写十六进制),底层使用浏览器内置的 Web Crypto API(crypto.subtle.digest)。这些是与命令行工具相同的标准算法,因此结果与 Linux 的 sha256sum、macOS 的 shasum -a 256、Windows 的 Get-FileHash 完全一致。文件只在你设备的内存中读取,绝不会上传——页面加载后即使离线也能计算哈希。 最典型的用途是校验下载:ISO、安装包和固件的发布方会在文件旁公布校验和,如果你在本地算出的摘要与之相符,就说明字节完好无损、未被改动。哈希只针对内容,所以重命名文件不会改变哈希值,而哪怕只翻转一个比特也会得到完全不同的摘要(雪崩效应)。需要注意:SHA-1 是为了兼容旧的已发布校验和而保留的,但针对它的真实碰撞攻击已被演示——请只把它当作损坏检查,安全场景请依赖 SHA-256 或 SHA-512。

将文件拖放到此处

或点击选择

使用方法

  1. 将文件拖到拖放区,或点击它打开文件选择器。
  2. 稍等片刻,三个摘要会同时计算——大文件可能需要几秒钟。
  3. 用复制按钮复制你需要的哈希。
  4. 与同一算法的官方校验和比对;十六进制不区分大小写,但每个字符都必须一致。
  5. 点击清空以重置并计算另一个文件。

常见问题

我的文件会被上传到哪里吗?
不会。文件在本地读取并用浏览器内置的 Web Crypto API 计算哈希,任何字节都不会离开你的设备;页面加载后即使离线也能计算。
为什么没有 MD5 选项?
MD5 多年前就已被密码学攻破,因此 Web Crypto API 刻意不提供它。如果某个网站只公布 MD5 校验和,请只把它当作意外损坏的检查,绝不要当作文件未被篡改的证明。
SHA-1 还安全吗?
用于检测意外损坏没问题;用于安全场景则不行:实用的碰撞攻击(如 2017 年的 SHAttered)意味着攻击者可以构造两个 SHA-1 值相同的不同文件。当发布方提供多种校验和时,请校验 SHA-256 或 SHA-512。
最大能哈希多大的文件?
哈希前会把整个文件读入内存,因此上限是设备的可用内存。几百 MB 以内通常没问题;几 GB 的文件(尤其在手机上)更适合用 sha256sum 之类的命令行工具。
哈希与公布的值不一致,该怎么办?
先确认比较的是同一算法且是完整字符串(十六进制不分大小写)。如果仍不一致,说明文件字节与原版不同——可能是下载不完整、版本不同或被篡改。请在打开或安装前重新下载并再次校验。

相关主题指南

相关工具