【哈希密码】PHP比md5更安全的加密方式-php教程

资源魔 29 0
传统加密形式:

md5(明码+盐值);

$passwordString='your password';//你的明码
$salt="your salt value";//盐值,添加复杂度(随机字串)
$md5Password=md5($passwordString.$salt);

从实践下去说,md5不成逆,算是一种比拟平安的加密形式。然而我要提示的是,md5早正在04年的时分就被中国人破解。一旦被人拖库的化,明码泄露的可能性极年夜。

如今保举一种新的解决形式:

明码散列算法函数

password_get_info — 前往指定哈希(hash)的相干信息

password_hash — 创立明码的哈希(hash)

password_needs_rehash — Checks if the given hash matches the given options

password_verify — 验证明码能否以及哈希婚配

PHP5.5引入了Password Hashing函数,内核自带无需装置扩大。正在PHP5.4下测试了下也可是能够的,应用前最佳确认一下你以后的环境能否支持这些函数。

Password Hashing次要提供了4个函数

//查看哈希值的相干信息
array password_get_info (string $hash)
 
//创立hash明码
string password_hash(string $password , integer $algo [, array $options ])
 
//判别hash明码能否特定选项、算法所创立
boolean password_needs_rehash (string $hash , integer $algo [, array $options ] 
 
boolean password_verify (string $password , string $hash)
//验证明码

代码演示:

$password = 'password123456';//原始明码
//应用BCRYPT算法加密明码
$hash_password = password_hash($password, PASSWORD_BCRYPT);
 
 
if (password_verify($password , $hash_password)){
   echo "明码婚配";
}else{
   echo "明码谬误";
}

首要特色:

经过password_hash加密后的明码,应用字典形式很难破解,由于每一次天生的明码都是纷歧样的。破解这类加密只能采纳暴力破解。

最初提示:

加密办法再好,原始明码设置的过于简略都容易被破解,设置复杂的明码才是霸道。

以上就是【哈希明码】PHP比md5更平安的加密形式的具体内容,更多请存眷资源魔其它相干文章!

标签: php php开发教程 php开发资料 php开发自学

抱歉,评论功能暂时关闭!