
Во-первых, я потратил час на попытки ответить на похожие вопросы, поэтому, пожалуйста, прочитайте это до конца, прежде чем отмечать этот вопрос как дубликат.
Я использую YubiKey для хранения своего закрытого ключа PGP, используя функцию смарт-карты.
Я подтверждаю, что закрытый ключ работает, поскольку я могу подключиться к серверам с помощью SSH (что запускает pinentry-mac
).
$ cat .gnupg/gpg-agent.conf
enable-ssh-support
default-cache-ttl-ssh 60
max-cache-ttl-ssh 120
default-cache-ttl 60
max-cache-ttl 120
pinentry-program /usr/local/bin/pinentry-mac
Ошибка gpg: decryption failed: No secret key
возникает, когда смарт-карта YubiKey не разблокирована и я запускаю gpg
команды.
$ gpg --decrypt /path/to/file.asc
gpg: encrypted with RSA key, ID redacted
gpg: encrypted with 4096-bit RSA key, ID redacted, created redacted
redacted
gpg: public key decryption failed: Broken pipe
gpg: decryption failed: No secret key
Когда возникает указанная выше ошибка, подключение к серверу с помощью SSH срабатывает pinentry-mac
, я затем ctrl+c
запускаю gpg --decrypt /path/to/file.asc
и pinentry-mac
срабатывает.
Что здесь происходит? Как мне добраться gpg --decrypt /path/to/file.asc
до работы, не прибегая к помощи ssh
?
Я, наверное, что-то упускаю!
решение1
Обновление GnuPG с версии 2.2.22
на 2.2.23
используемую brew upgrade
решило проблему.