当我使用生成密钥时
gpg2 --gen-key
然后我尝试使用以下方法加密文件
gpg2 --batch --yes -r [email protected] --always-trust --homedir . -e test.text
我收到错误“加密失败:没有公钥”错误。
但是我可以使用以下命令看到它:
gpg2 --list-keys
明确导入公钥没有帮助。有什么想法吗?
答案1
您正在将当前工作目录设置为 GnuPG 主目录,这几乎不是您想要做的事情。对于日常使用,请不要设置此选项根本并让 GnuPG 使用默认的 GnuPG 主目录位置(~/.gnupg
)。
忽略此选项,加密仍可正常工作。
此外,--always-trust
应该绝不与您自己未验证的密钥一起使用,即仅与密钥的指纹或至少长密钥 ID 一起使用。攻击者可以为任意其他邮件地址/用户 ID 生成密钥并分发它们,您可能最终会为错误的密钥加密。使用此标志是有原因的(特别是在从脚本和应用程序连接 GnuPG 时),但要非常确定关于其对安全的影响。