3

如果我从命令行运行 gpg 对文件进行签名和加密,它就可以工作。我有一个尝试相同的应用程序,但出现以下错误。该应用程序以前曾进行过签名和加密,因此我认为这不是权限问题。有任何想法吗?

在窗户上运行。GnuPG 1.4.2.2

gpg: 密钥块资源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 resourceC:/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 \pubring.gpg':文件打开错误 gpg:没有找到有效的 OpenPGP 数据。gpg:处理消息失败:eof

4

1 回答 1

1

为什么您的程序包括公共和秘密密钥环的路径?GPG 应该在主目录中找到它们,如果您对这些文件使用不同的位置,那么您需要指定新的主目录(使用 --homedir 标志)或在两个密钥环文件前面加上相关标志(- -keyring 和 --secret-keyring)。

实际上,该命令似乎正在尝试将您的公共和秘密密钥环加密给“JPMC_ECS_PROD_2015”收件人。如果“JPMC_ECS_PROD_2015”不是组名(在 gpg.conf 文件中指定)或在程序代码中的其他位置指定,则将生成与无效收件人(或收件人格式)相关的错误。

于 2013-09-22T02:59:33.080 回答