應用程序還沒有完成,現在密碼和數據庫信息只是在數據庫中加密,並用密鑰在應用程序上解密。在數據庫中存儲用戶的數據庫密碼。使用應用程序用戶密碼作爲加密的一種好方法?
但我在想,如果我可以將數據庫信息保存在加密表上,那麼每個用戶數據庫組合中的一個條目和這些信息都會使用散列用戶密碼作爲鹽進行加密(與在用戶表,當然)。因此,如果攻擊者以某種方式設法掌握數據庫或應用程序,它仍然無法讀取所有數據庫密碼,因爲它需要有權訪問此類數據庫的用戶的密碼。
而我的想法是,當用戶登錄時,他的密碼被散列(如在數據庫中的鹽),並保存爲具有較短壽命的cookie以在用戶連接時使用它。
雖然我在想,如果攻擊者在我的應用程序上獲得執行權,他仍然可以訪問每個請求的連接用戶的cookie。
另一個缺點是用戶無法重置密碼,因爲如果他這樣做了,他不能解密密碼來訪問數據庫。
那麼,你有什麼想法呢?這是一個好方法嗎?你會怎麼做?