这幅文字云图像显示的是人们最常用的密码,其中字体越大其使用率越高。本图初发表于“信息周刊”下“BYTE”的《密码管理前五名》一文,作者Dazzlepod。
斗胆让我猜猜:你上网用的所有密码——网上银行、邮箱、网购、微博人人网的登陆密码——在你脑子里是乱七八糟。你也非常清楚,访问不同的网站,必须选择一串不一样的、排序复杂的字母、数字和符号做密码,然后把它背下来。(先人的智慧教导我们密码守则第一条:绝对绝对不能把密码写下来。)可是你不会真这么做,因为你知道自己的脑子没有这种能力。于是你选择用熟悉的单词来注册每一个网站:比如自家狗狗、你家那条街的名字,再加几个临时想到的排列,比如“123”作为结尾。也有可能你真的遵守了那条守则,也因此在登陆银行账号的时候常常被锁起来,或不停回忆各种荒谬的安全问题的答案。(“你小时候最喜欢的运动是什么?”我现在就被问到这一题,可是我小时候最喜欢做的“运动”就是想方设法翘掉体育课。iTunes商店还有一个问题是问客户他们“最不喜欢的车子”是什么。)最可怕的是,最近几年,你还会被逼着设一个字母混合大小写的密码,可有哪一个正常人能记得起如此多重组合的排列呢?至少那个人肯定不会是你。
如果你觉得自己设的密码太差劲了,我有个理由能让你不那么愧疚:这样的烂密码是普遍存在的。上个月,PIN密码泄露事件的分析报告显示,大概有十分之一的人会选择“1234”做密码;而最近雅虎网安全漏洞事件也让我们发现,有上千名用户设置的密码要么是“password(密码)”“welcome(欢迎)”“123456”要么就是“ninja(忍者)”。人们总是会设一些烂到不行的密码,甚至拿它去保护一些比自己的存款还重要的东西。军事安全专家们大都知道,在冷战高峰时期,美国核弹的“解锁密码”竟然是00000000。五年前《新闻之夜》亦曾揭露:1997年以前,英国部分核弹的钥匙锁,其本质就是一个自行车的车锁。至于怎么选择让弹头在空中还是地面爆炸,只要用宜家的内六角扳手(Allen key)就可以搞定。而这些根本就不是密码。遇到敌方攻击的时候,快速反击比其他什么都重要。
我们的密码处在危险之中,而这也成了邪恶的黑客和“挂羊头”的安全测试人员一场又一场“军备比赛”。可是你只要跟那些内行人聊聊,就知道先人的智慧其实也是值得商榷的。举个反例:把密码记下来可能才是一个好主意。有些老板会命令员工90天更换一次密码,这可能并不是在提高安全性,反而是给自己惹麻烦。同样的事情也发生在一些银行的密码设置规范上:密码不能超过12个字符,不允许使用空格键,等等。而在所有规定之中隐藏的真相是:密码——作为保护人们在互联网上的私人资料的途径,最后却在根本上被违背了它的本职。我曾向一个经验丰富的网络安全研究员比尔·切斯维克(Bill Cheswick)指教,问他有没有办法能一劳永逸地解决这一问题。他想了一会儿,提议道:“就把你的电脑烧掉,然后滚海边玩儿去。”尽管你的脑子可能已经乱得不行,但还是有既安全又不会失去理智的方法。只不过这种方法跟以前别人教你的不大一样。#p#
密码破解手法形式多样,然而当中最重要的反而不是靠邪门歪道,而是靠蛮力强行攻击。举一个例子:有一个黑客,他潜入一家公司的服务器,准备偷取一份文件,文件上记有上百万条密令。这份文件(但愿)是被加密的,因此他不可能直接登入这个账号。假设文件里的密令是“hello”(当然没那么简单),在文件中它就会被加密为类似“$1$r6T8SUB9$Qxe41FJyF/3gkPIuvKOQ90”的字符。他不可能随随便便就把这行乱码解开,因为他知道文件是被“单向加密”的。而他能做的,仅是将所有上百万种可能性加入同一个加密算法进行测试,直到其中一个密码刚好中奖,得出的结果与那一连串的乱码相符合。只有这样他才知道自己找到了那个密码。(有一种附加的加密技术被称作“salting”,它可以阻挡这种攻击,但现在尚不清楚有多少公司真的使用了这项技术。)
这时,密码长度所能产生的你无法想象的作用。假设有一个黑客的电脑每秒钟能猜测1000种五位纯字母、完全随机、全部小写的密码组合,比如“fpqzy”,那最多需要3小时45分就能破解成功。现在只要把密码设成20位,破解的时间自然就会增加一点:要花650万兆年的时间。
现在就有一个人为预测的问题。毕竟没有人能想出一个字母与数字完全随机的排列组合。相反,人们会遵循一些自然规则,比如用一些已经存在的单词,然后将字母O用数字0代替,或者在姓氏后面跟上一个年份。黑客们也知道这一点,所以他们的破解软件会综合这些规则进行猜测,从而有效减少时间,快速猜中目标。每次,在一百万条密码中都能出现一个新的漏洞,这就像2010年的Gawker事件和今年的雅虎事件【注1】一样,而每次黑客们都能借此有效学到人们设置密码的新知识,也使得他们破解密码更加轻而易举。你可能以为自己够聪明,能想到一个绝佳的方法设置密码,其实黑客们早已熟稔于胸。
所以说,最不可能破解的密码就是一长串完全随机的字母、数字、空格和符号,可真要这么设你就背不下来了。不过,既然长度这么很重要,你会发现一个惊人的事实:一长串无规则的英文单词,且全用小写——比方说“awoken wheels angling ostrich(吵醒的、轮胎、钓鱼、鸵鸟)”就比已经很短小、还遵循银行那些烦人规定的密码(像M@nch3st3r)要安全得多。而且这样的密码还更好记,因为你在记忆中已经建立了一个画面:有一群吵闹的轮胎吵醒了一只在河边钓鱼的鸵鸟,不是吗?正如热门的宅向漫画《XKCD》去年发布的一期漫画就很清楚地指明了这一论点:“经过了20年的努力,我们成功地让每一个人练就一副‘密码设得是人都记不下来、是电脑都猜得出来’的好功夫。”
而且其实事实比这更糟。因为密码太难记了,于是人们发明了“密码追回”,当中,安全问题就简单得连黑客都答得出来。这就是为什么2008年莎拉·佩林【注2】的个人邮箱会被黑客黑掉:入侵者把她的邮政编号和高中校名全给猜对了。账户追回的另一相关缺陷还导致《Wired》杂志【注3】作者马特·霍南(Mat Honan)在今年八月遭到了黑客的恶性袭击。几名黑客成功占用了他的谷歌账号,并以他的名义在Twitter上发表了种族歧视的言论,并远程清空了他手提电脑、手机以及iPad里的所有资料。后来其中一名黑客通过网络留言给霍南,告诉他,这一切之所以会发生,是因为亚马逊网站的客户服务热线很乐意提供了他信用卡账号的后四位,而在苹果的客户服务台,刚好就可以用这四位数重设他的苹果iCloud账户密码。
有一些网站会让你使用密码短语(passphrase),就是刚才说的“钓鱼鸵鸟”那种。可是大多网站都不会这么做。在这样的情况下,很多安全专家都认为,人们应该无视银行的规定把密码写下来。他们的逻辑其实很简单:因为你觉得记在纸上很不靠谱,你就会想个折中的办法,最后你就选择最不安全的密码。(同样的道理,有些人会建议、甚至要求你定期更改密码,可其实你要记的密码越多,就越会被逼着去选择简单一点的密码。)“我有68个不同的密码,”微软安全专家杰斯珀·约翰逊(Jesper Johansson)几年前在一次会议上说。“要是他们不准我写下来,你猜我会怎么做?我肯定都会把所有账号都设上同样的密码。”密码专家布鲁斯·施内尔(Bruce Schneier)也同样提倡人们把密码写下来。他指出,绝大多数人其实都能够妥善保管几张小纸片的安全。你的配偶或你的室友是否可信,这种安全问题你绝对有能力推测出来。可换做是俄国黑客集团是否会威胁到你的银行账户,你就很难预测。
我把这类见解告诉尼尔·艾肯(Neil Aitken),他是英国支付委员会的发言人(该委员会负责监督跨行转账系统与连接网络及其他事务)。他听了之后倒是显得十分镇定。他解释说,问题的关键在于欺诈法强迫银行客户必须执行一些义务。如果你只顾着保护自己的密码,此时如果有人盗走你账户里的金额,法律就会认定你“犯下严重疏失”,这样你的钱就很难再找回来。“你可以有一个世界上最难破译的密码,可如果你告诉了别人,那你就把这密码给毁了。”借此委员会强烈建议英国客户千万别把密码写下或把密码告诉给其他人。
两方都各持己见。这就是安全问题的麻烦之处:你必须得权衡利弊。越方便意味着越不安全;对远程攻击防得越紧就让狡猾的室友越有机会趁虚而入。你是愿意冒稍微大(虽然这很难量化)的危险在金钱上,还是让自己处于长年的密码攻击之中?这种问题有够复杂,就好像是在问你:“你最不喜欢的车子是什么?”
比尔·切斯维克(Bill Cheswick,朋友都称他为切斯Ches)和很多人一样,坚信我们这个社会正在沦入密码的混沌之中。与其他人不同的是,他觉得自己得为此负一部分责任。1994年,作为AT&T的虚拟究部——贝尔实验室(Bell Labs)的成员之一,他参与合作撰写了一本书。书名耐人寻味:“防火墙与网络安全:击退狡猾的黑客”。(他曾提出“代理服务器”这一概念,这也因此成为他在互联网圈子里被称为“半人半神”的原因之一。)这本书为现代网络安全奠定了基础。可是现在,他说道,当我们大家在曼哈顿咖啡馆见面上网的时候,密码就成了“一根倒刺!谁能通晓那么多事情?”这个话题总能让切斯维克活跃起来,虽然他平时就是个滔滔不绝热情洋溢的家伙,可这次他还是会让对桌的人们从自己的笔记本里抬起头看他。“还有那么多规定!你还得混合符号啊,大小写啊,数字啊……”
切斯把这些规定称作是“蝾螈眼”,因为他们就像魔药的配方一样。偶尔在发表演讲的时候他太得意忘形了,也会把这些规定称作是“密码界的法西斯”。“我有25个不同的账号,难道我就要去记25个不同的‘蝾螈眼’密码?这不科学啊!”
除此之外,他还提到,把精力都集中在密码的复杂化,这也变得越来越无关紧要,因为现在更加严峻的威胁是键盘记录器——一个秘密安装在你电脑里的软件,可以通过网络监视你所按下的键盘按键。“不管你的密码设得有多高明,只要我在监视着你的键盘,你就死定了,”他说道。如果想降低风险,你可以改用Mac,或将不安全的Windows XP系统升级为Windows 7,并装上反病毒软件。但真正最保险的方法是永远不要访问那些携带恶意软件的网站。而且,“如果你的孙儿跑来玩你电脑,或者你读初中的儿子输入一个不安全的网址,那你就完了。”同样危险的还有“网络钓鱼”攻击,很多媒体都炒作过,就是把一封邮件或网址包装得很和谐,比如把它伪装成你银行的登陆网页,以此骗你输入密码。(反“钓鱼”最基本的方法就是要检查你浏览器的地址栏;将鼠标悬停在链接上,确保该链接的真实性;而且千万别在邮件的回复中填入密码发回去。)
也许有一天,我们不用在操心这些事情,也许以后会有革新发展能够彻底将密码代替。也许可以利用触屏技术,借此检测你与电脑互动间最细微的差别——你手指间的距离,你点击与拖动触屏时的速度。此外,新泽西罗格斯大学的技术人员已经做出一个指环的样本,你将它戴在手指上,它就会爆出微小的电流,通过用户的皮肤发射到屏幕上,以确认用户的身份。指纹识别系统已被嵌入在部分手提电脑中,但由于该技术仍存在太多问题,目前尚未得到重视,但它还是可以被改善的。可你别急着松口气。在可预知的未来里,“密码仍不会消失”,切斯维克说道。“尽管我很希望密码能够消失,可它们毕竟还是太方便了。”
与此同时,他还建议我做一件事,尽管为了完成这篇文章的我已经被自己所做的研究给吓傻了。他要我装入一个被称作是“密码钱包”的软件,比如 LastPass 或 1Password。这些软件能将你所访问的每一个网站生成一组高度随机的密码,并用一个主密码将它们保存起来。我装上了 LastPass 之后,通过它选了一个非常长的序列,包含英文单词和数字。比方说现在我已经完全不知道、以后也不会知道我的邮箱密码是什么,但这不要紧,因为 LastPass 随时都能把密码告诉我。
这当然不是十全十美的解决方法。但 LastPass 几乎在很多问题层面上都是安全的。因为它只在用户自己的电脑上进行加密与解密,而软件公司也不会知道我的主密码,这就意味着要是我忘了主密码,就没人能帮得了我了。(也没有需要设置安全问题的“密码追回”。)而且——没错——我把它写下来了,以加密的形式记在一张小纸片上,还很小心地把它藏了起来。希望我能很快把密码记下来。毕竟没有什么是绝对安全的,更别说绝对安全又绝对方便的方法更不可能存在,但我觉得这是个很折中可行的办法。但愿我不会忘了自己把纸条藏在哪儿了。
【注1】Gawker是著名的明星追踪网站。Gawker与雅虎网都曾爆出存在安全漏洞。
【注2】Sarah Palin,长期活跃于美国政界,2008年由共和党提名总统候选人麦凯恩选为副总统人选,搭档参选总统大选。
【注3】Wired是一本在全球范围内有很有名的科技杂志。