必须用命令行校验文件哈希值以确认完整性:certutil支持md5/sha256单文件校验,powershell的get-filehash可批量生成csv报告,crc32需借助7-zip或rhash实现。

当你下载完系统镜像、软件安装包或重要数据文件后,必须用命令行快速算出它的MD5、SHA256等校验值,再和官网公布的哈希串逐字符比对,才能确认文件没被篡改或损坏。
用CertUtil计算单个文件的MD5或SHA256
这是Windows 10/11原生支持、无需安装任何软件的方法,适合临时验证一个文件。
按Win + R,输入cmd回车打开命令提示符。
输入命令:certutil -hashfile "C:\Downloads\setup.exe" SHA256,把路径和文件名换成你的真实路径——【路径含空格或中文时,双引号绝对不能省】。
回车后,第二行就是纯哈希值,共64个字符,直接复制比对即可。若要算MD5,把SHA256换成MD5,输出是32位小写十六进制串。
拖拽技巧:先输入certutil -hashfile (末尾留空格),再把文件从资源管理器拖进命令行窗口,路径自动填好,补上算法名回车就行。
用PowerShell的Get-FileHash批量处理多个文件
当你需要一次性校验整个文件夹里几十个安装包时,PowerShell比CertUtil更结构化、更易导出结果。
第一步:右键“开始”→选择Windows Terminal(管理员)或PowerShell(管理员)启动。
第二步:执行Set-Location "D:\ISOs"切换到目标文件夹。
第三步:运行以下命令生成CSV报告:Get-ChildItem *.iso | Get-FileHash -Algorithm SHA256 | Select-Object Algorithm, Hash, Path | Export-Csv -Path "report.csv" -Encoding UTF8 -NoTypeInformation
生成的report.csv可用Excel打开,Hash列全是大写、无空格、无前缀的64位SHA256值,Path列带完整路径,方便溯源。
如果只要哈希字符串列表(比如粘贴到文本比对),去掉Select-Object部分,改用| ForEach-Object {$_.Hash}管道提取。
计算CRC32值(CertUtil不支持,需第三方工具)
CertUtil不支持CRC32,但Windows用户常用7-Zip或RHash来补足这一缺口。
方法一:用已安装的7-Zip命令行
打开CMD,先切到7-Zip安装目录:cd /d "C:\Program Files\7-Zip";
再执行:7z.exe h -scrcCRC32 "D:\data.bin"——【注意参数是-scrcCRC32,不是-crc32,少一个字母会报错】。
方法二:用RHash(推荐长期使用)
在管理员PowerShell中运行:choco install rhash(如未装Chocolatey则跳过此步);
安装完成后新开一个终端,直接输:rhash --crc32 "D:\data.bin",输出就是8位小写十六进制CRC32值。











