Maak checksum in Windows en verifieer bestandsintegriteit

Heb je ooit een bestand gedownload om vervolgens te ontdekken dat het bestand beschadigd of gewijzigd is? De beste manier om de integriteit van een bestand te bevestigen, is door de checksum of hash van het bestand te controleren. Gelukkig zijn er verschillende manieren om de checksum van een bestand in Windows te verifiëren.

Blijf lezen, want je leert verschillende manieren om gratis de checksum van een bestand in Windows te berekenen! Leer hoe je ingebouwde Windows-tools en tools van derden kunt gebruiken om de checksumwaarde van een bestand te genereren.

In dit artikel leer je hoe je een checksum in Windows kunt maken met behulp van vijf verschillende tools. Tegen het einde zou je zeker moeten weten hoe je hashes in Windows kunt maken!

Vereisten

Omdat dit een praktijkgericht artikel is, volg je de leer-door-te-doen-aanpak. Sommige tools die in dit artikel worden gebruikt, zijn ingebouwd of worden geleverd door Microsoft; sommige zijn ook afkomstig van externe bronnen. Zorg ervoor dat je ten minste een computer hebt met Windows 10 of minimaal Windows Server 2012 om mee te doen.

Vereisten voor elke methode om checksums te genereren worden indien nodig verstrekt.

De File Checksum Integrity Verifier (FCIV)

De File Checksum Integrity Verifier (FCIV) van Microsoft werd oorspronkelijk geïntroduceerd in Windows Server 2012 R2 en is beschikbaar voor alle toekomstige versies.

Stel dat je de FCIV-tool hebt geïnstalleerd in C:\Tools\fciv.exe. Voer de onderstaande opdracht uit in een opdrachtprompt of PowerShell-prompt om de MD5-checksum van het bestand VSCodeUserSetup-x64-1.52.1.exe te genereren. Als je bestand zich ergens anders bevindt, pas dan de locatie aan zoals nodig.

C:\Tools\fciv.exe C:\downloads\VSCodeUserSetup-x64-1.52.1.exe

Na het uitvoeren van het FCIV-commando, zie je een vergelijkbaar resultaat zoals weergegeven in de onderstaande screenshot. Zoals je kunt zien, heeft het fciv.exe-commando standaard de MD5-hash gegenereerd voor het opgegeven bestand.

Computing an MD5 checksum in Windows using fciv.exe.

FCIV kan alleen MD5- of SHA-1-bestandshashes genereren.

Nu je een MD5-checksum hebt berekend, waarom dan niet ook de SHA-1-checksum van het bestand genereren? Om de SHA-1-checksum van hetzelfde bestand te maken als in het bovenstaande voorbeeld, voeg je de sha1-optie toe aan het einde van het bestaande commando. Zoals weergegeven in de screenshot hieronder, wordt de SHA-1-hash gegenereerd voor hetzelfde bestand als voorheen.

C:\Tools\fciv.exe C:\downloads\VSCodeUserSetup-x64-1.52.1.exe -sha1
Generating SHA-1 checksum in Windows using fciv.exe.

Goed gedaan! Je hebt zowel een MD5- als SHA-1-checksumwaarde gemaakt. Waarom niet beide MD5- en SHA-1-hashwaarden tegelijk genereren? In plaats van de sha1-optie te gebruiken, gebruik je both.

C:\Tools\fciv.exe C:\downloads\VSCodeUserSetup-x64-1.52.1.exe -both

De resulterende hashwaarden zijn gelabeld als MD5 en SHA-1. Het gebruik van de both-parameter bespaart tijd wanneer je zowel MD5- als SHA-1-hashwaarden moet genereren.

Computing both MD5 and SHA-1 checksum using fciv.exe.

Hoewel FCIV een handige tool is voor het berekenen van bestandshashes, is FCIV ouder en zijn de hashalgoritmen beperkt tot MD5 en SHA-1. Microsoft heeft officieel verklaard dat FCIV een niet-ondersteunde command-line tool is. Ondanks dit kan FCIV nog steeds dienen als een prima alternatief in afwezigheid van andere tools.

Op dit punt heb je MD5- en SHA-1-hashwaarden gemaakt met behulp van de fciv.exe-tool. Wat vind je tot nu toe? Ik weet dat je klaar bent om de volgende tool te leren.

Het gebruik van Certutil

Certutil is een andere uitstekende tool om een checksum van een bestand te genereren in Windows. De exacte programmnaam is certutil.exe, die standaard beschikbaar is.

Het primaire doel van certutil.exe is voor certificaten. Maar, certutil.exe heeft een functie voor het maken van bestandschecksums in Windows met behulp van de volgende hash-algoritmen:

  • MD2
  • MD4
  • MD5
  • SHA1
  • SHA256
  • SHA384
  • SHA512

Laten we eens kijken hoe het werkt.

Start PowerShell of een opdrachtprompt om bestandschecksums te berekenen, met behulp van de onderstaande syntaxis.

certutil.exe -hashfile [Path to File] [Hash Algorithm]

In het onderstaande voorbeeld genereert certutil.exe de SHA-256-hash van het bestand C:\downloads\VSCodeUserSetup-x64-1.52.1.exe, zoals gedemonstreerd in de resulterende schermafbeelding.

certutil.exe -hashfile "C:\downloads\VSCodeUserSetup-x64-1.52.1.exe" SHA256
Using certutil.exe to create a file checksum.

Je weet nu hoe je certutil.exe kunt gebruiken om een bestandschecksum te maken. Probeer voor oefening de hash-waarde van het bestand te genereren met behulp van alle andere beschikbare algoritmen. Lees verder om te leren hoe je Get-FileHash en PowerShell kunt gebruiken om een bestandshash te genereren!

Wist je dat hash-algoritmen, zoals SHA-256, ook worden gebruikt bij het maken van SSL-certificaten?

Het gebruik van de PowerShell Get-FileHash-cmdlet

Je hebt gelezen over en het gebruik van command-line tools om bestandschecksums te maken in Windows sinds het begin van dit artikel. Nog een command-line tool die je zult leren gebruiken, is de Get-FileHash-PowerShell-cmdlet.

Voor het gebruik van Get-FileHash, raadpleeg de onderstaande syntax om vertrouwd te raken met de beschikbare parameters. Gebruik de Path-parameter om een doelbestand op te geven, en de Algorithm-parameter om aan te geven welk hash-algoritme te gebruiken.

Get-FileHash -Path [path to file] -Algorithm [Hash Algorithm]

De beschikbare hash-algoritmen voor Get-FileHash staan hieronder vermeld. Je zult merken dat de keuzes van hash-algoritmen verschillen van wat FCIV en CertUtil bieden. Bovendien zijn oudere en meer kwetsbare algoritmen niet langer opgenomen, zoals de MD1- en MD4-algoritmen.

  • SHA1
  • SHA256
  • SHA384
  • SHA512
  • MACTripleDES
  • MD5
  • RIPEMD160

De onderstaande opdracht berekent de hash-waarde van het bestand VSCodeUserSetup-x64-1.52.1.exe met behulp van het SHA-256 algoritme. Kopieer en voer de onderstaande code uit in PowerShell om te testen, zorg ervoor dat je het bestandspad indien nodig aanpast.

Get-FileHash -Path C:\downloads\VSCodeUserSetup-x64-1.52.1.exe -Algorithm sha256

Zoals je kunt zien in de onderstaande schermafbeelding, berekende de Get-FileHash opdracht de SHA-256 hash van het bestand zoals gespecificeerd met de -Algorithm sha256 parameter.

Using Get-FileHash to compute the SHA-256 checksum of a file.

Als je de checksum van het bestand wilt berekenen met verschillende algoritmen, hoef je alleen de waarde van de Algorithm parameter te wijzigen. Denk je dat je nu de SHA-512 checksum van een bestand kunt maken met Get-FileHash? Ik wed van wel!

Hashes genereren voor meerdere bestanden tegelijk

Met Get-FileHash is het mogelijk om de checksum van meerdere bestanden tegelijk te genereren. De voorbeeldcode hieronder slaat de lijst met bestandspaden op in de $files variabele. Vervolgens gebruikt de Get-FileHash de $files variabele om de SHA-256 checksum voor elk bestand te berekenen, zoals weergegeven in de onderstaande schermafbeelding.

$files = @(
    'C:\downloads\PowerShell-7.1.0-win-x64.msi',
    'C:\downloads\VSCodeUserSetup-x64-1.52.1.exe'
)
Get-FileHash -Path $files -Algorithm sha256
Using Get-FileHash to compute the hash values for each file stored in the $files array.

Wat als je een hash moet genereren voor een map vol met bestanden? In plaats van handmatig de $files array te maken, gebruik je de Get-ChildItem cmdlet om de lijst met bestanden in een gegeven map op te halen.

In de onderstaande opdracht haalt de Get-ChildItem cmdlet de lijst met bestanden op binnen de c:\downloads map. Het resultaat wordt vervolgens via de PowerShell-pijplijn doorgegeven aan de Get-FileHash cmdlet, die op zijn beurt de SHA-256 hash-waarde van elk bestand berekent.

(Get-ChildItem C:\downloads).Fullname | Get-FileHash -Algorithm sha256

Afhankelijk van de bestandsgroottes kan de tijd die nodig is om een checksum te genereren variëren. In dit voorbeeld duurde het ongeveer twintig seconden om de checksum te berekenen van een ISO-bestand van 8 GB. Het resultaat zou er ongeveer uitzien zoals op de onderstaande screenshot.

Using Get-ChildItem and Get-FileHash to compute the hash values for each file in a folder.

Het Gebruik van Externe Tools om Bestandschecksums te Maken in Windows

Als je om de een of andere reden merkt dat de ingebouwde tools om bestandschecksums te genereren in Windows niet voldoende zijn, zijn er externe tools beschikbaar. Niet alle externe tools zijn gratis, maar hieronder worden een paar gratis en populaire hulpprogramma’s getoond.

7-Zip

Ben je het zat om de opdrachtregel te gebruiken en zoek je een grafisch hulpprogramma om bestandschecksum in Windows te maken? 7-zip is een populair en gratis bestandscompressiehulpprogramma dat in staat is om de hashwaarde van een bestand te genereren.

Door 7-zip op je computer te installeren, wordt automatisch een contextmenu-optie toegevoegd om de checksum van een bestand te genereren. Volg deze stappen om de hashwaarde van een bestand te krijgen:

  1. Klik met de rechtermuisknop op het bestand om de checksum te genereren.
  2. Selecteer de CRC SHA menuoptie om de beschikbare hashalgoritmen weer te geven.
  3. Klik tot slot op het hashalgoritme dat je wilt gebruiken.

In het onderstaande voorbeeld geeft de asterisk (*) optie de hashwaarde van het bestand weer met behulp van alle beschikbare algoritmen. Hoe makkelijk is dat?

Using the 7-Zip context menu to calculate a file’s checksum in Windows.

Leer vervolgens hoe je het hulpprogramma HashMyFiles kunt gebruiken om de checksums van meerdere bestanden te genereren als alternatief voor 7-Zip!

HashMyFiles

Vergeet de opdrachtregel en rechtsklikken. HashMyFiles kan de checksum- of hash-waarden van een enkel bestand, meerdere bestanden of hele mappen maken met behulp van slepen en neerzetten.

Start het programma HashMyFiles en sleep de bestanden of mappen die u wilt hashen naar het hoofdvenster van HashMyFiles. Zoals hieronder weergegeven, toont het hoofdvenster de bestanden en bijbehorende hashes in een tabelindeling, met aanvullende informatie beschikbaar in het eigenschappenvenster.

Using HashMyFiles to get the file hash of multiple files by using drag and drop

Bovendien kan HashMyFiles de hash- of checksumwaarden exporteren naar een HTML-rapport of een tab-delimited bestand. Deze exportfunctie is handig wanneer u een record van de bestandschecksumwaarden wilt bijhouden.

Volgende stappen

In dit artikel hebt u geleerd dat er verschillende manieren zijn om een bestandschecksum te maken in Windows. Microsoft heeft ingebouwde opdrachtregelhulpprogramma’s zoals certutil.exe en Get-FileHash.

Er zijn ook tools van derden die gratis zijn en relatief eenvoudig te gebruiken. Wat uw keuze van gereedschap om bestandshashwaarden te genereren ook is, het concept en het resultaat zijn hetzelfde voor elk hash-algoritme.

Wat gaat u nu doen? Misschien uw scriptvaardigheden op de proef stellen en een checksum-inventaris van cruciale bestanden maken met een van de tools waarover u in dit artikel hebt geleerd.

Source:
https://adamtheautomator.com/checksum-windows/