Summary
Key input fields are not always cleared when encryption or decryption fails.
Sensitive key material should be removed from the extension UI after an encryption or decryption attempt, regardless of whether the operation succeeds or fails.
Reproduction steps
Decryption
- Open the decryption interface.
- Enter or import a private key.
- Trigger a decryption operation that fails, for example by providing a non-Clavimit formatted encrypted message.
- Observe the private key field after the error.
Expected behavior
Public and private key inputs should be cleared after the corresponding encryption or decryption attempt finishes, independently on if the operation succeeds or fails.
Actual behavior
When an operation fails, the associated key input may remain populated in the extension UI.
Environment
- Extension version shown in
chrome://extensions: 0.1.1
Installation
Additional context
The existing cleanup behavior should be extended to failure paths as well. A finally block or equivalent cleanup mechanism could help ensure key material is consistently removed after each operation.
Please do not include private keys, sensitive email content, or other confidential information.
Summary
Key input fields are not always cleared when encryption or decryption fails.
Sensitive key material should be removed from the extension UI after an encryption or decryption attempt, regardless of whether the operation succeeds or fails.
Reproduction steps
Decryption
Expected behavior
Public and private key inputs should be cleared after the corresponding encryption or decryption attempt finishes, independently on if the operation succeeds or fails.
Actual behavior
When an operation fails, the associated key input may remain populated in the extension UI.
Environment
chrome://extensions: 0.1.1Installation
Load unpacked)Additional context
The existing cleanup behavior should be extended to failure paths as well. A
finallyblock or equivalent cleanup mechanism could help ensure key material is consistently removed after each operation.Please do not include private keys, sensitive email content, or other confidential information.