这册页面 register.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body><br /><br />
<form name="form1" action="lr.php" method="post">
<input type="text" name="user" maxlength="20" size="20" /><br /><br />
<input type="password" name="pwd" maxlength="20" size="20" /><br /><br />
<input type="submit" name="submit" value="login" />
</form>
</body>
</html>
是不是要在此页面进行md5加密 再传到 lr.php啊 但是那个pwd还是有可能被截获啊 具体该怎么做 请指教
数据被截获是无法避免的,除非用SSL加密。
比较安全的方法可以这样:
1. 数据正常提交至lr.php
2. 获取一个当前时间time()
3. 将密码组合time()后md5
4. 将组合后的密码md5值和之前获取的time()一起存入数据库。
当今后需要登录时首先获取用户名对应的time(),再组合上密码进行md5,和数据库内的密码md5对比。
比较安全的方法可以这样:
1. 数据正常提交至lr.php
2. 获取一个当前时间time()
3. 将密码组合time()后md5
4. 将组合后的密码md5值和之前获取的time()一起存入数据库。
当今后需要登录时首先获取用户名对应的time(),再组合上密码进行md5,和数据库内的密码md5对比。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2010-06-07
不知道啊,你看这样行不行
最下面添加一个<input type="hidden" name="pwdmd5" value="" />
然后 密码框 添加 onchange="pwdMd5(this);"把md5后的密码放到name="pwdmd5"
传的时候直接传name="pwdmd5",不要传name="pwd"
最下面添加一个<input type="hidden" name="pwdmd5" value="" />
然后 密码框 添加 onchange="pwdMd5(this);"把md5后的密码放到name="pwdmd5"
传的时候直接传name="pwdmd5",不要传name="pwd"
第2个回答 2010-06-07
那你就把处理页面也写到注册页面里。加密后不经过其它页面而直接插入数据库
就算是被截获了,也没有太多关系,比如他截获的是md5(123456)
当他在你的登录页面输入md5(123456)他也进不去,因为你的程序会给它再次加密md5(md5(123456))然后判断是不是跟数据库里的相同。
我是这么认为的哦
就算是被截获了,也没有太多关系,比如他截获的是md5(123456)
当他在你的登录页面输入md5(123456)他也进不去,因为你的程序会给它再次加密md5(md5(123456))然后判断是不是跟数据库里的相同。
我是这么认为的哦
第3个回答 2010-06-07
被 谁截获? 这问题根本不用担心 。。现在网站都是这么做的吧?