為確保用戶資訊安全,服務端不存儲原始密碼**,而是通過哈希加密(常結合 Salt 技術)存儲其不可逆的哈希值,當用戶登錄或重置密碼時,系統僅比對哈希值而非原始密碼,因此無法直接告知用戶原密碼,任何可提供原密碼的網站都存在重大安全風險。**

有時密碼輸入錯誤需要重置密碼
但你有沒有想過
為什麽不能直接告訴我原密碼是什麽
一定要選擇重置
這答案很簡單也很重要
服務端不存儲原密碼

服務端不應該知道你的原密碼
如果知道原密碼
是一個嚴重的安全風險
如果數據庫被黑客攻擊
或者有惡意的內部人員
他們將能夠訪問所有用戶的密碼並竊取
你想想後果

至於密碼的哈希加密有興趣
可以到網路上查資料

當你嘗試登錄
系統不會比對你輸入的密碼和數據庫中
存儲的密碼是否完全相同
它會將你輸入的密碼通過相同的哈希算法加密
然後比對生成的哈希值是否與數據庫中存儲的哈希值相匹配
如果匹配
那麽你的密碼就是正確的

為了增加密碼安全性
還引入了Salt的概念
通過在密碼的任意固定位置插入一個特定的字符串
使得即使是相同的密碼
經過處理後的哈希值也會不同
即使兩個用戶使用了相同的密碼
他們的哈希值也會不同
從而提高了安全性
登錄時
服務端會取出與密碼對應的Sult
然後再次執行哈希加密過程
如果最終生成的哈希值與數據庫中存儲的哈希值一致
那麽密碼就是正確

哈希算法是不可逆的
即使服務端存儲了哈希值
也無法從哈希值逆向推導出原始密碼
因此服務端自然也無法告訴你原密碼是什麽

當你更改密碼時
如果輸入的新密碼與原密碼相同
系統通常會提示
不可與原密碼相同
這是為了防止用戶無意中重覆使用相同的密碼
增加賬戶的安全性
這種方式不僅保護用戶的密碼不被泄露
還確保了整個系統的安全性
當你的密碼可以從網站裡直接拿到
或是告訴你原密碼是多少的網站
請注意這網站一定會被盜帳號密碼