GPG - 与多个收件人解密

时间:2013-10-24 09:33:42

标签: encryption gnupg

我正在尝试解密使用2个收件人(--recipient recipientA@example.com --recipient recipientB@example.com)加密的文件。 但是,当我尝试解密文件时,它总是请求第一个收件人的密码。当第一个收件人密钥不是密钥环的一部分时,它将给出错误“未找到密钥”。

如何加密具有多个收件人的文件,以便两者都可以在不知道其他密钥的情况下对其进行解密。密码短语?

(对我来说,问题似乎很简单,也是一个基本功能 - 但显然我无法让它发挥作用)

提前谢谢!

2 个答案:

答案 0 :(得分:3)

我今天遇到了这个问题,发现你的问题正在寻找答案。我见过许多关于如何为多个收件人加密事情的例子......从不说/显示当一个人试图解密那些数据时会发生什么。这就是我得到的:

user@system ~ $ gpg --decrypt filename.pgp

You need a passphrase to unlock the secret key for
user: "SOMEBODY ELSE <somebody_else@example.com>"
2048-bit ELG-E key, ID ABC1234, created 1972-10-29 (main key ID ABC5678)

gpg: Invalid passphrase; please try again ... [I DON'T HAVE *THEIR* PASSPHRASE!]

2 more times... finally...

You need a passphrase to unlock the secret key for
user: "HEY!  This is ME! <my_email@example.com>"
2048-bit ELG-E key, ID DEF1234, created 1969-02-03 (main key ID DEF5678)

gpg: encrypted with 2048-bit ELG-E key, ID ABC1234, created 1972-10-29
      "NAME <email@example.com>"
gpg: public key decryption failed: bad passphrase
gpg: encrypted with 2048-bit ELG-E key, ID DEF1234, created 1969-02-03
      "HEY!  This is ME! <my_email@example.com>"

and then the file decrypted fine...

快速注意:只是为了澄清,for security reasons一个人的密码和一个人的private key应该从不给予其他任何人。 The passphrase is to keep the private key "safe" should it become compromised.一个人的公开密钥是唯一应该与他人共享的内容。

我的前言是我目前只能访问版本1.4.2.2,并且无法测试这些解决方案。更高版本有某些选项,可能是需要的。 如果有任何相关工作,请尝试回复。

--local-user/-u看起来很有希望。在我的版本中,--help显示use this user-id to sign or decrypt但是在尝试它时似乎徒劳无功,进一步的研究揭示了一个残酷的事实:seems the help is wrong,这只是"signing"使用的选项

This post有一个可能的解决方案,但我个人觉得它很混乱:

gpg --try-all-secrets --passphrase <passphrase here> filename.pgp

--passphrase was apparently added in version 1.4.3。 UGH!

编辑: Perhaps a better (possibly, below) solution is only available in gpg2? gpg2 seems to have --try-secret-key,如果我能正确阅读,可能就是我们都在寻找的内容?

答案 1 :(得分:0)

我今天也遇到了这个问题,我通过在批处理模式下运行gpg解决了这个问题:

alpha