如何从 gpg2 私钥中删除密码?

如何从 gpg2 私钥中删除密码?

是的,我知道这是进入安全性较低的系统的一步,但当前的设置使其合理(密钥并不重要,但签名必须自动化)。

谷歌结果是这样说的:

  1. 列出带有 a 的键gpg --list-keys
  2. 编辑密钥gpg --edit-key C0DEEBED....
  3. gpg 命令行控制台启动,其中有一个passwd命令更改密码
  4. 输入密码两次(在我的例子中,简单输入)会更改密钥。

然而,它不起作用,因为 gpg2 根本不允许空密码。

该怎么办?

答案1

gpg版本 2.4.3 开始,gpg --edit-key <keyid> passwd似乎可以很好地删除密码。

发出命令,然后提供当前密码,然后提供新密码。只需键入Enter无需密码。然后键入quit退出程序。

答案2

gpg --pinentry-mode loopback --passwd KEY

输入原始密码,但按回车键 3 次而不是一次(原始密码、新密码、然后确认新密码)。问题在于 pinentry 本身,因此环回模式只是将其从等式中删除。这应该适用于所有版本的 gpg AFAIK。

答案3

在 Centos 7 上使用pinentry-0.8.1(和gnupg2-2.0.22),我可以通过不指定新密码来从密钥中删除密码;pinentry确实抱怨并警告空白密码,但控制台和 GTKpinentry程序都有一个“无论如何都接受这个”提示,导致生成一个无密码的密钥。

另一方面,此尝试失败,因为随后导入的密钥被标记为不可用:

gpg --export-options export-reset-subkey-passwd --export-secret-subkeys > x

答案4

我能够使用以下方法做到这一点克利奥帕特拉。在应用程序中,右键单击要从中删除密码的密钥对。点击更改密码...。在弹出窗口中输入密码。在下一个弹出窗口中,将两个输入保留为空,然后单击好的。单击类似于的选项是的,不需要保护。最后两个弹出窗口可能会显示几次作为确认。只需将新密码的输入保留为空,然后单击“确定”。然后您将收到“密码已成功重置”的确认信息。

相关内容