为什么我们需要 SHA1 校验和?

为什么我们需要 SHA1 校验和?

这一页我看到了 SHA1 校验和。

我知道这是哈希算法,但我不知道为什么我们需要它来下载代码。所以我点击了“这是什么?”但没有得到更多信息。

这是哈希值,那又怎么样?为什么我们在下载文件时要知道它的哈希值?

答案1

您将能够计算下载文件的 SHA1 校验和,以查看文件是否下载成功,或者是否因为网络问题或磁盘问题(甚至是攻击者)阻止您执行此操作。

$ sha1sum recaptcha-dotnet-1.0.3.0-binary.zip 
bfb3397d27c95e152d80529bd11dfdde35efdddd  recaptcha-dotnet-1.0.3.0-binary.zip

它不是对于您要立即解压缩(并出现错误)的单个文件很有用,但如果您托管自己的下载文件存储库,它可能会很有用。

根据我的经验,我可以告诉你如何不是有趣的是,在包含数千个没有校验和的文件的(Java)Maven 存储库中找出几个损坏的文件。

答案2

服务器上的文件会生成哈希值。您可以为下载的文件创建第二个 sha1。

比较两个哈希值。

如果它们相等:没有人修改过从服务器到您的机器的字节,一切正常。

如果它们不相等:

  • 硬件故障
  • 有人在修改传入的字节
  • 服务器损坏

答案3

简短回答:加密校验和是一种轻量且方便的文件完整性检查方法。下一步是检查使用 GPG 密钥签名的文件。

相关内容