加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP中用hash密码和md5密码方式怎样生成用户密码

发布时间:2023-05-17 13:48:26 所属栏目:PHP教程 来源:
导读:这篇文章主要讲解了“PHP中用hash密码和md5密码方式怎样生成用户密码”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP中用hash密码和md5密码方
这篇文章主要讲解了“PHP中用hash密码和md5密码方式怎样生成用户密码”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP中用hash密码和md5密码方式怎样生成用户密码”吧!
 
1、hash密码,主要使用单向分散算法来创建密码分散。
 
密码加密方式数据库中,存储结果的列可以超过60个字符,需要将varchar长度设置为255。
 
<?php
 
//加密
 
function generatePassword($password)
 
{
 
   return password_hash($password, PASSWORD_DEFAULT);
 
}
 
//验证
 
function verifyPassword($password, $hashPassword)
 
{
 
   return password_verify($password, $hashPassword);
 
}
 
//加密结果:$2y$10$.vGA1O9wmRjrwAVXD98HNOgsNpDczlqm3Jq7KnEd1rVAGv3Fykk1a
 
2、md5密码,是一种非对称加密。最好在加密时添加混淆字符串。
 
这应该是最常见的密码加密方法。
 
这种密码方法实际上非常安全,因为哈希碰撞可能会导致漏洞。
 
<?php
 
//加密
 
function md5_password($password, $hash = 'autofelix_')
 
{
 
    return md5($hash . $password);
 
}

//验证
 
$userinfo = /** 查询用户信息 **/; 

if ($userinfo['password'] !== md5_password($password)) {
 
    /** 密码错误逻辑 **/
 
}

/** 密码正确,继续往后走逻辑 **/
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!