php用戶名的密碼加密更安全的方法
php中對用戶密碼的加密主要有兩種方法,一種是利用md5加密,另一種是利用password_hash加密,兩種方法中后一種的方法比前一種方法安全很多,幾乎不能被黑客破解,但php版本必須在5.5以上。下面介紹兩種加密方法如何加密才更安全。
新建一個PHP文件,命名為test.php。

利用md5加密。為了更加安全,可以給用戶密碼加上隨機(jī)字符串再使用md5加密,產(chǎn)生隨機(jī)字符串的函數(shù)如下:

假如用戶的密碼$password為123456,則可以把123456加上隨機(jī)字符串傳入md5函數(shù)中進(jìn)行加密。隨機(jī)字符串和用戶密碼都存儲在數(shù)據(jù)庫中,當(dāng)解密的時候可以使用進(jìn)行判斷密碼是否正確。

1、/4PHP版本在5.5以上的更安全的加密方式
新建一個php文件,命名為test2.php

使用password_hash()方法對密碼進(jìn)行加密,這是目前PHP最為安全的加密方式。假如用戶密碼為123456,加密方式如下:

由上面代碼可見,加密的過程是很簡單的,由于使用 bcrypt 算法,密碼會隨著PHP版本的不同,長度也會不同。因此,數(shù)據(jù)庫里儲存密碼的字段最好是255個字符,可以避免出錯。

password_hash解密的方式是通過password_verify()方法來解密的,假如數(shù)據(jù)庫存儲的密碼為$db_password,則解密方法如下:

相關(guān)文章
CentOS系統(tǒng)中PHP安裝擴(kuò)展的方式匯總
本文給大家匯總介紹了CentOS系統(tǒng)中PHP安裝拓展的方式,主要有 包管理式 的 yum 安裝、pecl 安裝,以及 源碼編譯安裝??偨Y(jié)的非常全面,推薦給大家。2017-04-04
關(guān)于PHP模板Smarty的初級使用方法以及心得分享
本篇文章是對PHP模板Smarty的初級使用方法以及心得進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
php警告Creating default object from empty value 問題的解決方法
PHP 提示 Creating default object from empty value 的問題,一般是由于PHP版升級的原因,PHP 5.4 以上的版本一般會報這個錯誤2014-04-04

