When I tried to encrypt a file to an OpenPGP certificate Kleopatra "silently" changed the selection in "Encrypt for me" from the certificate with expired subkey that I had selected to a certificate that's usable for encryption after I opened the certificate details of the certificate with expired subkey. I opened the certificate details in order to extend the validity of the expired subkey.
How to reproduce:
- You need an own certificate C with expired encryption subkey (or any other certificate that's not usable for encryption) and at least one own certificate that's usable for encryption.
- Start the encryption of a file
- The Encrypt for me drop-down shows one of your certificates that's usable for encryption.
- In the Encrypt for me drop-down you won't find the unusable certificate C. This is the intended behavior.
- Open the Certificate Selection window with the button next to the Encrypt for me drop-down, change the filter to "All" so that certificate C is displayed and select certificate C.
- As expected, the Encrypt for me drop-down now shows certificate C. Below the drop-down you'll see "This certificate is expired."
- In the main window double-click certificate C to show its details. (Opening the details of any other certificate will also do.)
- Unexpectedly, the Encrypt for me drop-down no longer shows certificate C, but one of the certificates that are usable for encryption.
The severity of this bug isn't very high because the worst that can happen is that an inattentive user accidentally encrypts the file to an own certificate they didn't want to encrypt to.