如何在 GnuPG 中根据密钥 ID 导入 OpenPGP 密钥?

如何在 GnuPG 中根据密钥 ID 导入 OpenPGP 密钥?

我在为 PPC64 安装 Debian Chroot 时遇到了很多麻烦。问题是不是 debootstrap,而是让 GnuPG 定位并安装我需要的密钥。

的手册页gpg相当没用,但这并不奇怪。搜索同样令人沮丧,这让我相信我无法执行简单的任务,因为 GnuPG 不支持它(这不是第一次)。

以下是我尝试过的:

# gpg --version
gpg (GnuPG) 1.4.19
# gpg --import 75DDC3C4A499F1A18CB5F3C8CBF8D6FD518E17E1
gpg: can't open `75DDC3C4A499F1A18CB5F3C8CBF8D6FD518E17E1': No such file or directory
gpg: Total number processed: 0
# gpg --import --key 75DDC3C4A499F1A18CB5F3C8CBF8D6FD518E17E1
gpg: Option "--key" is ambiguous
# gpg --import --keyid 75DDC3C4A499F1A18CB5F3C8CBF8D6FD518E17E1
gpg: unknown keyid-format `75DDC3C4A499F1A18CB5F3C8CBF8D6FD518E17E1'

如何指示 GnuPG 根据密钥 ID 获取并安装密钥?

答案1

您使用了错误的选项。

--import如果您想从文件导入密钥,则使用它。

--recv-keys将从密钥服务器获取您的密钥。

答案2

您实际上可能同时遭遇两个问题。

导入密钥

gpg --import [file]从文件或标准输入加载密钥信息,但不查询密钥服务器以获取密钥。gpg --recv-keys它还执行一些其他操作:查询密钥服务器(预先配置~/.gnupg/gpg.conf或传递--keyserver),获取结果(在内部,这两个步骤通常作为 HTTP 请求实现)并最后导入密钥。

apt-key

我也不确定你是否需要在你的个人 GnuPG 主目录中使用该密钥,或者你是否想使用从第三方存储库安装软件apt-get。在这种情况下,不要直接运行类似

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv [key-id]

将密钥存储到 apt 的“私有”密钥环中(apt-key是 GnuPG 的一种包装器,例如负责存储到正确的密钥环中)。apt 会不是查询你的普通用户的 GnuPG 密钥环!

相关内容