很多年前,我创建了一个 GPG 密钥,用于在 Launchpad 上签署 Ubuntu 行为准则。从那以后,我再也没有用过它。一段时间后,我备份了我的主页并重新开始。
那都是 2009 年的事了。我仍然有备份,但现在我开始使用 Quickly 并将东西上传到 Launchpad,我真的需要找回我的 PGP 密钥。
我不知道密钥是如何组织的,也不知道密钥存储在哪里,但我想恢复旧密钥,而不是生成新密钥。有没有什么想法可以开始?
答案1
如果您已备份整个旧主目录,则只需将旧~/.gnupg/
文件夹复制到新主目录即可。
但需要注意的是,这实际上并不是备份和恢复密钥的最佳方式。它的缺点是会覆盖目标系统上的 gpg 密钥环。如果您已导入公钥或创建了新密钥,那么这不是理想的解决方案。
通常,您应该使用以下方式保存您的公钥和私钥:
gpg -ao mypub.key --export <MY_KEY_ID>
gpg -ao myprivate.key --export-secret-keys <MY_KEY_ID>
然后使用以下命令将它们导入新系统:
gpg --import myprivate.key
gpg --import mypub.key
这样,它们就被添加到目标系统上的密钥环中。
答案2
导航到旧主目录的 ./gnupg
然后
gpg --import pubring.gpg
gpg --import secring.gpg
导入您可能需要的任何其他内容。
答案3
我通过将 .key 文件从旧的移动到新的 ~/.gnupg/private-keys-v1.d 文件夹并重新启动 gnupg 解决了这个问题,并且没有丢失我新生成的密钥。
这仅适用于 GnuPG 2.1 或更高版本。