頁面密碼如何安全傳輸到后端並安全保存
用 https 協議,后端加鹽
1 應對抓包:https 協議
2 應對數據庫泄露:后台用 PHP 計算加鹽的 md5:md5(passWord + salt),每個用戶采用不同的鹽。創建用戶或者修改密碼時,將 salt 和 md5 保存到這個用戶的記錄中。
在沒有 https 的情況下:
方法1:前后端非對稱加密,后端加鹽
1 應對抓包:前端 JS 用公鑰加密,后端 PHP 用私鑰解密。
2 應對數據庫泄露:后台用 PHP 計算加鹽的 md5:md5(passWord + salt),每個用戶采用不同的鹽。創建用戶或者修改密碼時,將 salt 和 md5 保存到這個用戶的記錄中。
方法2:前后端加鹽算法:
1 應對抓包:頁面上用 JS 計算加鹽的 md5_1:md5(passWord + salt_1),所有用戶采用相同的鹽,始終不變。
2 應對數據庫泄露:后台用 PHP 計算加鹽的 md5_2:md5(md5_1 + salt_2),每個用戶采用不同的鹽。創建用戶或者修改密碼時,將 salt_2 和 md5_2 保存到這個用戶的記錄中。