码迷,mamicode.com
首页 > Web开发 > 详细

discuz密码生成

时间:2015-02-26 18:32:32      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:

Discuz的密码加密算法其实就是两次MD5加密,首先用明文进行一次加密,之后随机生成一个salt,再把第一次的密文后面添加salt作为明文再进行一次MD5加密。salt保存在uc_members表里,可以通过用户名进行获取。

像这样:

MD5(MD5(明文)+salt)

下面是.net的实现代码:

 代码如下 复制代码

string GetDiscuzPWString(string sourceStr, string salt)
{
     return GetMd5Hash(string.Concat(GetMd5Hash(sourceStr),salt));
}

string GetMd5Hash(string input)
{
    MD5 md5Hasher = MD5.Create();

    byte[] data = md5Hasher.ComputeHash(Encoding.Default.GetBytes(input));

    StringBuilder sBuilder = new StringBuilder();

    for (int i = 0; i < data.Length; i++)
    {
        sBuilder.Append(data[i].ToString("x2"));
    }

    return sBuilder.ToString();
}

总结密码判断方式
1:要安装UC
2:打开数据库找到uc_members 这表,寻找最后一个字段"salt ",复制里面的值
3:
$s=md5(md5("密码")."salt字段的值");
echo $s;
4:用IF判断
5:再说一次!那个随机是6位数!

discuz密码生成

标签:

原文地址:http://www.cnblogs.com/Xujg/p/4301679.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!