必须用命令行计算哈希值并与官方校验值比对:windows可用certutil(如certutil -hashfile "path" sha256)或powershell(get-filehash -path "path" -algorithm sha256 | select-object -expandproperty hash)获取纯净哈希值,再通过记事本自动替换法逐字符比对确保一致。

验证软件下载后是否被篡改或损坏,必须通过命令行计算其哈希值并与官方公布的校验值比对。Windows 系统自带 certutil 和 PowerShell,无需安装任何第三方工具即可完成验证,操作全程在终端中执行,结果可直接复制比对。
用 certutil 计算 MD5 或 SHA256 值
第一步:按 Win + R 打开“运行”,输入 cmd 回车,启动命令提示符。
第二步:输入完整命令,路径含空格时必须用英文双引号包裹:
certutil -hashfile "D:\Downloads\setup.exe" SHA256
第三步:回车执行,输出中“SHA256 哈希”下方那行 64 位十六进制字符串就是你要的校验值。【注意:certutil 默认输出两行相同哈希值,只取第二行用于比对,第一行末尾带换行符可能影响粘贴】
第四步:将该值与官网提供的 SHA256 值逐字符比对,完全一致才表示文件完整无篡改。
用 PowerShell 获取纯净哈希字符串
PowerShell 输出结构化数据,适合需要自动化提取或批量处理的场景。
右键“开始”→选择“Windows Terminal(管理员)”或“PowerShell(管理员)”。
执行命令:
Get-FileHash -Path "D:\Downloads\setup.exe" -Algorithm SHA256 | Select-Object -ExpandProperty Hash
这一步直接输出 64 位大写 SHA256 值,无多余文字和换行,【复制后可立即粘贴到比对工具中,不会因空格或回车导致误判】。
用 certutil 一次性校验多个算法
方法一:分别执行不同算法命令
certutil -hashfile "D:\Downloads\setup.exe" MD5
certutil -hashfile "D:\Downloads\setup.exe" SHA1
certutil -hashfile "D:\Downloads\setup.exe" SHA256
方法二:写成单行批处理(适用于需反复验证的场景)
for %a in (MD5 SHA1 SHA256) do @certutil -hashfile "D:\Downloads\setup.exe" %a 2>nul | findstr ":"
该命令会连续输出三种算法的哈希值,每行以冒号分隔,便于快速定位。但注意:SHA1 已不推荐用于安全敏感场景,仅作兼容性参考。
比对哈希值是否匹配
① 打开官网页面,找到发布的校验值(通常标注为 SHA256、SHA-256 或 checksum)。
② 复制官网值,粘贴到记事本中;再将命令行输出的哈希值另起一行粘贴。
③ 全选两行 → Ctrl+H → 查找内容填入第一个值 → 替换为留空 → 点击“全部替换”。
④ 如果只剩一行,说明两值完全一致;如果还剩两行,说明不匹配,文件不可信。
这一步不能靠肉眼扫读,32 或 64 位字符串中任意一位出错都会导致校验失败。自动替换法零误差,且无需额外工具。











