【如何设置一个好记难猜的密码】
家里领导的iPhone丢失之后我们遭遇了钓鱼邮件。虽然没有造成什么损失,但是却也是惊出一身冷汗,尤其是意识到一直以为非常安全的非越狱版iPhone也能被暴力破解,造成个人信息落入骗子之手。
惊吓之余,重新审视了一下自己各种设备的安全措施,包括密码策略。这里我打算分几次介绍一下我自己的关于设置密码的经验谈。
密码的重要性不言而喻,它是我们诸多帐号的安全屏障。但是它也常常遭到大小黑客的各种攻击,其中最常见的就是字典攻击和暴力破解。字典攻击是用最常见的密码来进行尝试,而暴力破解则通过枚举密码的所有可能性来进行破解。例如iPhone的锁屏简单密码是4位数字,暴力破解就只需要从0000到9999尝试一万次,必然能命中。而现代计算机的性能是如此之高,且不说每秒可以进行数十万亿次计算的超级计算机,普通家用计算机尝试一万次所需要的时间也远远小于1秒钟。
那么为啥iPhone胆敢用4位数字的简单密码呢?因为苹果可以设置连续输错密码9次就自毁——抹掉所有数据——的命令,也就是说你保护住自己隐私的概率是万分之九,这已经是相当可靠了。但是,不幸的是,iOS本身具有漏洞,于是就有黑客造出了这样的专门的破解设备,用线缆接上iPhone后,利用这个漏洞就可以绕开自毁装置不停地重试,这样就能很快试出锁屏密码。所以iPhone的简单密码不安全,起不到保护iPhone中个人数据和隐私的作用。我家领导的iPhone估计就已经遭遇了这种悲惨经历了。
必须要指出是,暴力破解是无法避免的。但是暴力破解是有代价的,这个代价就是其不断尝试直到命中所需要花费的时间,如果这个时间是个天文数字,那么我们就可以觉得这个密码可以抵御暴力破解。这其中的数学就不说了,只需要记住一点,密码每多一位,暴力破解所需要的时间就多一个数量级。所以说,必须要把iPhone的锁屏密码从简单的4位数字更改为和公司域帐号一样的复杂密码。
所以我们常见的一种比较安全的密码设置规则就是这样的:
- 有长度要求:至少8位
- 有复杂度要求:且必须有大写英文字母、小写英文字母、数字和字符构成,每样至少一个。
- 有时间的要求:每3个月必须更改一次密码
- 不得重复的要求:系统会记住12次历史密码,曾经用过的密码不得重复使用
但是,设置一个复杂的密码却很难记住,相信很多人都曾经因为更改密码而犯愁。那么,如何给自己设置一个强壮的难以猜测的可以抵御暴力破解的但是又好记的密码呢?让我来讲讲自己的心得。
首先,密码不能太显而易见,不能用自己的生日、家里领导的名字、孩子或宠物的名字等等太容易猜出的词。因此又要好记,怎么办呢?比较好的方法是挑选一个6-10位字符的词组。例如很喜欢Nike的同学可以选择它的广告语:
Just do it!
然后稍作变形。把字母替换成数字或字符。常用的变形有:
- a改成@
- 小写字母o改成数字0
- 小写字母b改成数字6
- 小写字母l改成数字1
- 大写字母S改成字符$
- 空格去掉或者改成下划线符号_
- 词组的每个单词首字母改成大写
等等等等。
比如Password就可以改成[email protected]$$w0rd,(当然,这个[email protected]$$w0rd太常见,不推荐用哦)
那么Just do it! 就可以变形成为Ju$td0it! 或者Ju$t_D0_It!这下看上去很复杂了,但是却也不难记住。
其实,Ju$td0it!有9个字符组成,大写小写数字字符齐全,已经是一个不错的密码了。但是通常我们会被要求3个月更改一次密码,每次都费劲脑筋改一个完全不同的密码太伤脑筋,在没有暴露前面复杂密码的情况下,一个折中的方法是以前面的那个密码作为主关键词,在这个主关键词的基础上添加上前缀或者后缀。
一种常用的后缀或前缀是加上年份或者月份。这样既增加了密码长度,也增加了复杂度。以写作本文时的2015年4月举例:
只加2位数字月份的后缀:Ju$td0it!04
2位数字年份加2位数字月份做后缀:Ju$td0it!1504
3位字母月份加2位数字年份做前缀:Apr15Ju$td0it!
农历年生肖拼音(羊年)加1位数字月份做后缀:Ju$td0it!Yang4
当然前后缀的种类可以很多,觉得日期不好的,还有很多其他选择,比如:
- 用天干的拼音:甲Jia、乙Yi、丙Bing、丁Ding、戊Wu、己Ji、庚Geng、辛Xin、壬Ren、癸Kui
- 用元素周期表的拼音:钾Jia、镁Mei、铝Lv、钙Gai、磷Lin
- 用五行日月:金Jin木Mu水Shui火Huo土Tu日Ri月Yue
- 用色彩:赤Chi橙Cheng黄Huang绿Lv青Qing蓝Lan紫Zi
好了,新技能Get了没有!
警告!本文中提到的密码短语可能会被加入字典攻击的范围中,请不要再使用。
未完待续,明日预告:关于密码那些事之二