My public key had expired so I tried to edit the expiry date with
gpg --edit-key
It seemed to be too much trouble somehow to modify the correct subkey so I deleted the subkey instead with the intention to add a new one and send it to people but it was asking me to generate random data for ten minutes or so.
While thinking about what to do next I went to try to decrypt some old messages and it was now giving me
gpg: encrypted with RSA key, ID 1ZA9BKAC2F91307C
gpg: decryption failed: No secret key
When I run
gpg --list-secret-keys
the list of secret keys on the keyring seemed to be unchanged from before I deleted that subkey.
What has happened? Is it that that I somehow managed to delete a private subkey which was required for decryption?
Somehow I doubt it, am guessing more that GnuPG wants the public subkey attached to the private key, even if expired, so it can find which private key to use.
Does anyone know the remedy for this?
If it really comes to it I can ask someone to email me my old expired public key and try to reattach it, or on a hard drive in another town, I have this whole keypair backed up but believe that there is some quirk here in GnuPG and a possible fix for it.