当前位置: 首页 > 图文教程 > 网络编程 > PHP > discuz安全提问算法

PHP
PHP memcache扩展的三种安装方法
PHP 判断常量,变量和函数是否存在
PHP session有效期问题
PHP 读取文件的正确方法
apache2.2.4+mysql5.0.77+php5.2.8安装精简
PHP 字符串编码截取函数(兼容utf-8和gb2312)
PHP 错误之引号中使用变量
php 购物车的例子
PHP 身份证号验证函数
php结合飞信 免费天气预报短信
PHP SQLite类
PHP 在线翻译函数代码
PHPMyAdmin 快速配置方法
PHP 编写的 25个游戏脚本
php 购物车实例(申精)
PHP获取当前文件所在目录 getcwd()函数
DISCUZ 论坛管理员密码忘记的解决方法
PHP 采集心得技巧
抓取YAHOO股票报价的类
PHP 模拟登陆MSN并获得用户信息

PHP 中的 discuz安全提问算法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 217 ::
收藏到网摘: n/a

今天朋友问我discuz安全提问答案能不能饶过去。或者破解,我以前就注意过个密码,只记得很短,以为是substr取的MD5,最后看了半天的源码,确实是MD5加密的,不过,加密的过程有点晕
<option value="0">无安全提问</option>
<option value="1">母亲的名字</option>
<option value="2">爷爷的名字</option>
<option value="3">父亲出生的城市</option>
<option value="4">您其中一位老师的名字</option>
<option value="5">您个人计算机的型号</option>
<option value="6">您最喜欢的餐馆名称</option>
<option value="7">驾驶执照的最后四位数字</option>
加密过程是value的值先加密一次,比如我的提问是“驾驶执照的最后四位数字”value的值就是7,7的MD5为8f14e45fceea167a5a36dedd4bea2543,我回答的是“1v1.name”,这里把1v1.name和7的MD5值放一起,也就是“1v1.name8f14e45fceea167a5a36dedd4bea2543”加密以后的MD5值为“f5d8e00a4ebc9ead4611c04706ae05fd”这时再取第17到24位的8位密码“4611c047”4611c047就是数据库里的密码
演示
7
8f14e45fceea167a5a36dedd4bea2543
1v1.name8f14e45fceea167a5a36dedd4bea2543
f5d8e00a4ebc9ead4611c04706ae05fd
4611c047