Get File Hash With PowerShell in Windows 10

In Windows 10 and Windows 8, it is possible to get Hash values for a file without using third party tools. A special cmdlet will allow you to calculate the SHA1, SHA256, SHA384, SHA512, MACTripleDES, MD5, and RIPEMD160 hash values of a given file. Here is how it can be done.


The general purpose of hash values is to ensure that a file is genuine and that its contents have not been changed by a third-party, another software or malware. When a file has been modified, its hash value also gets modified. It is also possible to compare and match hash values to find if two or more files are identical.

The ability to calculate the file hash is a part of the Windows cryptograpic API. The user interface of the operating system has no option to calculate or show the hash value for files. Instead, you can use Get-FileHash cmdlet in PowerShell. Here is how to use it.

To get the file hash with PowerShell in Windows 10, do the following.

The general syntax for the cmdlet is as follows:

Get-FileHash c:\windows\explorer.exe| Format-List

Open PowerShell and type the command above to test it. It calculates the SHA256 hash value for the given file and produces the output as follows.

Get File Hash Demo

To calculate the hash value other than SHA256, use the switch -Algorithm. For example, to get the MD5 hash value, execute the following command:

Get-FileHash c:\windows\explorer.exe -Algorithm MD5| Format-List

The output will be as follows:

Get File Hash Md5

The list of possible values for the -Algorithm is as follows:

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

Another useful switch you need to know is -LiteralPath. It specifies the path to a file. Unlike the default path parameter, the value of the LiteralPath parameter is used exactly as it is typed. No characters are interpreted as wildcard characters. If the path includes escape characters, enclose the path in single quotation marks. Single quotation marks instruct Windows PowerShell to not interpret characters as escape sequences.

Using the Get-FileHash cmdlet, you can get hash values for a file natively. It is very useful, especially when you are working in a secure environment where third-party software is not allowed. The PowerShell console is bundled with Windows 10 and is accessible in every installed instance, so you can use the native Get-FileHash cmdlet everywhere.

1 thought on “Get File Hash With PowerShell in Windows 10

  1. Alicia

    I love you!

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.