核心实用程序中的多种总和形式

核心实用程序中的多种总和形式

阅读后GNU 核心实用程序 - 维基百科,我发现多个和

me@alpha:~$ cksum nohup.out 
4104911401 101860700 nohup.out
me@alpha:~$ b2sum nohup.out 
468c86394c5c4be04d0bce3b98584197b0c3f4cbb630144818f9d77d48ab7296e4c53db481b6bdd7c46dd5203d3f016d9ef01b126806e04be5003aeebb1bc6
22  nohup.out                                                                                                                
me@alpha:~$ sum nohup.out 
37767 99474
me@alpha:~$ sha1sum nohup.out 
79106925d593e18bd148ba94a6e4fb9da02e8c47  nohup.out
 me@alpha:~$ md5sum nohup.out 
3be4b17f18e4715d849a31ae482565cf  nohup.out

几个月前我开始学习 Linux,我是否应该区分它们并在日常操作中使用它们?

答案1

我是否应该在日常操作中区分它们并利用它们?

不,不是。您找到的是实用程序计算哈希值,用于文件验证等目的。

例如,当你下载 Ubuntu ISO 时,你通常会发现包含校验和的文件,您可以验证。您下载文件并运行sha256sum filename(或者md5sum如果它包含 md5 校验和,但 SHA256 是更好的使用 md5 进行校验(而不是 md5),并将其与已发布的校验和进行比较。

它还允许您验证文件是否未发生更改,而无需存储完整文件的副本。它被诸如 之类的文件验证工具使用tripwire

一般来说,除非您确实需要这些实用程序,否则不必担心它们。

答案2

您找到的校验和命令最常用于验证数据完整性和跟踪信息。这就像您解答一道数学题,然后查看书末的答案以确保您的解答正确。

最常见的例子是,当你下载软件或 Ubuntu.iso 镜像时,你会看到像这样的文件(示例来自 18.04 版本的 SHA256SUM 文件):

ff7feb65254b64ffadc00a3ce39df89e3cf84485343063c04fa11859475931c4 *ubuntu-18.04.1-preinstalled-server-armhf+raspi2.img.xz
a5b0ea5918f850124f3d72ef4b85bda82f0fcd02ec721be19c1a6952791c8ee8 *ubuntu-18.04.1-server-amd64.iso
8e9a766b4fed214632c8fd0f039c372fe18b0e5a2f4a4167f5c1edd5090385f4 *ubuntu-18.04.1-server-arm64.iso
dc8aa1b7f9c7d7dd66bbde516e739166126faa55789da0cb63328a507ed5fc00 *ubuntu-18.04.1-server-ppc64el.iso
76f6a384cd943a14761263b725fbccb2ebb04f147efa0c9eb884868e97c2eaac *ubuntu-18.04.1-server-s390x.iso

当你下载ubuntu-18.04.1-server-arm64.iso文件时,你想确保文件下载正确,没有被网络中间的人篡改,或者下载了损坏的文件。因此,当你这样做时

sha256sum ~/Downloads/ubuntu-18.04.1-server-arm64.iso

您将立即知道文件是否正常。至于不同类型,对于安全应用程序,哈希值越强sha256越好sha512,因为攻击者无法破解它。哈希是单向函数。输入产生哈希,但反之则不然。因此出于安全原因,最好不要将密码存储在服务器上 - 只存储哈希。

当攻击者从服务器窃取信息时,他们应该只拥有密码的哈希值,而不是密码本身。现在,MD5 和 SHA1 等哈希已被破解,攻击者可以破解它们以找到原始密码。因此,您不必记住它们,但最好知道应用程序是否使用 SHA256 或 SHA512 等强哈希

相关内容