初步介绍
众所周知,当我们从网上下载软件时,发行商为了保证用户在下载过程中自己的软件没有被更改,都会通过一些哈希函数来确保他们软件的完整性。比如:在网上有一些攻击者会在其中植入像插件,广告或病毒等等恶意代码,相信一些朋友有过类似的体验,特别是在从非官方的网站上下载安装软件的时候。
所以用户是有必要对软件的完整性做一个检验的,目前常用的哈希函数是SHA256(因为它更安全一些),所以在此介绍如何win10检验一个文件的SHA256的哈希值,对SHA1和MD5的检查也是类似的。(超简单的,有手就行!)
现在介绍一下我的自身经历,当我从Gradle官网上下载一个 gradle-6.6.1-all.zip 软件,同时官网会附带一个SHA256文件,里面存放的是软件的正确哈希值,而我需要做的就是对自己下载的软件做SHA256哈希计算,并将这个结果与正确的哈希值进行比对。如果结果是一样的,那么软件就是OK的。参照图示如下:
注:SHA256的哈希值文件 gradle-6.6.1-all.zip.sha256 可以用记事本等文本编辑工具打开。
检验方法
通过certutil工具在windows命令提示符中进行哈希值检测的方法如下:
1,打开win10命令提示符(cmd)。
2,直接键入命令 certutil -hashfile 文件的绝对路径 对应的哈希函数
对应的哈希函数可以选择 SHA256、SHA1或MD5。下面以SHA256为例。
附图如下:
注:gradle-6.6.1-all.zip被我直接放在了F盘下 (如果没有直接放在盘符下面的话,可能会出错。错误提示为:“系统找不到指定的文件”)。
好了,现在成功的得到了哈希值,只需将它与 gradle-6.6.1-all.zip.sha256 文件中的内容比较即可。