如何校验文件

为什么需要校验文件

众所周知,每个文件在本质上都是 0 和 1 的组合。在下载或复制文件时,因为各种原因,目标文件中的某些部分可能与原始文件不符,尤其是文件较大的时候。这样一来,目标文件的内容就会发生变化,严重的会使目标文件无法打开。此外,校验文件还可以检测文件是否受到篡改。

一些算法可以对文件生成一个对修改敏感的「摘要」,称为哈希值 (hash value) 或校验和 (checksum),名称取决于具体算法。换言之,一般情况下,任何修改都会引起「摘要」发生变化。相同的算法在任何时间和任何地点,对内容相同的文件生成的摘要都相同。

利用这些算法,在提供文件的同时提供某算法的摘要,在下载或复制后,用相同算法重新计算摘要并进行对比,摘要一致则文件一致,反之同理,就可完成对文件的校验。

常用的算法包括 SHA256、MD5、CRC32 等。这里,我们将介绍如何在计算机上,使用 SHA256 算法计算哈希值。群文档中的部分资源,也使用此算法提供对应资源的哈希值。
为了免于安装任何其他软件,我们将使用 Windows 系统自带的命令行进行计算。至少在 Windows 7 及以上的系统中,此功能已确认可用。

在 Windows 命令行上计算哈希值

  1. 左键点击你要校验的文件,按住 Shift 的同时右键再次点击该文件,在菜单中找到「复制为路径」,点击。
  2. Win+R,输入 cmd,回车。
  3. 输入 certutil -hashfile,再输入一个空格。
  4. 右键点击该窗口的任意位置。
  5. 输入一个空格,再输入 SHA256。现在,你应该得到类似于 certutil -hashfile C:/path/to/your/file SHA256 这样的东西,别忘了空格。如果你确认一切无误,就按回车吧。
  6. 等待计算机进行计算,时间通常和文件大小成正比。如果文件有几 GB 那么大,计算可能持续几分钟。
  7. 计算结果将显示在屏幕上。

通过更换第 5 步中输入的算法名称,此方法还可以使用以下算法计算:MD2、MD4、MD5、SHA1、SHA384、SHA512。

results matching ""

    No results matching ""