[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[已回复]除了我,还有谁知道我的密码?

比如本站admin他知道吗?

不知道。discuz论坛注册用户时,你的密码会先以md5加密再存入数据库。再说本论坛不会窥探用户隐私的,这你大可放心
---学无止境---

TOP

不知道。discuz论坛注册用户时,你的密码会先以md5加密再存入数据库。再说本论坛不会窥探用户隐私的,这你大可放心
broly 发表于 2011-7-16 09:49

你有看过discuz源码么?

TOP

本帖最后由 Taurus 于 2011-7-20 14:27 编辑
你有看过discuz源码么?
Demon 发表于 2011-7-16 14:17

以我所知這是插件問題
DZ舊版有插件專門做這個的,包括看用戶PM訊息;
新版本DZ我就不知道了

PS:我指的舊版都DZ4.0了
带内地用语或带里语的文章,在下读写总觉有点吃力;
如误解了各位意思的讲勿见怪   ^_^

TOP

3# Demon

我确实没有看过discuz加密的源码,但是以前有听说过discuz是用MD5加密的。
好了,现在你知道答案了,你想表达什么?
我今天去看了下discuz7.2源码:
bbs/register.php 第252行:
  1. $password = md5(random(10));
  2. $db->query("INSERT INTO {$tablepre}members (uid, username, password, secques, adminid, groupid, regip, regdate, lastvisit, lastactivity, posts, credits, extcredits1, extcredits2, extcredits3, extcredits4, extcredits5, extcredits6, extcredits7, extcredits8, email, showemail, timeoffset, pmsound, invisible, newsletter)
  3.   VALUES ('$uid', '$username', '$password', '$secques', '0', '$groupinfo[groupid]', '$onlineip', '$timestamp', '$timestamp', '$timestamp', '0', $initcredits, '$email', '0', '9999', '1', '0', '1')");
复制代码

其中 random() 函数在
bbs/include/global.func.php 第909行
  1. function random($length, $numeric = 0) {
  2. PHP_VERSION < '4.2.0' ? mt_srand((double)microtime() * 1000000) : mt_srand();
  3. $seed = base_convert(md5(print_r($_SERVER, 1).microtime()), 16, $numeric ? 10 : 35);
  4. $seed = $numeric ? (str_replace('0', '', $seed).'012340567890') : ($seed.'zZ'.strtoupper($seed));
  5. $hash = '';
  6. $max = strlen($seed) - 1;
  7. for($i = 0; $i < $length; $i++) {
  8.   $hash .= $seed[mt_rand(0, $max)];
  9. }
  10. return $hash;
  11. }
复制代码

这里大概的意思就是把 密码和一个随机数加起来的字符串 进行第一重MD5的16位加密,然后转换为十进制,然后加字符串zZ和大写第一次加密后的字符串,然后打乱这些字符串的顺序,最后再第二重 16位MD5加密。
这样想反查出明文密码就很难了。
---学无止境---

TOP

返回列表