哈希上下文菜单使用 PowerShell 中的本机 Get-FileHash cmdlet 通过使用指定的哈希算法来计算文件的哈希值。哈希值是对应于文件内容的唯一值。哈希不是通过文件名,扩展名或其他名称来标识文件的内容,而是为文件的内容分配唯一的值。可以更改文件名和扩展名,而无需更改文件内容,也无需更改哈希值。同样,可以在不更改名称或扩展名的情况下更改文件的内容。但是,即使更改文件内容中的单个字符,也会更改文件的哈希值。
哈希值的目的是提供一种密码安全的方式来验证文件的内容是否已更改。尽管不再认为某些哈希算法(包括 MD5 和 SHA1)可以抵御攻击,但是安全哈希算法的目标是使无法更改文件的内容(无论是偶然,恶意或未经授权的尝试)以及保持相同的哈希值。您还可以使用哈希值来确定两个不同文件的内容是否完全相同。如果两个文件的哈希值相同,则文件的内容也相同。
哈希上下文菜单使您可以快速查看文件的 SHA1,SHA256,SHA384,SHA512,MACTripleDES,MD5 和 RIPEMD160 哈希值(校验和)。
本教程大眼仔旭将向您展示如何在 Windows 8 和 Windows 10 中为所有用户向所有文件的上下文菜单添加或删除哈希。
哈希上下文菜单用法:
选择一个或多个您要查看其哈希值的文件。
右键单击或按住所选文件。
在上下文菜单中单击/点击哈希。
单击/点按 SHA1,SHA256,SHA384,SHA512,MACTripleDES,MD5,RIPEMD160 或“显示全部”,以查看所选文件的哈希值(校验和)。
现在将为每个选定的文件打开一个 PowerShell 窗口,向您显示其哈希值。
将哈希添加到文件的上下文菜单:
复制以下注册表值,新建空白文本粘贴并保存。修改 .txt 后缀为 .reg 格式,然后双击导入注册表。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70 Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT/*/shell/hash]
"MUIVerb"="Hash"
"SubCommands"=""
; SHA1
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu]
"MUIVerb"="SHA1"
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu/command]
@="powershell -noexit get-filehash -literalpath '%1' -algorithm SHA1 | format-list"
; SHA256
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu]
"MUIVerb"="SHA256"
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu/command]
@="powershell -noexit get-filehash -literalpath '%1' -algorithm SHA256 | format-list"
; SHA384
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu]
"MUIVerb"="SHA384"
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu/command]
@="powershell -noexit get-filehash -literalpath '%1' -algorithm SHA384 | format-list"
; SHA512
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu]
"MUIVerb"="SHA512"
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu/command]
@="powershell -noexit get-filehash -literalpath '%1' -algorithm SHA512 | format-list"
; MACTripleDES
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu]
"MUIVerb"="MACTripleDES"
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu/command]
@="powershell -noexit get-filehash -literalpath '%1' -algorithm MACTripleDES | format-list"
; MD5
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu]
"MUIVerb"="MD5"
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu/command]
@="powershell -noexit get-filehash -literalpath '%1' -algorithm MD5 | format-list"
; RIPEMD160
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu]
"MUIVerb"="RIPEMD160"
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu/command]
@="powershell -noexit get-filehash -literalpath '%1' -algorithm RIPEMD160 | format-list"
; Allget-filehash -literalpath '%1' -algorithm RIPEMD160 | format-list
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu]
"CommandFlags"=dword:00000020
"MUIVerb"="显示全部"
[HKEY_CLASSES_ROOT/*/shell/hash/shellmenu/command]
@="powershell -noexit get-filehash -literalpath '%1' -algorithm SHA1 | format-list;get-filehash -literalpath '%1' -algorithm SHA256 | format-list;get-filehash -literalpath '%1' -algorithm SHA384 | format-list;get-filehash -literalpath '%1' -algorithm SHA512 | format-list;get-filehash -literalpath '%1' -algorithm MACTripleDES | format-list;get-filehash -literalpath '%1' -algorithm MD5 | format-list;get-filehash -literalpath '%1' -algorithm RIPEMD160 | format-list"
将哈希从文件的上下文菜单删除:
如果您不想保留 Hash 菜单选项,您可以通过复制以下注册表值,新建空白文本粘贴并保存。修改 .txt 后缀为 .reg 格式,然后双击导入注册表以进行删除自定义的 Hash 菜单。
1
2
3 Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT/*/shell/hash]
原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/214159.html