我使用 GnuPG 生成了一个新的 GPG 密钥,并将多个电子邮件地址与其关联。现在可以删除其中一些电子邮件地址吗?

我使用 GnuPG 生成了一个新的 GPG 密钥,并将多个电子邮件地址与其关联。现在可以删除其中一些电子邮件地址吗?

我想澄清的是,GPG 密钥尚未上传到任何服务器;它仅存在于我的本地计算机上。在这种情况下,我可以继续使用deluid删除某些电子邮件地址吗?而无需使用 撤销revuid

如果我删除这些地址,GPG 密钥中还会留下任何痕迹吗?我希望它们消失,就像从未存在过一样。

答案1

生成后,GPG 密钥仅存储在本地磁盘上。如果您从未使用此命令将密钥上传到远程服务器:

gpg --keyservers "the_server" --send-keys "your_key"

或者把你的公钥给别人,你可以假设你的密钥无人知晓你没有需要撤销它。

但是,如果你已经通过电子邮件将你的公钥发送给某人,以便他为你加密电子邮件,你需要撤销密钥并通过公开发送撤销证书来传播此信息,警告人们不再使用您的公钥。您可以使用以下命令生成撤销证书:

gpg --gen-revoke --armor --output revcertificate.asc "your_key"

要确保您的密钥未存储在远程服务器中,您可以使用以下命令:

gpg --search-keys "your_key"
gpg --keyserver "specific_server" --search-keys "your_key"

要删除您的公钥,您可以使用以下命令:

gpg --delete-key "your_key"

对于私钥:

gpg --delete-secret-key "your_key"

有了这些命令,你的钥匙将完全消失。

笔记 :Keys 的数据库是通常情况下存储在~/.gnupg文件夹中。


更新

您无法删除所有uuid密钥,但您可以创建另一个身份,然后删除与您的电子邮件地址关联的所有其他身份。就您而言,您不需要这样做,revuid因为您从未共享过密钥。

gpg --edit-key "your_key"

gpg> adduid
Real name: New Name
Email address: ...
Comment: ...
You selected this USER-ID:
    "New Name"

然后,您可以列出并删除旧的uuid。要选择uuid要删除的:

gpg> uid X

您将选中一个赞*。然后您可以删除它并保存:[ultimate] (1)*uuid

gpg> deluid
gpg> save

对你来说这足以让所有其他的身份消失。

重要的提示 :如果你从未上传过你的公钥,你的旧身份保持未公开并且没有人可以检索您之前的UUIDs。密钥发布后,其密钥 ID 保持不变,允许其他人从密钥服务器检索它。即使您删除了您的用户 ID (UID),密钥服务器也不会删除任何之前看到的信息。

相关内容