本人比較菜,目前使用的方案是1.在客戶端COOKIES中保存用戶ID和一個加密碼(規則只有我知道)2.如果程序檢測到客戶端保存的COOKIES ID。就去跟數據庫驗證加密碼,如果一致則返回對應用戶的登錄信息,否則返回FALSE1.用戶訪問每個頁面都要去跟數據庫驗證一遍2.加密碼雖然規則很復雜,但是保存在客戶端依然存在被破解的可能性
3 回答

縹緲止盈
TA貢獻2041條經驗 獲得超4個贊
cookie中怎么能夠保存密碼呢?
你的做法已經可以了,不過有如下幾點建議:
1. 客戶端可以保存兩種數據,一種是原數據(比如user_id),一種是對所有原數據的簽名(你所說的加密碼)
2. 原數據的保存可以看具體情況保存原字符串或者可逆加密算法加密后的字符串
3. 針對所有的原數據的簽名的算法,最好是不可逆的
4. 服務器端只要獲取到原數據,重新計算簽名,比如和cookie中的簽名是否一致即可。
最簡單的cookie的樣子:
A=uid=123&sign=xxxxxxxx
cookie生成方法:
sign = md5(secure_key + uid);
cookie = 'uid=' + uid + '&sign=' + sign
secure_key 是一個私有的串,誰也不能告訴哦。
cookie校驗的方法:
獲取到uid和sign之后
sign == md5(secure_key + uid)
當然如果覺得md5不可靠的話,可以選擇更好的算法。

白衣非少年
TA貢獻1155條經驗 獲得超0個贊
一般這樣的不是用$_SESSION變量的么,COOKIES肯定不能保存密碼額。我一般是這樣用的,用$_SESSION保存登陸狀態,用$_COOKIES保存一個用戶ID什么的。
- 3 回答
- 0 關注
- 163 瀏覽
添加回答
舉報
0/150
提交
取消