在用PHP做驗證登錄時遇到了一些問題。我的驗證方法是:規(guī)定一個私鑰key,加密算法是把user_id和key連接起來后求md5把user_id和加密后的密文存到cookies中驗證時從cookies取出user_id和密文,對user_id再進行一次加密,比較兩個密文想問一下這樣做能否確保安全性?md5是否可靠?還有私鑰有沒有必要設(shè)置成與user_id相關(guān)的隨機字串?另外,一般網(wǎng)站在登錄后都會在每個頁面(通常是右上角)顯示用戶昵稱或者用戶名,甚至用戶的頭像,這些數(shù)據(jù)是存放在數(shù)據(jù)庫中的,如果每個頁面都要根據(jù)user_id來讀取數(shù)據(jù)庫,會不會造成效率下降?如果會,是否要把這些信息存放到cookies或者sessions中?或者是否要對讀取數(shù)據(jù)庫的方法進行優(yōu)化?
PHP驗證登錄狀態(tài)的效率和安全性問題
炎炎設(shè)計
2019-04-09 20:25:01