如果我有一個隨機的,16字符長的字母數字鹽(不同情況下),每個用戶生成和存儲,我是否也需要一個網站鹽?密碼,鹽和認證
換句話說,這是好嗎?
sha1($user_salt . $password)
我應該這樣做嗎?
sha1($user_salt . $password . $site_salt)
此外,
目前,我有一個加密的Cookie,看起來一個會話中的DB。在這個會話中,有一個user_id和一個user_token。然後我使用user_id查詢數據庫 - 如果數據庫=== user_token中的user_id + hash的sha1,則允許用戶通過。
我對每個頁面加載的user_id做第二次查詢,以便如果我刪除,禁止或更改用戶的密碼,該操作立即生效。
這就是我在這裏看到的網站和問題。你怎麼看?我錯過了什麼?
我需要添加角色檢查,但可能會添加另一個查詢(僅用於身份驗證的第三個查詢)。有小費嗎?