gpt4 book ai didi

gnupg - gpg2中的gpg-agent

转载 作者:行者123 更新时间:2023-12-04 08:14:52 28 4
gpt4 key购买 nike

我正在尝试对一些使用GPG(当前为1.4.10版)的自定义软件进行过时的验证,以执行对称加密/解密过程。我当前的加密命令如下所示:

gpg --batch --no-tty --no-use-agent --symmetric --cipher-algo AES256 --passphrase "foobar" /path/to/file_to_be_encrypted

没有 --no-use-agent选项,我得到了臭名昭著的错误消息

gpg-agent is not available in this session



我担心要迁移到gpg2,因为 according to the documentation总是需要gpg-agent,而 --no-use-agent只是一个虚拟选项。我的gpg调用是通过守护进程在后台进行的,因此这几乎是无代理的情况(加上它是对称的事实,我完全不需要代理)。

如此详细的文档很少,因此我正在寻找用户体验。 gpg2是否将代理更紧密地结合在一起,这样我就不必担心它的可用性了?

最佳答案

  • 调用gpg2的方式,如果输出文件path/to/file_to_be_encrypted.gpg已经存在,它可能会失败。如果要覆盖文件,则应提供--yes选项:
    gpg2 --batch --yes --no-tty --no-use-agent --symmetric --cipher-algo AES256 --passphrase "foobar" /path/to/file_to_be_encrypted
  • 当您使用对称加密时(就像您一样),密码短语约束(即使设置为由gpg-agent强制执行)也将完全不适用-它将起作用。

    假设gpg-agent是这样运行的(并让mypasswords文件甚至包含与您的密码完全匹配的禁止模式):
    eval $(gpg-agent --daemon --enforce-passphrase-constraints --min-passphrase-len 8 --min-passphrase-nonalpha 4 --check-passphrase-pattern mypasswords)

    这样您的命令仍然会成功。

    简而言之:gpg-agent不会使其失败(除非它由于某种原因而使gpg崩溃,例如错误的配置或缺少的可执行文件,您无法解释)。

    编辑:我刚刚检查过,即使在gpg-agent可执行文件丢失的情况下,即使gpg-agent的配置错误,在对称模式下gpg2也会使工作

    这没有关系,但以防万一:我还验证了当gpg-agent缺少配置错误时,当您尝试更改私钥的密码时会发生什么:gpg2将报告警告,甚至不会要求新的密码,并继续工作。

  • 资料来源:
  • gpg-agent configuration manual
  • gpg documentation
  • 关于gnupg - gpg2中的gpg-agent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7016884/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com