2

My (limited) understanding is that my password is used to encrypt the keys which are used to encrypt my mail messages on protonmail's servers. Does that mean that knowledge of my password could potentially let an adversary find out what the keys associated to my account are, and thus render password change useless? Or are keys periodically subject to change as well, and all my emails re-encrypted? Or have I got it completely wrong?

0

Based on my understanding of how ProtonMail manages keys, the answer should be no. As you mentioned in your question, your private key (which is used on the client side to authenticate with the system and decrypt your messages) is encrypted using a key derived from your password. Then, this encrypted private key is stored on ProtonMail's servers.

If you change your password, then presumably your private key is then encrypted using a key derived from your new password, then this encrypted private key is stored on ProtonMail's servers, in place of the encrypted private key that was encrypted using a key derived from your former password. At this point, the encrypted private key that was encrypted using a key derived from your former password should be permanently deleted from ProtonMail's servers.

Note that the underlying private key (which is used on the client side to authenticate with the system and decrypt your messages) remains the same throughout the change-password process. The same underlying private key that was previously encrypted using a key derived from your former password is now encrypted using a key derived from your new password.

That being the case, an attacker attempting to access your messages using your former password would be unable to do so, because the encrypted private key that was encrypted using a key derived from your former password no longer exists.

  • I'm not a ProtonMail expert but I think you're missing a path in your logic. If the ProtonMail account was compromised (given), then it's possible that the adversary could have extracted the Private Key from their own modified client side JavaScript. Subsequent password changes by the original user will change the encryption protection of the Private Key but the adversary potentially already has the Private key and could use it directly without recourse to the new password. – user10216038 Jan 15 at 20:10
  • I agree. I misinterpreted this part of the question. Thanks for clarifying this. Yes, if an attacker learns the password, and uses it to decrypt the private key that was encrypted using that password, then saves the decrypted private key - then a password change would be ineffective in securing the account at that point. – mti2935 Jan 16 at 1:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.