How to Verify File Integrity on Windows: Complete 2026 Guide
Step-by-step instructions for verifying file integrity on Windows using CertUtil, PowerShell Get-FileHash, FolderManifest desktop, and online tools.
🎯 Key Takeaways
- +4 methods covered: CertUtil, PowerShell Get-FileHash, FolderManifest Desktop, and online tools
- +CertUtil is built into Windows: No installation needed — works on Windows 10, 11, and Server
- +PowerShell is more flexible: Supports automation, batch processing, and pipeline integration
- +Always use SHA-256: MD5 has known vulnerabilities — SHA-256 is the modern standard
- +FolderManifest simplifies everything: Visual comparison, batch processing, and HTML reports
Why Verify File Integrity on Windows?
File integrity verification confirms that files haven't been corrupted, tampered with, or accidentally modified. On Windows, this is critical for:
- Downloaded files: Verify that installers and archives match the publisher's checksum
- Backup verification: Confirm backups are identical to originals
- Data migration: Ensure files copied correctly to new drives or servers
- Security auditing: Detect unauthorized file modifications
- Software deployment: Verify deployed files match build artifacts
- Compliance: Meet audit requirements for data governance (SOX, ISO 27001, HIPAA)
Why SHA-256 Over MD5?
MD5 has known collision vulnerabilities — two different files can produce the same hash. SHA-256 is the modern standard with no known practical collisions. Always use SHA-256 for integrity verification in 2026 and beyond.
Method 1: CertUtil (Built-in Windows Tool)
CertUtil is included with every modern Windows installation. It generates file hashes without any additional software — just open Command Prompt.
Basic SHA-256 Hash
Open Command Prompt and run:
certutil -hashfile "C:\path\to\file.txt" SHA256Output Example
SHA256 hash of C:\path\to\file.txt: a1 b2 c3 d4 e5 f6 78 90 12 34 56 78 9a bc de f0 12 34 56 78 9a bc de f0 12 34 56 78 9a bc de f0 CertUtil: -hashfile command completed successfully.
Other Supported Algorithms
| Algorithm | Command | Recommended |
|---|---|---|
| SHA-256 | certutil -hashfile file.txt SHA256 | Yes |
| SHA-384 | certutil -hashfile file.txt SHA384 | Yes |
| SHA-512 | certutil -hashfile file.txt SHA512 | Yes |
| MD5 | certutil -hashfile file.txt MD5 | No |
| SHA-1 | certutil -hashfile file.txt SHA1 | No |
Batch Multiple Files
Create a batch script to hash multiple files:
@echo off for %%f in (C:\folder\*.txt) do ( echo === %%f === certutil -hashfile "%%f" SHA256 echo. ) pause
Pros
- + Built into Windows (no install)
- + Works on all Windows versions
- + Supports SHA-256, SHA-384, SHA-512
- + Fast and lightweight
Cons
- - Command-line only (no GUI)
- - Hard to compare two hashes visually
- - Output format includes spaces
- - No built-in comparison logic
Method 2: PowerShell Get-FileHash
PowerShell's Get-FileHash cmdlet is more flexible than CertUtil. It supports pipeline operations, automation, and produces cleaner output.
Basic SHA-256 Hash
Get-FileHash "C:\path\to\file.txt" -Algorithm SHA256Output Example
Algorithm Hash Path --------- ---- ---- SHA256 A1B2C3D4E5F6789012345678... C:\path\to\file.txt
Compare Two Files
Check if two files are identical:
$hash1 = (Get-FileHash "C:\folder\original.txt" -Algorithm SHA256).Hash
$hash2 = (Get-FileHash "C:\folder\copy.txt" -Algorithm SHA256).Hash
if ($hash1 -eq $hash2) {
Write-Host "Files are IDENTICAL" -ForegroundColor Green
} else {
Write-Host "Files are DIFFERENT" -ForegroundColor Red
}Hash All Files in a Folder
Get-ChildItem "C:\folder" -Recurse -File | Get-FileHash -Algorithm SHA256 | Export-Csv -Path "C:\checksums.csv" -NoTypeInformation Write-Host "Checksums exported to C:\checksums.csv"}
Verify Against Baseline
Compare current files against a saved baseline:
$baseline = Import-Csv "C:\checksums.csv"
$current = Get-ChildItem "C:\folder" -Recurse -File | Get-FileHash -Algorithm SHA256
foreach ($file in $current) {
$base = $baseline | Where-Object { $_.Path -eq $file.Path }
if ($base -and $base.Hash -ne $file.Hash) {
Write-Host "CHANGED: $($file.Path)" -ForegroundColor Yellow
} elseif (-not $base) {
Write-Host "NEW: $($file.Path)" -ForegroundColor Cyan
}
}Pros
- + Built into Windows (PowerShell 4+)
- + Pipeline support for automation
- + Clean output format
- + CSV export for audit trails
- + Supports comparison logic
Cons
- - Command-line only
- - Requires PowerShell knowledge
- - Slow on very large folder trees
- - No visual comparison
Method 3: FolderManifest Desktop
FolderManifest Desktop provides a visual, point-and-click interface for file integrity verification. It combines the accuracy of SHA-256 checksums with an intuitive GUI — no command-line skills needed.
How to Verify Files
- 1. Install FolderManifest Desktop on Windows
- 2. Select the two folders or files to compare
- 3. Enable SHA-256 checksum calculation
- 4. Click "Compare" — FolderManifest hashes every file
- 5. Review the visual comparison report
- 6. Export HTML report for documentation or auditing
Features
Method 4: Online Verification Tools
If you need to verify a file quickly without installing anything, online tools like FolderManifest's free file comparison tool work directly in your browser.
Using FolderManifest Online
- 1. Visit foldermanifest.com/free-tools/compare-files
- 2. Upload the original file to the left panel
- 3. Upload the file to verify to the right panel
- 4. Click "Compare Files"
- 5. Review the SHA-256 checksum results — if they match, files are identical
Pros
- + No installation required
- + Works on any device with a browser
- + Free forever, no account needed
- + Privacy-first (in-memory processing)
Cons
- - 10MB file size limit per file
- - One comparison at a time
- - Requires internet connection
- - No batch processing
Method Comparison
| Feature | CertUtil | PowerShell | FolderManifest Desktop | FolderManifest Online |
|---|---|---|---|---|
| Installation | Built-in | Built-in | Required | None |
| GUI | ||||
| SHA-256 | ||||
| Batch Processing | Via script | |||
| Export Reports | CSV | HTML | ||
| Cost | Free | Free | $39 one-time | Free |
Automating Integrity Checks
For regular verification, automate your integrity checks with a PowerShell script or Windows Task Scheduler.
PowerShell Verification Script
# verify-integrity.ps1
# Compares current files against a saved baseline
$folder = "C:\ImportantData"
$baseline = "C:\baseline-checksums.csv"
$log = "C:\integrity-log.txt"
$results = Get-ChildItem $folder -Recurse -File | Get-FileHash -Algorithm SHA256
$base = Import-Csv $baseline
$mismatches = 0
$missing = 0
foreach ($b in $base) {
$current = $results | Where-Object { $_.Path -eq $b.Path }
if (-not $current) {
Add-Content $log "[$(Get-Date)] MISSING: $($b.Path)"
$missing++
} elseif ($current.Hash -ne $b.Hash) {
Add-Content $log "[$(Get-Date)] CHANGED: $($b.Path)"
$mismatches++
}
}
Add-Content $log "[$(Get-Date)] Check complete: $mismatches changed, $missing missing"
if ($mismatches -gt 0 -or $missing -gt 0) {
Write-Host "INTEGRITY ISSUES FOUND" -ForegroundColor Red
} else {
Write-Host "All files verified OK" -ForegroundColor Green
}Schedule with Task Scheduler
- Open Task Scheduler (taskschd.msc)
- Create a new Basic Task named "File Integrity Check"
- Set trigger to Weekly (or your preferred schedule)
- Set action to "Start a program"
- Program:
powershell.exe - Arguments:
-ExecutionPolicy Bypass -File "C:\verify-integrity.ps1" - Finish — the script runs automatically on schedule
Best Practices
Always Use SHA-256
Never use MD5 or SHA-1 for integrity verification. SHA-256 is the minimum acceptable standard in 2026. CertUtil, PowerShell, and FolderManifest all support it natively.
Verify After Every Transfer
Generate checksums before copying files, then verify after the copy completes. This catches corruption from network errors, USB disconnections, and software bugs.
Save Baseline Checksums
Export a CSV of checksums after initial file creation or verification. This baseline lets you detect changes over time. Store the baseline separately from the files being monitored.
Automate Regular Checks
Use Task Scheduler (for PowerShell scripts) or FolderManifest Desktop's repeatable verification workflow to run checks automatically. Don't rely on remembering to do it manually.
Frequently Asked Questions
How do I check file integrity on Windows?
The fastest way is to open Command Prompt and run certutil -hashfile filename.txt SHA256. For a visual interface, use FolderManifest Desktop or the free online comparison tool.
Is CertUtil built into Windows?
Yes. CertUtil is included with all modern Windows versions — Windows 10, Windows 11, and Windows Server. No installation or download is needed.
What is the difference between MD5 and SHA-256?
SHA-256 produces a 256-bit hash and is cryptographically secure with no known collision attacks. MD5 produces a 128-bit hash and has known vulnerabilities where different files can produce the same hash. Always prefer SHA-256 in 2026.
Can I automate file integrity checks on Windows?
Yes. Write a PowerShell script using Get-FileHash and schedule it with Windows Task Scheduler. FolderManifest Desktop also supports repeatable verification workflows with HTML report exports.
How do I compare checksums of two files?
Generate the SHA-256 hash of both files using CertUtil or PowerShell. If the hash strings match exactly, the files are byte-for-byte identical. FolderManifest automates this comparison visually.
Does Windows File Explorer show file checksums?
No. Windows File Explorer does not display file checksums natively. You need to use CertUtil, PowerShell, or a third-party tool like FolderManifest.
What if two files have different hashes?
Different hashes mean the files differ — even a single byte change produces a completely different SHA-256 hash. Investigate the cause: corruption, unauthorized modification, or different versions.
Can I verify files without installing software?
Yes. Use CertUtil or PowerShell (both built-in) for command-line verification. Or use FolderManifest's free online tool — works in any browser with no installation.
How long does SHA-256 verification take?
SHA-256 is fast. A 10MB file hashes in 1-2 seconds. Even large folders (thousands of files) complete in minutes on modern hardware. The security benefit far outweighs the minimal time cost.
Start Verifying Your Files Now
Choose your method: quick online comparison, built-in Windows commands, or FolderManifest Desktop for batch processing with reports.
