如何在Linux下用PGP验证文件和签名?

GnuPG是PGP的开源和流行的替代品。PGP提供加密相关功能。PGP提供了一个类似于标准Linux包的散列函数。我们将查看如何验证从internet下载的文件及其PGP签名以进行验证。

null

查找PGP信息

在本例中,我们将使用Apache源代码。apachepgp签名可以如下找到和下载。

$ wget https://www.apache.org/dist/httpd/httpd-2.4.38.tar.bz2.asc
Find PGP Information
查找PGP信息

我们可以看到签名文件 asc 与压缩源代码文件同名的扩展名。

下载Apache源代码

我们将下载与先前下载的PGP签名相关的Apache源代码。

$ wget https://www.apache.org/dist/httpd/httpd-2.4.38.tar.bz2
Download Apache Source
下载Apache源代码

验证源代码

我们将验证下载的Apache 源代码 PGP公司 通过提供签名文件。我们只提供 asc 与同一目录中的源文件匹配的文件。

$ gpg httpd-2.4.38.tar.bz2.asc
Verify Source Code
验证源代码

有一个问题无法检查签名:没有公钥错误。这是因为我们没有从服务器添加Apache的公钥。

添加公钥服务器

我们将添加公钥服务器来检查签名文件。我们将使用 --keyserver 选项以指定可以是IP地址或主机名的GPG密钥服务器。然后我们将使用 --recv-key 选项并提供随asc文件提供的RSA密钥的ID。

$ gpg --keyserver pgpkeys.mit.edu --recv-key B9E8213AEFB861AF35A41F2C995E35221AD84DFF
Add Public Key Server
添加公钥服务器

我们已成功从服务器接收到公钥。我们可以看到一些关于导入密钥的信息。

  • 提供了有关密钥的一些名称和网址。
  • `Total number processed`显示本例中为1的密钥进程总数。
  • `Imported`是本例中为1的Imported key count。

相关文章: Scapy网络包生成器简介

再次检查签名文件

我们将再次检查签名文件。我希望它能起作用。

$ gpg httpd-2.4.38.tar.bz2.asc
Check Again Signature File
再次检查签名文件

我们可以看到有符号的数据是确定的。此外,RSA密钥也会打印到屏幕上。还提供了签名者信息 Daniel Ruggeri .

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享