PowerShell的Get-FileHash命令

PowerShell的Get-FileHash命令

在控制台输入 get-f 后按 tab 可以自动补全为 Get-FileHash

cmdlet Get-FileHash 使用指定的哈希算法计算文件的哈希值。 哈希值是对应文件内容的唯一值。 哈希将唯一值分配到文件的内容,而不是通过其文件名、扩展名或其他指定标识文件的内容。 可以更改文件名和扩展名,而无需更改文件的内容,而且无需更改哈希值。 同样,无需更改名称或扩展名即可更改文件的内容。 但是,即使更改文件内容中的单个字符也会更改该文件的哈希值。

哈希值的用途是提供加密型安全的方式,以验证尚未更改文件的内容。 虽然某些哈希算法(包括 MD5 和 SHA1)不再被视为安全免受攻击,但安全哈希算法的目标是使无法更改文件的内容(无论是意外还是恶意或未经授权的尝试),并维护相同的哈希值。 你还可以使用哈希值来确定两个不同的文件是否具有完全相同的内容。 如果两个文件的哈希值相同,则文件的内容也相同。

默认情况下, Get-FileHash cmdlet 使用 SHA256 算法,但可以使用目标操作系统支持的任何哈希算法。

Get-FileHash 官方文档 https://learn.microsoft.com/zh-cn/powershell/module/microsoft.powershell.utility/get-filehash?view=powershell-7.2

参数

-Algorithm 算法

不指定这个参数的话, 默认的是 SHA256

指定用于计算指定文件或流的内容的哈希值的加密哈希函数。 加密哈希函数的 属性是无法找到两个具有相同哈希值的不同文件。 哈希函数通常与数字签名一起使用并用来保持数据的完整性。 此参数的可接受值为:

  • SHA1
  • SHA256
  • SHA384
  • SHA512
  • MD5

如果未指定任何值,或省略了参数,则默认值为 SHA256。

 -Algorithm SHA1
 -Algorithm SHA256
 -Algorithm SHA384
 -Algorithm SHA512
 -Algorithm MD5
; SHA256 [HKEY_CLASSES_ROOT\*\shell\getHash\shell\SHA256] "MUIVerb"="SHA256" [HKEY_CLASSES_ROOT\*\shell\getHash\shell\SHA256\command] @="powershell.exe -NoExit -NonInteractive Get-FileHash -LiteralPath '%1' -Algorithm SHA256 | Format-List" ; SHA512 [HKEY_CLASSES_ROOT\*\shell\getHash\shell\SHA512] "MUIVerb"="SHA512" [HKEY_CLASSES_ROOT\*\shell\getHash\shell\SHA512\command] @="powershell.exe -NoExit -NonInteractive Get-FileHash -LiteralPath '%1' -Algorithm SHA512 | Format-List" ; MD5 [HKEY_CLASSES_ROOT\*\shell\getHash\shell\MD5] "MUIVerb"="MD5" [HKEY_CLASSES_ROOT\*\shell\getHash\shell\MD5\command] @="powershell.exe -NoExit -NonInteractive Get-FileHash -LiteralPath '%1' -Algorithm MD5 | Format-List" ; Get File Hash for exe file [HKEY_CLASSES_ROOT\exefile\shell\getHash] "MUIVerb"="Get Hash of file" "SubCommands"="" ; SHA1 [HKEY_CLASSES_ROOT\exefile\shell\getHash\shell\SHA1] "MUIVerb"="SHA1" [HKEY_CLASSES_ROOT\exefile\shell\getHash\shell\SHA1\command] @="powershell.exe -NoExit -NonInteractive Get-FileHash -LiteralPath '%1' -Algorithm SHA1 | Format-List" ; SHA256 [HKEY_CLASSES_ROOT\exefile\shell\getHash\shell\SHA256] "MUIVerb"="SHA256" [HKEY_CLASSES_ROOT\exefile\shell\getHash\shell\SHA256\command] @="powershell.exe -NoExit -NonInteractive Get-FileHash -LiteralPath '%1' -Algorithm SHA256 | Format-List" ; SHA512 [HKEY_CLASSES_ROOT\exefile\shell\getHash\shell\SHA512] "MUIVerb"="SHA512" [HKEY_CLASSES_ROOT\exefile\shell\getHash\shell\SHA512\command] @="powershell.exe -NoExit -NonInteractive Get-FileHash -LiteralPath '%1' -Algorithm SHA512 | Format-List" ; MD5 [HKEY_CLASSES_ROOT\exefile\shell\getHash\shell\MD5] "MUIVerb"="MD5" [HKEY_CLASSES_ROOT\exefile\shell\getHash\shell\MD5\command] @="powershell.exe -NoExit -NonInteractive Get-FileHash -LiteralPath '%1' -Algorithm MD5 | Format-List" 是什么意思
06-13
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kfepiza

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值