
Erstens habe ich eine Stunde damit verbracht, Antworten mit ähnlichen Titeln auszuprobieren. Lesen Sie dies also bitte durch, bevor Sie diese Frage als Duplikat kennzeichnen.
Ich verwende einen YubiKey, um meinen privaten PGP-Schlüssel mithilfe der Smartcard-Funktion zu speichern.
Ich bestätige, dass der private Schlüssel funktioniert, da ich über SSH eine Verbindung zu Servern herstellen kann (was auslöst 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
Der gpg: decryption failed: No secret key
Fehler wird angezeigt, wenn die YubiKey-Smartcard nicht entsperrt ist und ich gpg
Befehle ausführe.
$ 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
Wenn der obige Fehler auftritt, wird die Verbindung zu einem Server über SSH ausgelöst. pinentry-mac
Anschließend ctrl+c
führe ich aus gpg --decrypt /path/to/file.asc
und pinentry-mac
wird ausgelöst.
Was ist hier los? Wie komme ich gpg --decrypt /path/to/file.asc
zur Arbeit, ohne vorher verwenden zu müssen ssh
?
Wahrscheinlich übersehe ich etwas!
Antwort1
Das Upgrade von GnuPG von Version 2.2.22
auf 2.2.23
using brew upgrade
hat das Problem gelöst.