通常,软件站点会在软件下载后为完整性检查提供签名和校验。校验和(例如md5)验证过程有多重要,这些进程提供了哪些其他类型的安全性?
发布于 2018-08-16 07:47:23
在安全性方面,它提供的是,除了MD5冲突之外,您得到的文件是未被篡改的文件。如注释中所述,当从镜像或通过不安全的FTP连接下载文件时,这可能很有用。
注意,如果文件是从显示散列的站点下载的,那么MD5或SHA1的匹配并不意味着安全性问题。在通过HTTP (而不是HTTPS)公开站点的情况下,MITM可以通过网站更改文件和散列;在这种情况下,哈希只会误导您,因为它会给您错误的安全感。
散列的另一种用法是确定您是否得到了整个文件,并确保文件没有损坏(在网络问题或您的PC崩溃时)。这种情况不是经常发生的情况。
然而,一个更常见的情况是,你很久以前就下载了一个文件,但你不确定它是否与你在网站上看到的文件相同。一个简单的散列比较可能会在接下来的20分钟内重新下载一个5 GB的文件,浪费服务器的资源,并且知道您不需要下载,因为您拥有的文件是同一个文件。
https://softwareengineering.stackexchange.com/questions/376943
复制相似问题