php中對用戶密碼的加密主要有兩種方法,一種是利用md5加密,另一種是利用password_hash加密,兩種方法中后一種的方法比前一種方法安全很多,幾乎不能被黑客破解,但php版本必須在5.5以上。下面介紹兩種加密方法如何加密才更安全。
新建一個PHP文件,命名為test.php。
利用md5加密。為了更加安全,可以給用戶密碼加上隨機字符串再使用md5加密,產生隨機字符串的函數如下:
假如用戶的密碼$password為123456,則可以把123456加上隨機字符串傳入md5函數中進行加密。隨機字符串和用戶密碼都存儲在數據庫中,當解密的時候可以使用進行判斷密碼是否正確。
1、/4PHP版本在5.5以上的更安全的加密方式
新建一個php文件,命名為test2.php
使用password_hash()方法對密碼進行加密,這是目前PHP最為安全的加密方式。假如用戶密碼為123456,加密方式如下:
由上面代碼可見,加密的過程是很簡單的,由于使用 bcrypt 算法,密碼會隨著PHP版本的不同,長度也會不同。因此,數據庫里儲存密碼的字段最好是255個字符,可以避免出錯。
password_hash解密的方式是通過password_verify()方法來解密的,假如數據庫存儲的密碼為$db_password,則解密方法如下:
您可能感興趣的文章:- PHP安全配置優(yōu)化詳解
- PHP開發(fā)api接口安全驗證操作實例詳解
- Linux下PHP+Apache的26個必知的安全設置
- php解決安全問題的方法實例
- 實例分析10個PHP常見安全問題
- PHP危險函數禁用深入詳解