我正在使用 mutt 发送电子邮件。当我要发送电子邮件时,我收到一条消息,提示“输入您的密钥 ID”,我选择我的 gpg 所有者用户密钥之一(我使用 gpg --gen-key 为其生成了一对密钥)。然后系统提示我输入密码:我输入密码,但总是收到相同的消息
gpg: « 0x12345678 » a été ignorée : secret key is not available
gpg: /var/folders/_h/gqsdf0mh1sdfsdf154p76kr0gn/T//mutt-MacBook-Pro-501-28262-08021219660: sign+encrypt failed
有人能解释一下吗?我试着用谷歌搜索,但没有找到
答案1
按 p 键可以访问 GPG 选项(p 代表 PGP,而不是 GPG,因为 PGP 更老;实际上,mutt 中的所有 GPG 支持仍标记为 PGP)。这将在屏幕底部显示一个菜单:
(e)ncrypt、(s)sign、sign (a)s、(b)oth、选择 (m)ic 算法,或 (f)orget it? _ 如果您想要对消息进行签名,只需按 s。如果您想要加密,请按 e。要签名和加密,请按 b。
有时,在 mutt 中使用 GPG 加密电子邮件时,您可能会看到 ****像这样的消息:****
输入 keyID[电子邮件保护]:_
如果您看到此信息,则意味着 mutt 没有足够的信息来确定使用哪个密钥。由于 mutt 使用电子邮件收件人列表(收件人:和抄送:标题)来确定使用哪个加密密钥,因此您可能需要向标题添加更多信息。如果您的收件人:标题仅包含电子邮件地址而不包含姓名,请尝试添加姓名并在其后添加电子邮件地址,就像 GPG 显示用户 ID 一样。
**希望这有帮助!
*另外,我建议你看看雷鸟?在我看来,这是一款很棒的电子邮件应用程序。只是补充一点建议!
答案2
我遇到了类似的问题。我通过修改 muttrc 文件解决了这个问题。
Mutt 发行版在其目录中附带了一个示例 gpg 配置contrib
。它名为gpg.rc
。我将其全部添加,未做任何更改,现在我可以在 Mutt 中发送和接收 GPG 加密的电子邮件消息。
这些是我添加的特定行,但我建议您自己查看文件,因为其中还有一些被注释掉的行以及解释性注释,并且它可能不适合您的 Mutt 版本。
set pgp_decode_command="gpg --status-fd=2 %?p?--passphrase-fd 0? --no-verbose --quiet --batch --output - %f"
set pgp_verify_command="gpg --status-fd=2 --no-verbose --quiet --batch --output - --verify %s %f"
set pgp_decrypt_command="gpg --status-fd=2 %?p?--passphrase-fd 0? --no-verbose --quiet --batch --output - %f"
set pgp_sign_command="gpg --no-verbose --batch --quiet --output - %?p?--passphrase-fd 0? --armor --detach-sign --textmode %?a?-u %a? %f"
set pgp_clearsign_command="gpg --no-verbose --batch --quiet --output - %?p?--passphrase-fd 0? --armor --textmode --clearsign %?a?-u %a? %f"
set pgp_encrypt_only_command="pgpewrap gpg --batch --quiet --no-verbose --output - --encrypt --textmode --armor --always-trust -- -r %r -- %f"
set pgp_encrypt_sign_command="pgpewrap gpg %?p?--passphrase-fd 0? --batch --quiet --no-verbose --textmode --output - --encrypt --sign %?a?-u %a? --armor --always-trust -- -r %r -- %f"
set pgp_import_command="gpg --no-verbose --import %f"
set pgp_export_command="gpg --no-verbose --export --armor %r"
set pgp_verify_key_command="gpg --verbose --batch --fingerprint --check-sigs %r"
set pgp_list_pubring_command="gpg --no-verbose --batch --quiet --with-colons --list-keys %r"
set pgp_list_secring_command="gpg --no-verbose --batch --quiet --with-colons --list-secret-keys %r"
set pgp_good_sign="^\\[GNUPG:\\] GOODSIG"