我是否需要 Django-2.0.checksum.txt 来检查下载的 tar.gz 是否不是恶意软件?

我是否需要 Django-2.0.checksum.txt 来检查下载的 tar.gz 是否不是恶意软件?

我是 Ubuntu 和 bash 的新手。我想通过在终端中输入 bash 命令在我的 Ubuntu 14.04 上安装 Django。我从这里下载了 Django 最新版本https://www.djangoproject.com/download/

现在我需要解压这个 tar.gz 并安装它。文件 Django-2.0.checksum.txt 在网页上https://www.djangoproject.com/download/以及(页面的右侧)。

我不确定是否需要使用文件 Django-2.0.checksum.txt 以保证安全。我不知道该怎么办。如果我不使用此文件并开始安装解压后的文件 .tar.gz,我的 Ubuntu 会面临风险吗?这个 tar.gz 是否可能包含恶意代码?

答案1

校验和值用于验证您从 Web 下载的文件的完整性。因此,这里的完整性涉及很多方面。但举个例子,由于网络连接不良,假设您的下载被取消,而您稍后下载的文件缺少一些数据包,那么您将永远无法成功使用该文件安装 Django,因为它已“损坏”。

因此,为了节省您的时间,一旦您下载了文件,最好使用您下载的文件的校验和来验证网站提供的文件的校验和。

欲了解更多信息,请阅读以下内容。来源:https://www.wireshark.org/docs/wsug_html_chunked/ChAdvChecksums.html

校验和用于确保数据传输或存储的数据部分的完整性。校验和基本上是此类数据部分的计算摘要。

网络数据传输经常会产生错误,例如位切换、丢失或重复。因此,收到的数据可能与发送的数据不相同,这显然是一件坏事。

由于这些传输错误,网络协议经常使用校验和来检测此类错误。发送方将计算数据的校验和,并将数据与校验和一起传输。接收方将使用与发送方相同的算法计算接收数据的校验和。如果接收和计算的校验和不匹配,则发生传输错误。

一些校验和算法能够通过计算预期错误的位置并修复它来恢复(简单)错误。

如果存在无法恢复的错误,接收方将丢弃数据包。根据网络协议,这种数据丢失会被忽略,或者发送方需要以某种方式检测这种丢失并重新传输所需的数据包。

使用校验和可以大大减少未检测到的传输错误的数量。但是,通常的校验和算法无法保证 100% 的错误检测率,因此极少数传输错误可能仍未检测到。

校验和算法有多种类型;常用的校验和算法示例是 CRC32。实际为特定网络协议选择的校验和算法将取决于网络介质的预期错误率、错误检测的重要性、执行计算的处理器负载、所需的性能以及许多其他因素。

相关内容