【问题标题】:gpg : encryption/decryption failedgpg : 加密/解密失败
【发布时间】:2018-02-23 02:21:43
【问题描述】:

我尝试在我的服务器上进行 gpg 加密/解密,为了加密,我创建了这个命令行:

gpg --output test.txt.gpg --encrypt test.txt

然后我输入一个用户 ID 并创建我的文件。

但是之后,当我想用​​相同的命令解密这个文件时:

gpg --output result.txt --decrypt test.txt.gpg

结果是:

gpg: encrypted with 2048-bit RSA key, ID FF070B4D, created 2017-07-19
"droli mail_adress"
gpg: decryption failed: No secret key

我不明白为什么我可以加密但不能解密?

$gpg --list-keys  
/home/ssie/.gnupg/pubring.gpg
----------------------------- 
pub   2048R/09C41BAC 2017-07-19 
uid                  droli  mail_adress 
sub   2048R/6D2F1BE9 2017-07-19

$gpg --list-secret-keys
/home/ssie/.gnupg/secring.gpg
-----------------------------
sec   2048R/09C41BAC 2017-07-19
uid                  droli  mail_adress sub
ssb   2048R/6D2F1BE9 2017-07-19

2 小时后编辑:

我想已经找到原因了:同一用户有 2 个不同的密钥和 1 个密钥。但是现在有另一个问题:我删除了错误的密钥并再次进行相同的测试。

解密后的答案是:

您需要一个密码来解锁用户的密钥:“droli mail_adress" 2048 位 RSA 密钥,ID 6D2F1BE9,创建于 2017 年 7 月 19 日(主要 密钥 ID 09C41BAC)

无法连接到`/home/ssie/.gnupg/S.gpg-agent':连接被拒绝 gpg-agent [32298]:命令 get_passphrase 失败:操作已取消 gpg:被用户取消 gpg:使用 2048 位 RSA 密钥、ID 加密 6D2F1BE9,创建于 2017-07-19 “telefact” gpg:公钥解密 失败:一般错误 gpg:解密失败:没有密钥

这是什么“S.gpg-agent”? (在我的情况下,文件 /home/ssie/.gnupg/S.gpg-agent 是空的)

$ gpg-agent 
--daemon GPG_AGENT_INFO=/tmp/gpg-1K7fOi/S.gpg-agent:18607:1; export GPG_AGENT_INFO;

启动后GPG_AGENT_INFO=/tmp/gpg-1K7fOi/S.gpg-agent:18607:1export GPG_AGENT_INFO

没有关于 gpg 代理的问题。

您需要一个密码来解锁用户的密钥:“droli mail_adress" 2048 位 RSA 密钥,ID 6D2F1BE9,创建于 2017 年 7 月 19 日(主要 密钥 ID 09C41BAC)

gpg: 被用户取消 gpg:使用 2048 位 RSA 密钥加密,ID 6D2F1BE9,创建于 2017-07-19 “droli 邮件地址” gpg:公钥解密失败:一般错误 gpg:解密失败:没有密钥

在创建新密钥时,我最后遇到了同样的问题:

更改(N)名称,(C)评论,(E)邮件或(O)kay /(Q)uit? ○ 您需要密码来保护您的密钥。

gpg: 被用户取消 gpg:密钥生成已取消。

这就像密码短语有一个变形?

感谢您的帮助。

【问题讨论】:

  • 您输入的是随机 ID,还是您的 ID?
  • 这是我的身份证...
  • 你可以试试运行gpg --list-secret-keys
  • 你在什么操作系统上运行?
  • 我的操作系统是 unix redhat

标签: encryption gnupg


【解决方案1】:

解决办法是:

chmod o+rw $(tty)

在使用 su 成为该用户之前,它可以正常工作。

【讨论】:

  • 是的,已确认。