SHA1 值常用于检验分布后的文件是否受损或缺失。通常情况下,用 SHA1 验证可以检查传输后的文件是否仍是原始文件。如果 SHA1 值和分发者提供的相符,那么文件就没有受损或被篡改。
如何在 Mac OS X 中检验某个文件的 SHA1 值
运行终端(应用程序 – 实用工具 – 终端.app),并按以下语法执行检查:
shasum /path/to/file
例如,要检查桌面上一个名为“DownloadedFile.dmg”的 SHA1 值,可以这样输入:
shasum ~/Desktop/DownloadedFile.dmg
检验的结果会和下面的类似:
$ shasum ~/Desktop/CheckMe.zip
ddfdb3a7fc6fc7ca714c9e2930fa685136e90448 CheckMe.zip
那个最长的 16 进制字符串就是该文件的 SHA1 值。
如果文件路径比较复杂,不要忘记多多使用 Mac OS X 的拖拽特性,输入“shasum”空格之后,直接把要检验的文件拖入终端窗口中,其路径会自动补齐。
shasum (把文件拖放到这里)
记住一定要在“shasum”后面输入一个空格才行。
Shasum 命令默认检测 SHA1 值,而通过参数 -a 可以修改为 224、256、384 或 512。
SHA1 值检验应用举例
一个经典实例就是从苹果官网直接下载升级包文件后,对 SHA1 值进行校验。正确的 SHA1 值会显示在每个升级包下载页面的最下方,如下图。这个字符串可以让用户快速检查下载的文件是否完整。
SHA1 验证的另一个常用实例就是检验 P2P 传输来的文件是否完整和正确,传输中途是否被篡改。只需要查阅文件提供方的网站或进行询问,获得正确的 SHA1 值后,与自己检验得到的 SHA1 值对比就可以了。两个值一样则说明文件是完整的。