我使用加密將客戶密碼存儲在數據庫中。更新和md5密碼
當客戶編輯自己的個人數據(包括密碼)密碼顯示爲*****
我怎麼能明白使用改變了他的密碼,這樣寫不DB連連加密。
我的意思是密碼字段中的值是加密值。如果不更改密碼必須使用相同的值更新(或完全不更新) 如果用戶更改密碼爲1234,我必須加密1234和寫入到DB加密值
感謝
我使用加密將客戶密碼存儲在數據庫中。更新和md5密碼
當客戶編輯自己的個人數據(包括密碼)密碼顯示爲*****
我怎麼能明白使用改變了他的密碼,這樣寫不DB連連加密。
我的意思是密碼字段中的值是加密值。如果不更改密碼必須使用相同的值更新(或完全不更新) 如果用戶更改密碼爲1234,我必須加密1234和寫入到DB加密值
感謝
當用戶想要更改時,您應該要求輸入舊密碼和新密碼。
這樣,您可以對舊密碼進行編碼,檢查編碼值是否與數據庫中的值相同。如果它是相同的,那麼你應該使用編碼的新密碼更新db中的密碼。如果不相同(或舊密碼爲空),則不更新。
這有助於您區分密碼更改和僅設置更改。您還可以獲得某種程度的安全性,就好像某人已經捕獲了您的用戶會話一樣,如果沒有捕獲原始密碼,他也無法更改其密碼。
的幾點:
MD5不是加密.alg。這是一個哈希算法。 – erenon 2009-11-27 12:50:32
你能改說你的問題嗎?我不明白你的意思在最後兩段... – 2009-11-27 12:53:59