所以我知道還有其他職位關於密碼存儲和加密,但我的問題是稍有不同。對我來說,裸露到底。加密一個密碼,而不要求主密碼
我正在密碼管理器網站上工作,爲了好玩。並想知道我的想法有多安全。
顯然,用戶存儲的每個密碼都使用AES-256加密,主密碼作爲密鑰和隨機生成的鹽。此外,主密碼使用Bcrypt進行加密,但在使用漩渦之類的方式之前,它會散列大約100,000次,以在嘗試登錄時增加應變。
如果用戶決定每次他/她請求站點密碼時都不想輸入密碼,程序將無法解密密碼並自動填充,因爲需要主密碼才能解密存儲的密碼。
我的一個想法是將密碼存儲在用戶當前會話中,但這不是一個好主意,因爲我試圖假設攻擊者已經違反了我的服務器並正在下載數據庫和窺探。
另一種方法是使用100,000次散列密碼作爲AES-256加密的密鑰並將該散列存儲在會話中。最好以純文本形式存儲它,但如果攻擊者能夠從會話中獲取信息,它仍然可以解密存儲的密碼。
有沒有更好的辦法解決這個問題,或者這是一個失敗的希望之戰,當我登錄時,攻擊者沒有進入?
使用臨時令牌而不是傳遞哈希或密碼。 – dandavis