引子
你是否有过这样的经历,一夜间QQ号被盗,自己的亲戚朋友都被问候了“某种”消息,有的甚至上当受骗已经把钱转过去了。QQ盗号是黑产(互联网黑色产业链)中非常典型的一种,有兴趣的可以谷歌一下。作为人类,不太可能记得住太复杂的密码,这已经成为一种矛盾。然而,聪明的前辈早已想好了一些比较靠谱的解决办法,本篇来隆重介绍一下。
基本概念
首先明确一些基本概念和逻辑:
密码强度
(维基百科)
指一个密码对抗猜测或是暴力破解的有效程度。一般来说,指一个未授权的访问者得到正确密码的平均尝试次数。密码的强度和其长度、复杂度及不可预测度有关。强密码可以降低安全漏洞的整体风险,但并不能降低采取其他安全措施的需要。
强密码
(维基百科)
一个强密码通常长度足够长,排列随机,这样就需要花很多时间才能够破解。下面是强密码的一些例子(因为已经公开,所以安全性已有问题):
- t3MEIfreryeT45410A ——不是字典的单词,既有数字也有字母
- w2M1gD1cxJhs5UH4pQh1EgjOU9yWYRkk ——同上
- Convert_100£ to Euros! ——足够长,并且有扩展符号增加强度
- *ot$fet÷×’Fr54⅛9&%u ——含键盘上没有的字符
- 9fad37a6aab5912dfa273521d11e0175fa0e8c95 ——随机字串
- aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbccdeertttteferwrwerewrwererewreew ——很长的字串几乎不可能破解
- hellomicrosoftwikiwikipediaandadminadmintestactioneditsection ——同上
- RBDeT9hqRfS9gw9bEXmRhBrkkgCs2NMfpzWfQXfN3MPZW25wSsHWEsbexVpYtsWs ——同上
- ru0 ej03m06vm03rm3vu04u3d9 g3fu/32u03h3w.6qul4 ——同上,对于两者之间使用不同输入法的人极难以破解
上面列出的强密码的例子的共同特点是相对较长,使用大小写字母、数字和符号的组合。密码越长,使用的符号种类越多,就越难破解。值得注意的是,有些系统不支持“#”、“@”和“!”作为密码中的字符,因为这些字符可能在有些键盘很难找到。在这种情况下,增加其它的数字或字母可以达到同样的安全效果。
一个10位长的随机密码,比如“BpR#e!ai@$”,虽然强度远弱于上面列出的密码,但由于常用键一共为95个,因此有95^10种组合,是不可能在短时间内通过全部列举来破译的。
强密码应该包括14个字符或更长(至少8个字符或更长),由包括大小写字母、数字和符号在内的组合。
弱密码
(维基百科)
弱密码的定义可以参考下面的维基百科中的解释:
弱密码是易于猜测的密码,主要有以下几种:
- 顺序或重复的字符:“12345678”、“111111”、“abcdefg”、“asdf”、“qwer”键盘上的相邻字母;
- 使用数字或符号的仅外观类似替换,例如使用数字“1”、“0”替换英文字母“i”、“O”,字符“@”替换字母“a”等;
- 登录名的一部分:密码为登录名的一部分或完全和登录名相同;
- 常用的单词:如自己和熟人的名字及其缩写,常用的单词及其缩写,宠物的名字等;
- 常用数字:比如自己或熟人的生日、证件编号等,以及这些数字与名字、称号等字母的简单组合。
下面是一些常见的弱密码:
- admin ——太容易猜出
- 123 ——同上
- abcde ——同上
- abc123 ——同上
- 123456 ——由于文化因素极其常用
- 1234 ——同上
- 888888 ——同上
- 1234567890 ——同上
- susan ——常见人名
- BarackObama ——高知名度人物
- monkey ——常见动物名且正好六位
- password ——经常被使用,极易猜出
- p@$$//0rd ——简单的字母替换,易被黑客软件破译
- rover ——宠物的常用名称,也是一个单词
- 12/3/75 ——日期
- nbusr123 ——可能是用户名,如果是这样的话很容易被猜出
- asdf ——常用键盘的键排列
- qwerty ——常用键盘的键排列
- aaaaa ——重复的字母,极易被破解
- Taiwan ——地名
上面的列表只是列举了很少一部分弱密码。
很多用户不更换预设密码,而大部分计算机系统的预设密码可以在网上找到,极易被破解。如果用户使用个人信息(例如学号、朋友的名字、熟人的生日、电话号码或驾驶执照号码等)作为密码,那么这个密码便会很容易被破解,因为如今很多个人的信息都可以在网络上找到。
太短的密码,虽然容易输入,但是也很容易被黑客攻破。
有一个网址可以检查你的密码强弱,点击这里,用破解密码需要的时间来衡量。
密码软件
市面上已经有了形形色色的密码安全软件,这些软件大都有生成强密码,并自动存储,有的软件甚至能够自动填充网页或填充其他软件。
LastPass
界面截图
点评:LastPass是老牌的密码管理软件,也一直秉承低价策略,广受欢迎,但历史上的泄露事件也有若干次,现在高级账户12美元/年。
1Password
软件界面
点评:1Password最早是mac、iPhone上的一款密码同步工具,可以在局域网内同步密码,近几年也做了win的客户端,价格比LastPass略贵。
KeePass
点评:KeePass是一款完全开源的密码管理软件,它实际上是一个加密软件,将所有的密码加密为某种特殊格式的文件,具体如何处理这种文件则取决于你,如果将这个文件上传到网盘,那么Keepass就变成了与LastPass相似的软件。
花密
花密采取了不同的思路,即不用服务器来储存密码,而是采用一定的算法将容易记忆的密码转化为强密码。
软件界面
点评:花密是一种非常好的开源密码解决方案,如果你对服务器不太信任,可以信任这个软件。(甚至,如果你对这个软件不信任的话,自己有一些编程基础,也可以自己编写一个完全自己用的轮子)
个人密码策略
完美的策略
每个账号的密码都是完全不同的强密码,而且这些密码没有保存在云服务器(例如LastPass服务器)上,也没有打印出来(纸质文件)。然而这个完美策略基本不可能实现,因为人脑基本不可能记得住10个以上强密码。
妥协的策略1——用服务器来储存密码
使用LastPass等软件,然后将主密码记住记牢,网页上可以自动填写,LastPass甚至有自动填写与自动生成强密码的功能,还是挺好用的。
缺点:服务器一旦被攻破,那么就只能听天由命了。
妥协的策略2——用花密生成密码
使用花密生成密码,需要记住一个主密码,同时,每次需要复制粘贴生成的密码。
缺点:如果电脑上有木马(或者国产流氓软件),监测剪切板,那么安全性就大打折扣了。
妥协的策略3——组合使用,随意组合
例如,用花密生成一个密码作为LastPass的主密码,又例如,把花密主密码保存在KeePass中。
总之,确保自己硬盘上的干净,远离盗版,远离xx网站,才是王道!
安全很重要
密码安全还是相当有必要的,要不然太容易被破解了