我曾在ECMS论坛反映一个BUG:它的admin密码不支持使用特殊字符如“&”、“/”、“>”等,一个妹妹嘲笑我:为什么要把密码搞这么复杂?累不累?

老实说:很累!我杂七杂八的密码加起来有几十个,记住这些密码以及在哪儿存放备份都是问题,但对较重要的密码,我仍然会一丝不苟地按照某些商家的良好建议去设,这些原则是:

1. 不要设置与自己身份相关的密码

很多人习惯于用比如生日,办公电话,身份证号码,家人的名字……等等设置密码。

在我意识中,倒不是说要防身边的人,虽然这并非不必要,而是在网络的时代,你自己不见得能充分认识到这些信息会扩散到何种程度。比如说,我单位联系的银行和保险公司上门服务的业务员,手里就有我全套的资料,包括配偶;再比如域名注册信息查询(我诅咒隐藏域名信息还要另外收费的域名商)也有不少我的信息披露;最让我吃惊的是我们单位的笨蛋网管,居然能把分房的信息让在互联网上查到!谁过去住哪儿新房在哪儿工龄职称……真是恐怖!

所以,如果你有用私人信息设置密码的习惯,从今天起就改了它。

2. 不要设置过于简单的密码

复杂的密码是指:一要有足够的长度,二要混合使用多种符号(字母、数字、特殊字符等)。为什么要搞那么复杂呢?

这先得从密码的设置原理说起,一般密码加密还都是采用MD5算法,其加密解密过程参看前一篇文章:《MD5算法及其应用》,虽然说,MD5算法是不可逆的,但是,却可以象查字典一样查询MD5对应的字符串……不说理论上的,请做个测试你就明白了:

为更客观,我在http://tool.cnzz.cn/tool/md5.asp模拟生成一个随意的5位小写字母密码的MD5码:

image

然后换另一MD5破解站http://www.cmd5.com/Default.aspx去破解它:

image

原密码立刻显形!

*** 以上站点是本人为写此文随机选择的,安全性请自行判断 ***

对付这种解密方法,我们唯一能做的就是让密码长些、复杂些,增加它用解密字典原理解密的难度和成本。

你或许会问:他又如何知道我密码的MD5码呢?

要知道,你的密码的MD5码是在你注册商的数据库里明码存放的!黑客如何得到数据库里的数据我没研究过,可是作为一个站长,我可是知道它对于数据库的管理员是一览无余的。你在多少网站注册过?恐怕自己也记不清了吧;这些网站的管理员都可靠吗?你也说不清吧?那么你至少从今以后应该改掉这样一个恶习(如果有的话)——

3. 不要为不同的应用设置相同的密码

不要为了图方便,将你所有的密码设为一个。现在网络技术的发展使得个人做一个网站或者论坛几乎像看着菜谱学炒个菜一样简单了,或许你一时高兴,在某灌水论坛用和QQ相同的昵称和密码注册了账户,改天又去用同样的密码申请了PayPal账户……其愚蠢程度是显而易见的,但很多人却在这样做!