如何构建安全的密码之补充

2010.10.17 | Rev 0.00

编程随想的博客写过关于计算机安全的一系列文章,其中如何防止黑客入侵[3]:如何构造安全的口令/密码一文讲述了如何构建一个安全的口令,介绍的很详细,强烈建议认真阅读。由于编程随想的博客已经被GFW认证,因此请用Google Reader来订阅阅读。

针对构建安全密码的问题,我想补充两点:

1. 如何防止网站泄漏你的密码

多数注册网站都有一个找回密码/重置密码的功能。不同的是,有些网站当你点击找回密码/重置密码后会直接将明文密码发回注册者的邮箱,有些则会发送一个重置密码的链接到注册者的邮箱,点击链接后重置密码。

针对第一种网站就要特别注意了,如果找回密码直接发送明文密码到邮箱,说明注册密码本身就是明文存放在网站数据库中,或者只是简单加密后存放在数据库中,而且这种加密方式是可逆的。如果网站被攻破,则所有User的注册信息都可能泄漏。又假如这个密码是你最常用的密码,那么你多个网站的注册信息都可能会被破解。

第二种情况看似安全,但是也不能保证网站不是以明文存放密码的。要保证安全,就需要用户考虑到最糟糕的情况,即网站还是明文存放密码,而找回密码是重置密码,重置后的密码还是明文存放。

针对以上两种情况,强烈建议用户在初始注册新用户时,第一次采用简单的密码,例如123456,或者按照网站的要求来设置密码。注册成功后,注销登 录,然后选择找回密码/重置密码,这时会有系统邮件发到注册邮箱,请查看系统邮件的提示来重置密码,此时可以安照下面补充的第二点来设置密码。

值得注意的是,如果网站直接发送明文密码到邮箱,请对这个网站持有戒心,不要使用常用的密码作为该网站的登录密码,最好用户名也不要采用常用的用户名。

2. 如何根据不同的网站构建不同的密码

在补充的第一点中,提及了不同网站可能对密码的存放方式不同,那么我们就按照最糟糕的情况来构建安全密码: 为每个网站设置一个唯一的密码

对于一般网站(不含有个人信息的网站),应采用常用密码+网站识别码的方式, 网站识别码可以是网站域名,也可以是网站注册地点等等,这个可以根据个人情况来设置。这样做的好处是: 1.只要记住一个密码,就可以记住多个网站的密码; 2.可以保证每个网站的密码都唯一而不重复; 3. 就算某个网站泄漏了你的密码,也不至于城门失火,殃及鱼池而泄漏其他网站的密码。

对于含有个人信息的网站(如购物网站),那么可以采用独立密码+网站识别码的形式,难度在于这个独立密码的记忆。

对于邮箱等及其重要的网站来说,一定要单独设置密码,密码的强度一定要高,请参考如何构造安全的口令/密码 一文的介绍。多个邮箱网站密码强烈不建议仅仅设置为常用邮箱密码+网站识别码的方式,而要独立设置的方式。

以上设置只能尽可能的保证帐号密码的安全,但是也做不到绝对的安全。安全理论也是木桶理论,往往瓶颈才是最容易被攻破的,因此良好的习惯才是保证安全的关键。

建议阅读编程随想博客有关信息安全的文章。

 Blog