标签 校验 下的文章

一个让你查看你的文件哈希值,以确定它不是恶意文件,并且确实来自真实来源的图形界面程序。

有人给你发送了一个文件,你怎样来证实它是给你的原件?你怎样来确定它没有被篡改过?

同时,你怎么证实这个文件是来自一个原始的真实来源。

这就是加密哈希的重要作用所在。如果用来验证一个文件,诸如 SHA-1 之类的哈希功能就是一个校验值。这能够帮助你确认文件是否已经被修改。

如果你感到好奇,你可以参考我们的 在 Linux 中验证校验值的指南

对每个信息 / 文件来说,它们有一个唯一的哈希值(或者叫校验和)。所以,即使文件有一点点的改动,整个哈希值就会发生变化。

它主要用于加密中,每个文件 / 信息以哈希值安全的存储。假设一个攻击者掌握了存储哈希值(而不是真实信息)的数据库,他们也不能够知道其意义。加密可以使存储更加安全。

虽然讨论哈希超出了这篇文章的范围,但是了解它在验证文件完整性上是很有意义的。

Collision:迅速的验证文件并发现恶意文件

如果没有图形界面,你就得用终端去生成哈希值来比对 / 验证。

Collision 使它变的非常容易,不需要打开终端或者生成文件的校验值。如果你不了解的话,我们的 在 Linux 中验证校验值的指南 可以帮助到你。

当使用 Collision 时, 你只需要添加你要生成哈希值或者验证所需的文件即可。你只需点击几下便能够保护自己免受恶意或篡改文件的攻击。

我在截图中显示了个文本文件,你的文件在发送给其他人之前,你可以验证各种类型文件或为你的文件生成一个哈希值。你可以通过发给收件人分享你生成的哈希值,让他们验证你的文件。

这是一款简单的开源应用,它只帮你做两件事情:

  • 生成哈希值(SHA-1、MD5、SHA-256、SHA-516)
  • 通过直接使用文件或者校验值验证一个项目

Collision 是怎么工作的

给你举个例子,我修改原来的文本文件,为其添加一个字母,然后尝试验证它。

下面是它的过程:

首先,你需要打开你要比对的原文件或者有校验值的原文件。

打开原文件生成哈希值,然后去验证区查看修改后的文件。

你会注意到,它们俩个不是相同的:

如果你在按校验值检查文件,首先,你要打开你要验证的文件(这儿是我们已经修改后的文件)。

然后,输入文件的原始真实校验值。当然我们已经知道我们测试的是修改后的文件,结果是我们所期望的,即,验证文件完整性失败

在 Linux 安装 Collision

Collisions 主要是一个为 GNOME 定制的程序,但是它也适用于其他发行版上。

你可以使用 Flatpak 可用软件包 来安装它,或者浏览 GitHub 网页,从源码中编译它。如果你是 Linux 新手,你可以参考我们的 Flatpak 指南 来得到帮助。

如果你喜欢使用终端来安装,键入以下命令来安装:

flatpak install flathub dev.geopjr.Collision

你也可以访问它的官方网站。

Collision

via: https://itsfoss.com/collision/

作者:Ankush Das 选题:lujun9972 译者:hwlife 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

当你下载了一个 ISO 镜像,特别是从 BitTorrent 网络上很多未知的种子处下载的,通常建议要验证下载镜像的完整性。

对于 Ubuntu 发行版的情况, Canonical 提供了几个供验证使用的验校文件(如 MD5SUM, SHA1SUMS 和 SHA256SUMS)。在这个例子中我们使用 SHA256SUMS。

首先,下载下面两个文件。

$ wget http://releases.ubuntu.com/14.10/SHA256SUMS
$ wget http://releases.ubuntu.com/14.10/SHA256SUMS.gpg

第一个文件是 ISO 镜像的 SHA256 验校文件,而第二个文件(*.gpg)是验校文件的签名。第二个文件的目的是验证验校文件本身的有效性。

我们通过运行下面的命令来验证 SHA256SUMS 文件的有效性。

$ gpg --verify SHA256SUMS.gpg SHA256SUMS 

gpg: Signature made Thu 23 Oct 2014 09:36:00 AM EDT using DSA key ID FBB75451
gpg: Can't check signature: public key not found

如果你得到上面的错误信息,是因为你还没有导入生成这个签名的公共密钥。因此我们现在导入需要的公共密钥。

这样做之前,你需要知道公共密钥的 “key ID”,而这在上面的 gpg 命令的输出中有显示。在这个例子中,密钥 ID 时 “FBB75451”。运行下面的命令来从官方 Ubuntu 密钥服务器导入公共密钥。

$ gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys FBB75451 

既然公共密钥已经被导入,我们可以继续并重新运行之前的命令来验证签名。

gpg --verify SHA256SUMS.gpg SHA256SUMS 

这次你没有看到 “public key not found” 的错误信息。如果 SHA256SUMS 文件时有效的,你会看到 “Good signature from ” 的信息。注意到你还看到一个 “This key is not certified with a trusted signature” 的警告信息。基本上这个警告信息是告诉你对导入的公共密钥没有明确信任。要避免这个警告,你可以选择指定完全信任导入的公共密钥,但你应该只有在通过其他方式审查了这个密钥之后才这样做。否则的话,你可以暂时忽略这个警告。

在验证了 SHA256SUMS 文件的完整性后,最后一个步骤是比较已下载 ISO 文件的 SHA256 验校和和 SHA256SUMS 文件中对应的验校值。你可以使用 sha256sum 命令行工具来完成这个步骤。

为方便起见,下面一行命令比较 SHA256 验校和并报告结果。

 $ sha256sum -c <(grep ubuntu-14.10-desktop-amd64.iso SHA256SUMS) 

ubuntu-14.10-desktop-amd64.iso: OK

如果你看到了上面的输出信息,这表明两个验校值相匹配。这样已下载 ISO 镜像的完整性就被成功的验证了。


via: http://xmodulo.com/download-iso-image-bittorrent-command-line.html

作者:Dan Nanni 译者:wangjiezhe 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出