This site will have limited functionality while we undergo maintenance to improve your experience. If an article doesn't solve your issue and you want to ask a question, we have our support community waiting to help you at @FirefoxSupport on Twitter and/r/firefox on Reddit.

Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

Changing primary password does not rewrite logins.json?

  • 2 tontu
  • 0 am na jafe-jafe bii
  • 2 views
  • i mujjee tontu mooy thefirefox

more options

When changing the primary password I would expect the logins.json file being rewritten with new pairs of encryptedUsername and encryptedPassword (now encrypted based on a new primary password). But this is obviously not the case. But maybe I just didn't understand the way this works?

When changing the primary password I would expect the logins.json file being rewritten with new pairs of encryptedUsername and encryptedPassword (now encrypted based on a new primary password). But this is obviously not the case. But maybe I just didn't understand the way this works?

Saafara biñ tànn

I assume that this works differently and that they do not re-encrypt logins.json, but instead encode the original seed that is used to encrypt logins.json with the PP and always the same seed is used to decrypt logins.json, but only the correct PP can recover this random seed. So to protect against forgetting the PP, you can possibly save a backup copy of key4.db that doesn't use the PP or uses an easy PP along with logins.json.

Jàng tontu lii ci fi mu bokk 👍 2

All Replies (2)

more options

Saafara yiñ Tànn

I assume that this works differently and that they do not re-encrypt logins.json, but instead encode the original seed that is used to encrypt logins.json with the PP and always the same seed is used to decrypt logins.json, but only the correct PP can recover this random seed. So to protect against forgetting the PP, you can possibly save a backup copy of key4.db that doesn't use the PP or uses an easy PP along with logins.json.

more options

Yes, this makes sense, thanks!

Finally found a brief documentation here: https://firefox-source-docs.mozilla.org/security/nss/legacy/an_overview_of_nss_internals/index.html

"The key database file will contain at least one symmetric key, which NSS will automatically create on demand, and which will be used to protect your secret (private) keys. The symmetric key can be protected with PBE by setting a master password on the database. As soon as you set a master password, an attacker stealing your key database will no longer be able to get access to your private key, unless the attacker would also succeed in stealing the master password."