<?php // +--------------------------------------------------------------+ // // | 密码验证流程 | // // +--------------------------------------------------------------+ // // 把密码明文进行三次哈希运算后再传递给后端(注:此处为模拟前端操作) $password = 'admin'; // 用户输入的密码明文 $hash = md5($password); // 第1次哈希运算(使用md5算法) $hash = hash('sha256', $hash); // 第2次哈希运算(使用sha256算法) $hash = hash('sha512', $hash); // 第3次哈希运算(使用sha512算法) // 后端接收到前端传递过来的密码哈希再进行三次哈希运算 $hash = md5($hash); // 第1次哈希运算(使用md5算法) $hash = hash('sha256', $hash); // 第2次哈希运算(使用sha256算法) $hash = hash('sha512', $hash); // 第3次哈希运算(使用sha512算法) // 从数据库查出用户的密码哈希(注:此处为查询数据库模拟操作) $hashFromDB = password_hash($hash, PASSWORD_DEFAULT); // $2y$10$O1wqz84z9KOswLsHu4C0JOyXsTd6w08zPxugOPVC7G8XBRsOibTVm // 检查密码是否正确 if (password_verify($hash, $hashFromDB)) { echo '密码正确' . PHP_EOL; // 密码正确 } else { echo '密码错误' . PHP_EOL; }
Copyright © 2024 码农人生. All Rights Reserved