如果我运行gpg来从命令行对文件进行签名和加密,它就能正常工作。我有一个尝试相同的应用程序,我得到以下错误。该应用程序之前已经进行过签名和加密,因此我认为这不是一个权限问题。有什么想法吗?
在Windows上运行。 GnuPG 1.4.2.2
gpg:keyblock资源C:/Program Files/GNU/GnuPG" --output D:/WEA/ACH/milw472b.gpg --yes --batch --armor --recipient JPMC_ECS_PROD_2015 --default-key wea@weatrust.com --passphrase-fd 0 --no-verbose --sign --encrypt D:/WEA/ACH/ACH \secring.gpg': file open error
gpg: keyblock resource
C:/ Program Files / GNU / GnuPG“ - 输出D:/WEA/ACH/milw472b.gpg --yes --batch --armor --recipient JPMC_ECS_PROD_2015 - default-key wea@weatrust.com --passphrase-fd 0 --no-verbose --sign --encrypt D:/ WEA / ACH / ACH \ pubring.gpg':文件打开错误
gpg:找不到有效的OpenPGP数据。
gpg:处理消息失败:eof
答案 0 :(得分:1)
为什么您的计划包括公共密钥和秘密密钥环? GPG应该在主目录中找到它们,如果你为这些文件使用不同的位置,那么你需要指定新的主目录(带有--homedir标志)或者在前面添加两个密钥环文件和相关的标志(--keyring和--secret-keyring)。
实际上,该命令似乎试图加密你的公共和秘密密钥环到" JPMC_ECS_PROD_2015"接受者。如果" JPMC_ECS_PROD_2015"不是组名(在gpg.conf文件中指定)或在程序代码中的其他地方指定,那将产生与无效收件人(或收件人格式)相关的错误。