php中写salt,请快速检查这个PHP+SALT实现-不工作?
在教程的基础上,使用salt实现一个基本的用户注册+登录系统。目前我在注册阶段使用这个:
define('SALT_LENGTH', 9);
function generateHash($plainText, $salt = null)
{
if ($salt === null)
{
$salt = substr(md5(uniqid(rand(), true)), 0, SALT_LENGTH);
}
else
{
$salt = substr($salt, 0, SALT_LENGTH);
}
return $salt . sha1($salt . $plainText);
}
$newpass = generateHash($_POST['newpass']);
followed by:
$sql = "INSERT INTO user SET
userid = '$_POST[newid]',
password = PASSWORD('$newpass'), ... etc"
这个很好用。
我现在要比较输入密码以检查是否相等(在单独的访问控制文件中):
define('SALT_LENGTH', 9);
function generateHash($plainText, $salt)
{
$salt = substr($salt, 0, SALT_LENGTH);
return $salt . sha1($salt . $plainText);
}
$sql = "SELECT password FROM user WHERE
userid = '$uid'";
$result = mysql_query($sql);
$row = mysql_fetch_row($result);
$comparepwd = generateHash($pwd, $row['password']);
if (mysql_num_rows($result) == 0 || $comparepwd != $row['password']) {
//access denied, unset session variables
}
INSERT INTO user SET
userid = '$_POST[newid]',
password = PASSWORD('$newpass')
密码('$newpass')会对MySQL产生进一步的影响吗?
php中写salt,请快速检查这个PHP+SALT实现-不工作?相关推荐
- 【修真院web小课堂】请描述 BFC(Block Formatting Context) 及其如何工作
请描述 BFC(Block Formatting Context) 及其如何工作 小课堂[北京-WEB-A组] 分享人:要来点本子吗 大家好,我是IT修真院北京分院第35期的学员,一枚正直.纯洁.善良 ...
- pythonisnan_python - 在NumPy中快速检查NaN
python - 在NumPy中快速检查NaN 我正在寻找最快的方法来检查NumPy数组np.nan != np.nan中NaN(np.nan in X)的出现.np.isnan(X)是不可能的,因为 ...
- 不能装载文档控件。请在检查浏览器的选项中检查浏览器的安全设置_Excel基础—文件菜单之设置信息...
点赞再看,养成习惯 少壮不努力,老大徒伤悲 由于文件菜单就有很多东西要学,因此文件菜单我们将分为三章来学.而本章将主要学习设置,先上思维导图,先了解一下有哪些东西要学.打了红色五角星的是我们着重要关注 ...
- 列注释_【EXCEL检查问题】:如何快速检查并删除EXCEL中隐藏的工作表、行、列等信息...
前注:本案例是以EXCEL2016为示范软件,各版本的部分功能和路径可能不同 在EXCEL使用过程中,你是否遇到过某一列的公式怎么修改都报错的情况?你是否遇到过一个只有区区几行数据的表格,却占用了好几 ...
- 写一个方法判断一个整数是否为质数_请写一个函数来检查用户提交的数据是否为整数...
请写一个函数来检查用户提交的数据是否为整数(不区分数据类型,可以为二进制.八进制.十进制.十六进制数字) 1.is_integer 是 is_int() 的别名,是一样的 2.is_int/is_in ...
- sql integer字置为空_请写一个函数来检查用户提交的数据是否为整数
请写一个函数来检查用户提交的数据是否为整数(不区分数据类型,可以为二进制.八进制.十进制.十六进制数字) 1.is_integer 是 is_int() 的别名,是一样的 2.is_int/is_in ...
- php中显示li,请C语言大侠们帮忙看看,为什么总显示 array subsc... html中的ul li 用php怎么做?php在html中写 代码如......
导航:网站首页 > 请C语言大侠们帮忙看看,为什么总显示 array subsc... html中的ul li 用php怎么做?php在html中写 代码如... 请C语言大侠们帮忙看看,为什么 ...
- 软著中写源代码60页快速实现方法
软著中写源代码60页快速实现方法 原创 2016年09月26日 09:48:11 4699 我们在写软著的时候,其中包含要写60页的源代码,包含前30页,后30页,代码帖的太麻烦,可以直接用脚本实现. ...
- 在Excel表格中如何快速检查两张表的不一样的数据
在Excel表格中如何快速检查两张表的不一样的数据 目录 在Excel表格中如何快速检查两张表的不一样的数据 1.全选第一张表格,找到"开始"选项卡中"条件格式" ...
最新文章
- IntelliJ IDEA中跳转到上一个视图位置(向后/向前导航)的键盘快捷键
- python人脸识别毕业设计-Python基于Dlib的人脸识别系统的实现
- 广西梧州举办警察半程马拉松邀请赛 3000多人开跑
- 用WMI获取远程机器操作系统的详细信息
- 使用SAX解析XML文件
- 小魂和他的数列(dp+树状数组优化)
- CF1342E. Placing Rooks
- cpu时间片 linux,能讲一下在Linux系统中时间片是怎么分配的还有优先级的具体算法是...
- 前端:HTML5/36/HTML5简介,文档类型定义,网页字符集,页面结构标记,文章相关的标记,其它标记,音频标记,视频标记,表单中新增的属性,表单input元素type属性的值
- 2012021401
- BZOJ 1066[SCOI2007]蜥蜴
- C#仿win10计算器
- DAVE笔记--Micrium uc-Probo DashBoard调试
- java自行车s码适合身高_公路自行车尺寸与身高的选择
- java的8年来工作汇总
- es6删除数组某一项_JavaScript:集合与数组,重要但你不知道的ES6数据类型
- C/C++常用的文件函数注释格式
- android emulator ps4,PS4 Simulator模拟器
- day10 爬虫导言
- 使用英特尔® 图形性能分析器分析实际游戏性能