ucenter 用户加密方式2009年11月27日 18:37cdb_members(论坛用户表)这个表中的密码是无效的。也不知道这个密码是怎么来的。修改之后还是能登陆的。密码按照cdb_uc_members中的为准。 cdb_uc_members(ucenter的用户表) 发现ucenter的用户的加密方法有些怪异,得到的密码不知标准的MD5的结果. 翻了翻google,发现dz的加密方式还是比较有新意的. 为了防止网络上md5数据库的威胁,所以进行了2次md5,而且第二次的md5还是在原始密码md5的基础上加了一段随机数. 随机数和密码都保存在数据库. 其实这样子的操作和,2次md5区别就不是很大了.对于一个32位随机数字的md5的数据库应该不大可能有解. 如果能拿到MD5结果,哪么随机数也能看到.怎么说呢,加随机数和不加随机数都是很难配检索出来的. —— 获得随机字串的代码: <?php function random($length, $numeric = 0) { PHP_VERSION < '4.2.0' && mt_srand((double)microtime() * 1000000); if($numeric) { $hash = sprintf('%0'.$length.'d', mt_rand(0, pow(10, $length) - 1)); } else { $hash = ''; $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz'; $max = strlen($chars) - 1; for($i = 0; $i < $length; $i++) { $hash .= $chars[mt_rand(0, $max)]; } } return $hash; exit; } ?> 得得随机字符串 加密密码:md5(md5($newpw).$salt) $salt为random返回的字符串$hash 这样就极大的提高了用户密码的安全性。 —— MD5(admin)=21232f297a57a5a743894a0e4a801fc399896a MD5(21232f297a57a5a743894a0e4a801fc399896a,32) = 9efed2e9b935742f15ee5b93bbf43afe 这样子就能数据库的数据对上了. ——— 有了这个就可以自己手动添加用户了…嘎嘎