1,网站后台密码忘记 ?改了数据库MD5 还是错误
1,登陆网站空间的管理站点,也就是当时购买空间的官方网站。
2,进入用户中心,找到数据库管理。进入数据库管理中心,高级管理,进入高级管理界面,也就是phpmyadmin
3,根据自己网站程序,选择数据表名称(主要用来控制网站后台的登陆,一般后缀为admin
userid是网站后台的登陆账户名。
4,在pwd处所出现的一长串代码,就是通过md5加密32位数字串(有的是16位)
5,打开一个提供md5加密解密的网站,随便输入几个数字,比如123456,点击加密,此时所出现的,就是md5方式加密的字符串,我们对照数据表admin当中,pwd处字符串。看看和那个比较接近(大小写和数位对比),可以发现是第三。
6复制第三处的字符串,将其粘贴在数据表admin的pwd处,可以看到数据表的修改提示。
7.就可以登陆网站后台地址,账号就是之前的帐户名,密码则是刚刚修改过的123456了。
2,数据库的管理密码修改后网站后台还是进不去????
呵呵,你用那个程序里的MD5来加密你的新密码再放进去
因为MD5程序可以修改的,在里面改动一个字符,结果都是天壤之别的
另外,你要注意一下,它是否进行了二次加密,或者更多
我自己的程序有时候都会进行二次加密的。
MD5加密的形式是这样的
例:
a="123"
b=MD5(a) '这叫一次加密
c=MD5(MD5(a)) '这就叫二次加密了
有的时候,二次加密并不是那么明显的,
可以用这样的形式:
a="123"
b=MD5(a)
c=MD5(b) '这里输出的c也是经过二次加密的
给你最好的建议就是,你好好查看一下登录验证页的那段代码
看它是怎么处理传过来的密码的。要不你把有关密码的那段代码贴上来我们帮你看也行。
3,关于MD5加密结果
你这个应该是网上找的 错误的JAVA MD5加密实现代码吧? 使用错误的方式加密出来的就是你贴出来的那个密文
//错误的方式;0xFF & byteArray[i]).length() == 1 的时候会缺少 0 位数不对,
// md5StrBuff.append(Integer.toHexString(0xff & byteArray[i]));
//正确的方式
if (Integer.toHexString(0xFF & byteArray[i]).length() == 1) {
md5StrBuff.append("0").append(Integer.toHexString(0xFF & byteArray[i]));
} else {
md5StrBuff.append(Integer.toHexString(0xFF & byteArray[i]));
}
//end
完整的:
import java.security.MessageDigest;
public class MD5Util {
public static void main(String[] args) {
System.out.println(MD5("123"));
}
/**
* 将字符串加密为MD5的结果
* @param source 源字符串
* @return 加密后的字符串
*/
public static String MD5(String source) {
try {
// 对密码进行MD5加密处理
byte byteEncrypt[] = null;
byteEncrypt = source.getBytes("UTF8");
MessageDigest mdInstance = MessageDigest.getInstance("MD5");
mdInstance.update(byteEncrypt);
byte byteArray[] = mdInstance.digest();
// MD5转换编码
StringBuffer md5StrBuff = new StringBuffer();
for (int i = 0; i < byteArray.length; i++) {
//错误的方式;0xFF & byteArray[i]).length() == 1 的时候会缺少 0 位数不对
// md5StrBuff.append(Integer.toHexString(0xff & byteArray[i]));
//正确的方式
if (Integer.toHexString(0xFF & byteArray[i]).length() == 1) {
md5StrBuff.append("0").append(Integer.toHexString(0xFF & byteArray[i]));
} else {
md5StrBuff.append(Integer.toHexString(0xFF & byteArray[i]));
}
//end
}
return md5StrBuff.toString();
} catch (Exception e) {
}
return null;
}
}
4,md5为什么不能解密?
MD5加密原理是散列算法,散列算法也称哈希算法。
计算机专业学的数据结构就有哈希表这一知识点。
比如10除以3余数为一,4除以3余数也为一,但余数为一的就不知道这个数是哪个了。
所以md5不能解密。
就算是设计这个加密算法的人都不知道。
但是你的密码是怎么验证的呢?就是因为同一密码加密后一定相同。
你输入密码加密后才能知道你的密码是否正确。
也就是说,你的密码只有你自己知道。
也是为什么扣扣密码只能重置,不能找回的原因。
over
5,网站后台密码忘了,有数据库怎么改,
1,登陆网站空间的管理站点,也就是当时购买空间的官方网站。
2,进入用户中心,找到数据库管理。进入数据库管理中心,高级管理,进入高级管理界面,也就是phpmyadmin
3,根据自己网站程序,选择数据表名称(主要用来控制网站后台的登陆,一般后缀为admin
userid是网站后台的登陆账户名。
4,在pwd处所出现的一长串代码,就是通过md5加密32位数字串(有的是16位)
5,打开一个提供md5加密解密的网站,随便输入几个数字,比如123456,点击加密,此时所出现的,就是md5方式加密的字符串,我们对照数据表admin当中,pwd处字符串。看看和那个比较接近(大小写和数位对比),可以发现是第三。
6复制第三处的字符串,将其粘贴在数据表admin的pwd处,可以看到数据表的修改提示。
7.就可以登陆网站后台地址,账号就是之前的帐户名,密码则是刚刚修改过的123456了。