文件哈希校验

计算任意大小文件的 SHA-256、SHA-1、SHA-512、MD5、CRC32,粘贴期望值或整份 SHA256SUMS 即可逐个核对,不一致时指出第几个字符不同。文件在浏览器里分块读取,不上传。

  • 在浏览器中处理
  • 数据不离开你的设备
  • 免费 · 无需注册
默认立即计算 SHA-256。勾选其他算法会为当前文件补算,每种算法使用独立后台线程。完成前请保持页面打开。
算法
选择或拖入文件后立即计算哈希。继续导入会追加文件,最多 1,000 个。拖入文件夹会保留相对路径;电脑上也可点「选择文件夹」。文件没有固定大小上限。
期望的哈希值或校验列表
可选。可粘贴哈希值、「3a1f… file.iso」这样的行、SHA256SUMS、certutil 或 Get-FileHash 的输出,也认 Base64 / SRI。期望值可自动启用对应算法。每个文件会显示是否匹配,不一致时标出第一个不同字符;哈希一致时允许文件名不同。 打开不超过 1 MB 的校验文本文件。文件内容会替换期望值,并与当前文件核对。

拖入文件或文件夹,或点击选择 不限大小 · 在本机读取,不上传

文件由后台线程在本机读取,不上传、不保存。

阅读完整使用指南 File Hash Checker:在浏览器中用 SHA-256 验证下载完整性
示例、说明与常见问题 带实际输出的示例、与同类工具的差别,以及常见问题。

实测:从 npmmirror 下载 Node.js 后核对

国内下载 Node.js 常用 npmmirror 镜像。2026 年 10 月 1 日核对,npmmirror 上 v24.21.0 的 SHASUMS256.txt 与 nodejs.org 的原文件 逐字节相同,共 34 行。

从镜像下载 node-v24.21.0-win-x64.zip(37,618,919 字节),拖进工具,再把 34 行整份粘贴进去,结果是:

node-v24.21.0-win-x64.zip   35.9 MB   ✓ 一致
SHA-256  158f7685b44de51f6c0df1d153526cbcd3e1bc739a8dfc607721cef75de9e541
与列表中 node-v24.21.0-win-x64.zip 的 SHA-256 一致(第 22 行)。

下方汇总显示「1 个一致 · 0 个不一致」和「列表中有 33 个文件没有选择」。其余 33 行对应其他平台的安装包,没有选择不算错误,和 Linux 上 sha256sum -c --ignore-missing 的处理一样。

如果下载中断了,比如只拿到前 30,000,000 字节,卡片会变红,显示「不一致」和「与列表中 … 的 SHA-256 不一致(第 22 行),从第 1 个字符开始不同」。哈希值只要有一个字节不同就整体改变,所以「从第几个字符开始不同」只帮你确认没有看错,不代表文件只坏了一点。

浏览器把重名文件保存成 node-v24.21.0-win-x64 (1).zip 时,文件名对不上列表,工具会按哈希值找到对应的行,提示「只是文件名不同」。

Windows 命令输出可以直接粘贴

很多教程让 Windows 用户在命令行里算哈希,再自己逐位比对。命令的输出可以整段粘贴进来,由工具比对:

certutil -hashfile node-v24.21.0-win-x64.zip SHA256
Get-FileHash node-v24.21.0-win-x64.zip

certutil 的输出有一行说明、一行哈希、一行完成提示;Get-FileHash 默认算 SHA256,输出大写十六进制的表格。两种格式工具都能识别,大小写、全角数字和夹在中间的空格也不影响。反过来,勾选「大写」后复制的结果和 Get-FileHash 的写法一致。

能识别的其他写法:shasum --tag 与 OpenSSL 的 SHA256 (文件名) = 哈希、npm package-lock.json 里的 sha512-…(Base64,W3C SRI 格式)、Docker 的 sha256:…、SFV 校验文件里的 CRC32。粘贴的内容有误时会指出行号:多一个字符的 SHA-256 会提示「第 1 行:第 65 个字符「x」不是十六进制数字」,标着 SHA3 的值会提示不支持。

大文件不再把整个文件读进内存

浏览器自带的 Web Crypto 接口只能一次性计算整块数据。本工具旧版因此先把整个文件读进内存:1 GB 文件让页面多占约 2 GB 内存,同时勾选 MD5 时页面卡住 12 秒,3 GB 文件直接报「读取文件失败」。现在改为用 hash-wasm 在后台线程里按 1 MB 分块计算。

2026 年 10 月 1 日在 Apple M1 Max 的桌面 Chromium 上实测:1 GB 文件算 SHA-256 用时 4.3 秒,页面多占约 100 MB 内存,计算期间页面照常响应。4,080,486,400 字节的 Ubuntu 24.04.5 服务器版 ISO 算出的 SHA-256 与 Ubuntu 官方 SHA256SUMS 一致。进度条显示百分比、速度和剩余时间,可以随时停止。

与同类工具的差异

2026 年 10 月 1 日在桌面 Chromium 中用同一组文件测试,并在开发者工具里查看网络请求,以下工具都没有上传文件。

工具0 字节文件3 GB 文件选错文件后的显示
本工具正确(e3b0c442…b855)正确每个文件各自一张卡片
tool.lu 文件hash计算(MD5)没有结果80 秒后仍无结果,也无报错先算 abc.txt 再选 0 字节文件,框里仍是上一个文件的 MD5
emn178 Online Tools没有结果正确,83 秒—
PiliApp(kr.piliapp.com)正确150 秒后仍无结果,也无报错只按哈希值匹配,不看文件名

最后一列的问题最容易误导人:tool.lu 换了文件却没出新结果时,旧文件的 MD5 还留在框里;PiliApp 收到一份把两个文件的哈希写反了的列表,两个文件仍都标「일치」(一致)。本工具按文件名对应列表的行,同样的列表会让两个文件都显示「不一致」。

限制

  • 支持 SHA-256、SHA-1、SHA-384、SHA-512、MD5、CRC32。SHA-224、SHA3、BLAKE2(如 Arch Linux 的 b2sums.txt)、BLAKE3 不计算,粘贴这类值会提示不支持。
  • 一次最多 1,000 个文件;校验列表文件不超过 1 MB。
  • 不验证 GPG 签名。哈希一致只说明文件和列表相同;要确认列表本身来自发布方,请按 Node.js 的说明或 Ubuntu 的教程验证签名。
  • MD5、SHA-1 可以被人为构造碰撞(SHA-1 的实例见 SHAttered),CRC32 只能发现意外损坏。
  • 「选择文件夹」按钮在窄屏上隐藏;拖入文件夹在支持拖放的浏览器里都可用。
  • 要算一段文字的哈希,用哈希生成器;需要带密钥的哈希,用 HMAC 生成器。

FAQ

文件会上传吗?

不会。浏览器里的后台线程把文件按 1 MB 分块从磁盘读出来计算,页面不会把文件发到任何地方,也不保存。唯一的网络请求是从本站加载计算脚本本身。

文件大小有上限吗?

没有固定上限。文件按流读取,4 GB 的 ISO 也只多占约 100 MB 内存。耗时随大小增加:在 Apple M1 Max 上,1 GB 文件算 SHA-256 约 4 秒。计算完成前请不要关闭页面。

下载页只给了 MD5,还可靠吗?

用来发现下载损坏或不完整没有问题。但 MD5 和 SHA-1 都能被人为构造碰撞,防不了有意篡改。发布方同时给了 SHA-256 时,优先核对 SHA-256。

粘贴后提示「63 位十六进制不是任何支持的哈希长度」是什么意思?

每种算法的长度是固定的:CRC32 8 位、MD5 32 位、SHA-1 40 位、SHA-256 64 位、SHA-384 96 位、SHA-512 128 位。长度对不上,说明复制时少了或多了字符,请回到下载页重新复制。

哈希一致就说明文件安全吗?

只能说明文件和校验列表一字不差。如果攻击者能同时替换文件和列表,两者照样一致。Node.js、Ubuntu 都给校验列表做了 GPG 签名,需要更高把握时先用 GnuPG 验证列表。