撤消PGP密钥


20

在玩GPG时(并试图找出一种安全的方式来存储我的吊销证书,以便其他人不能使用它),我无意中吊销了我的PGP密钥。

撤销仅在本地进行;没有发送到密钥服务器,所以我确定会有一种方法来撤消它...但是我找不到任何东西。即使删除密钥并重新导入它也无济于事。它仍然显示为已撤消。最后,我删除了整个钥匙圈,然后重新导入了所有内容,一切正常。但是必须有更好的方法...

所以; 您如何在GPG中撤消 PGP密钥?

另外,吊销存储在哪里,为什么当我从钥匙圈中删除钥匙时不删除吊销?

如果有什么不同,我将在OS X上使用GPG和GPGTools软件包。



@iWizardPro谢谢,我实际上遇到了,但是我似乎没有(或无法找到)该gpgsplit实用程序。有任何想法吗?
凯撒2013年

您正在运行什么操作系统?我的gpgsplit位于Ubuntu的/ usr / bin / gpgsplit。
谢恩

带有GPGTools(gpgtools.org)的OSX。我gpg2/usr/local/MacGPG2/bin/gpg2(连结自/usr/local/bin/gpg2),但找不到任何痕迹gpgsplit。我想可以从Ubuntu上完成该过程,但是到那时,删除和恢复我的钥匙串实际上可能是更简单的选择……您知道为什么删除钥匙对本身后保留撤销(和保存在哪里)吗?
凯撒

1
自制的GnuPG带来了gpgslit。您可以使用安装软件包brew install gnupg
Jens Erat

Answers:


21

事实证明,可能(相对简单)删除并重新导入密钥,前提是该密钥位于密钥服务器上(当然,前提是尚未将撤销发送给密钥服务器)。

这是我发现起作用的(THEKEYID是密钥的短ID):

  1. 删除公钥的方法如下(该--expert选项允许在保留私钥的同时删除公钥):
    gpg --expert --delete-key THEKEYID

  2. 按下确认
    y

  3. 再次从密钥服务器获取公共密钥:
    gpg --keyserver subkeys.pgp.net --recv-keys THEKEYID

做完了!

大概也可以使用gpg --import public.key代替第三条命令的公用密钥的本地(撤消)备份来完成。

简单地从GPG钥匙串访问GUI中删除整个密钥(公共和私有),然后从备份中还原是行不通的-我不知道为什么。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.