所以我知道还有其他职位关于密码存储和加密,但我的问题是稍有不同。对我来说,裸露到底。加密一个密码,而不要求主密码
我正在密码管理器网站上工作,为了好玩。并想知道我的想法有多安全。
显然,用户存储的每个密码都使用AES-256加密,主密码作为密钥和随机生成的盐。此外,主密码使用Bcrypt进行加密,但在使用漩涡之类的方式之前,它会散列大约100,000次,以在尝试登录时增加应变。
如果用户决定每次他/她请求站点密码时都不想输入密码,程序将无法解密密码并自动填充,因为需要主密码才能解密存储的密码。
我的一个想法是将密码存储在用户当前会话中,但这不是一个好主意,因为我试图假设攻击者已经违反了我的服务器并正在下载数据库和窥探。
另一种方法是使用100,000次散列密码作为AES-256加密的密钥并将该散列存储在会话中。最好以纯文本形式存储它,但如果攻击者能够从会话中获取信息,它仍然可以解密存储的密码。
有没有更好的办法解决这个问题,或者这是一个失败的希望之战,当我登录时,攻击者没有进入?
使用临时令牌而不是传递哈希或密码。 – dandavis