http://www.cmd5.com/

虽然不是真正意义上的MD5解密,是MD5库反向查询。但是也足够让人惊心动魄,最流行的32位MD5加密也有可能被破解出来,而且几率很大。当然对于网站来说,做好服务器、数据库的安全,MD5的密码就不会被窃取,也就不会被破解出来。但毕竟是一种威胁。想了些思路。

思路一:就是用MD5二次加密,反正MD5是单向加密、不能解密,用MD5二次加密安全性应该更高。在上面的网站上试了一下123456的MD5二次加密,没有找到结果。

思路二:多种加密方式结合。

思路三:MD5加密后从32位中截取一位,即使黑客得到MD5密码也无法得出原字符,一是很难猜出截取的是哪一位,二是截取的那一位也要猜测是哪个字符。

按照上面的思路,修改了DISCUZ的MD5加密方式:

首先,在include/common.inc.php中加入:

function jiami($str)
{
$str=md5(md5($str));
$str=substr($str,1);
return $str;
}

然后把DISCUZ的所有文件中的md5(替换为jiami(。

其实也很简单,就是把被加密字符二次MD5加密,然后去掉第一个字符,这样即使数据库被盗,也很难反向获取被加密字符。例如123456的MD5是 e10adc3949ba59abbe56e057f20f883e(32位),但用上面的方法加密后是 4e1b600b1fd579f47433b88e8d85291(31位),这样即使黑客得到31位的加密字符,也很难反向得出被加密字符。你也可以按照自己的思路,在md5的基础上再加一次加密,就更安全了。

posted on 2010-07-03 17:11  蓝牙  阅读(628)  评论(0编辑  收藏  举报