Subject: Re: bug#12696: 24.2.50; epa bug with gpg-agent

From: Daiki Ueno <[email-masked]>
Date: Wed, 14 Nov 2012 04:53:38 +0900

Andreas Schwab <[email-masked]> writes:

> Daiki Ueno <[email-masked]> writes:
>
>> set up (one is DSA used for signing and one is ElGamal used for
>> encryption):
>>
>>  - Richard Stallman (Chief GNUisance) <[email-masked]>
>>  - 624DC565135EA668 1024bits DSA
>> 	Created: 2001-03-05
>> 	Capabilities: sign certify authentication
>> 	Fingerprint: 6F818B215E159EF3FA26B0BE624DC565135EA668
>>  - 879A7C37B1B10ED6 1024bits ELGAMAL_E
>> 	Created: 2001-03-05
>> 	Capabilities: encrypt
>> 	Fingerprint: 04C26DD3834A1AB3A3CAB2D4879A7C37B1B10ED6
>
> That is normal, the second one is a subkey of the first one.  Nowadays
> gpg always creates such a subkey and it should handle that
> transparently.

Then, it might be a gpg-agent issue.  Currently gpg-agent seems to think
separate passphrase is needed for each subkey.

You can try:

$ eval `gpg-agent --daemon`

$ gpg --use-agent -u <your main key-id> --output /dev/null --sign < /dev/null
# gpg-agent asks passphrase

$ gpg --use-agent -u <your main key-id> --output /dev/null --sign < /dev/null
# gpg-agent DOES NOT ask passphrase

$ gpg --use-agent -r <your main key-id> --output foo.gpg --encrypt < /dev/null
# gpg-agent DOES NOT ask passphrase

$ gpg --use-agent < foo.gpg
# gpg-agent asks passphrase

$ gpg --use-agent < foo.gpg
# gpg-agent DOES NOT ask passphrase

Regards,
-- 
Daiki Ueno