如何检查下载的校验和,为什么要检查?

P_Q*_*P_Q 3 download checksum webserver md5

我的记忆力不是很好,但我想五六年前,当我下载某个软件包时,网页上的下载图标下从来没有校验和行。并且没有“检查校验和”以确保您的下载正确的说明。现在这些东西无处不在。我有两个关于它们的问题(无论是 MD5 还是其他)。

  1. 它们什么时候开始变得如此流行,为什么使用它们?我的意思是,如果我从服务器 X 下载一个包,那么由服务器来确保它给我正确的包(我认为,无论如何)。

  2. 你如何检查校验和?通常我下载软件包并立即安装。也许这是愚蠢的。

slh*_*hck 5

它们什么时候开始变得如此流行,为什么使用它们?

我不能告诉你什么时候,但至少有两个很好的理由使用它们。

1.文件完整性

当下载一个巨大的二进制文件时,你不能确保在传输过程中没有一个比特错误。这可能是由于各种原因,从服务器将文件发送到您的计算机,将其保存在驱动器上。您不能假设每次传输都没有错误。

如果你使用这个文件在你的计算机上安装一些东西,它可能会传播这个单一的错误,直到程序无缘无故崩溃为止。

另一种常见情况是:您下载 ISO 文件以将其刻录到 DVD 并安装 Linux。在安装过程中,安装程序注意到磁盘上有一个损坏的文件。这可能是由于下载过程中发生了一个位错误。

2. 您自己的安全

如果您知道一个文件的假定校验和,并且您下载了另一个与该校验和不匹配的文件,那么您要么有一个有错误的文件(见上文),要么有人想欺骗您

想象一下著名软件分销商的下载站点被劫持。尽管这可能不会经常发生,但请考虑将其视为安全问题。


你如何检查校验和?

取决于所使用的校验和方法。可以使用md5orsha1sum命令在任何 *nix 系统上轻松检查 MD5 和 SHA 校验和。在 Windows 上有一个File Checksum Integrity Verifier

通常我下载软件包并立即安装。也许这是愚蠢的。

无论如何,您都可以下载并安装它。通常,安装人员应检查所包含的数据是否无误且完整。您可以尝试使用十六进制编辑器从可执行安装程序中删除单个字节,看看它是否仍然完成。我几乎不会怀疑。

总而言之,没有必要验证校验和(我从来没有做过),但如果你有时间,它不会受到伤害。