Ottieni hash di file utilizzando Windows PowerShell

Prova Il Nostro Strumento Per Eliminare I Problemi

Ottenere gli hash dei file può essere molto utile. Questo può essere usato ad esempio per assicurarsi che i file di backup non siano danneggiati o modificati (generando hash prima e dopo il processo), o per assicurarsi che nessuno abbia manomesso un file importante.

Potresti vederlo anche sui siti di download, ma l'uso è limitato. Il motivo è semplice: se un utente malintenzionato è riuscito a modificare il file di download, è possibile che anche il sito Web sia stato compromesso. Questo in teoria potrebbe almeno significare che anche l'hash del file visualizzato sul sito è stato modificato per adattarsi alla nuova versione dannosa del download.

In passato abbiamo esaminato un numero considerevole di programmi relativi all'hashing: dal Estensione della shell di Windows HashTab , al di sopra di HashMyFiles di Nirsoft per File Check MD5 e Utilità di controllo MD5 .

Ottieni hash di file utilizzando Windows PowerShell

windows powershell get-hash

Se hai bisogno di generare rapidamente l'hash di un file su una macchina Windows, allora potresti anche usa PowerShell per quello.

Potrebbe non essere comodo come alcuni dei programmi di hashing in circolazione, ma è un'implementazione nativa che non richiede software di terze parti per funzionare. Utile in ambienti con limitazioni, ad esempio, o quando non è disponibile una connessione Internet per scaricare questi programmi.

La generazione di hash è stata integrata in PowerShell 4.0. È incluso in Windows 8.1 e Windows Server 2012 R2 ed è disponibile anche per Windows 7 Service Pack 1, Windows Server 2012 e Windows Server 2008 R2 Service Pack 1.

  1. Tocca il tasto Windows, digita PowerShell e premi il tasto Invio per avviarlo.

Il comando principale è get-filehash FILEPATH , per esempio. get-filehash c: test.txt .

Get-FileHash utilizza l'algoritmo Sha256 per impostazione predefinita. È possibile specificare un algoritmo diverso invece utilizzando il parametro -Algorithm.

Sono supportati: SHA1, SHA256, SHA384, SHA512, MACTripleDES, MD5, RIPEMD160

Notare che MD5 e SHA1 non sono più considerati sicuri ma sono ancora supportati.

Quindi, per generare un hash Sha512 dovresti usare il comando get-filehash -Algorithm Sha512 c: test.txt.

È inoltre possibile utilizzare -LiteralPath o -InputStream invece dell'opzione del percorso predefinito.

  • LiteralPath: get-filehash -LiteralPath -Algorithm SHA512 c: test.txt.
  • InputStream get-filehash -InputStream -Algoritmo SHA512 Stream.

La differenza principale tra path e literalpath è che literalpath non supporta caratteri jolly e viene utilizzato esattamente come viene digitato.

CertUtil

certutil

CertUtil è un altro programma Windows nativo che puoi utilizzare per calcolare gli hash dei file. È possibile eseguire il programma dal prompt dei comandi o utilizzando PowerShell.

Il comando di base è certutil -hashfile PATH , per esempio. certutil -hashfile c: example.txt .

Puoi anche specificare l'algoritmo hash. Sono supportati MD2, MD4, MD5, SHA1, SHA256, SHA384, SHA512. L'algoritmo predefinito è MD5.

Per utilizzare un algoritmo hash diverso, specificalo dopo il comando, ad es. certutil -hashfile c: example.txt SHA512 .

Parole di chiusura

È possibile utilizzare i comandi negli script per calcolare gli hash per diversi file in un'unica operazione. I due strumenti nativi get-filehash e certutil sono abbastanza utili per il calcolo rapido degli hash su Windows e anche per l'uso di script. (attraverso Genbeta (Spagnolo))