Hide Forgot
Description of problem: gpg Version-Release number of selected component (if applicable): gnupg2-2.0.22-1.el7.x86_64 pinentry-0.8.1-10.el7.x86_64 How reproducible: 100% Steps to Reproduce: 1. Log in to a RHEL7 machine via ssh 2. echo abc | gpg -bsau 'Paolo Bonzini <pbonzini>' Actual results: You need a passphrase to unlock the secret key for user: "Paolo Bonzini <pbonzini>" 4096-bit RSA key, ID 9B4D86F2, created 2013-03-07 gpg: problem with the agent: No pinentry gpg: skipped "Paolo Bonzini <pbonzini>": Operation cancelled gpg: signing failed: Operation cancelled Expected results: pinentry-curses comes up and asks for a passphrase Additional info: Doing "export GPG_TTY=`tty`" from the command line makes it work.
I noticed the same behavior on Fedora 20 while attempting to decrypt something for the first time using cat foo | gpg -d Using gpg -d foo instead works fine; subsequent attempts to decrypt work using either syntax, once the agent is running and has the passphrase. Also, Paolo's workaround (setting GPG_TTY) helps, thanks for that !
Well this is expected and setting the GPG_TTY is what you should do if you need to redirect gpg input.