为什么 Mozilla Firefox 对保存的密码进行加密?

信息安全 加密 密码 火狐
2021-09-02 17:07:00

如果您要求Mozilla Firefox记住网站的登录详细信息,则凭据将存储在您的个人资料目录中Logins.json

代替存储明文值,用户名和密码将被加密(使用 Mozilla 的NSS库中实现的 PKCS #11 API )。但是,解密它们所需的密钥也存储在您的配置文件目录中(在 中Key3.db)。因此,获得该目录的攻击者显然也能够提取存储的密码(也就是说,除非所有者设置了主密码)。

这让我很好奇:Logins.json当密钥存储在附近时,默认加密密码的动机是什么?在哪种现实情况下,这种设计决策会使攻击复杂化?

2个回答

这可能是为了简化实现。根据是否设置了主密码,没有两种情况可以加密或不加密密钥存储,而是始终加密代码。

这减少了在启用主密码时忘记加密的代码路径被忽视的可能性。

我会说原因是为了混淆存储的密码,并且 Firefox 中的“记住网站密码”功能应该始终与主密钥一起使用。