正文
伪装,向网络插入一条伪造消息,比如,你舅有难,赶紧汇钱;
内容修改,修改合法的消息内容,包括插入、删除、转换和修改等,比如,将“你欠我一百块”,修改为“你欠我一百万”;
顺序修改,修改网络消息的顺序,包括插入、删除和重新排序,比如,将“我怕太太”改为“太太怕我”;
重放攻击,对消息的延时和重放,比如,用旧口令来充当新口令,或形象地说,用前朝的剑来斩本朝的官;
赖账,否认自己在网上的所作所为,比如,删除上网痕迹,否认自己攻击过某个系统等;
泄密,把不该上网的机要消息透露出去;
等等。
不过,所有这些坏事,都有一个共同的特点,那就是充分利用了电子文档的“无痕修改”特性。而在传统世界中,所谓的“消息认证”根本就不是大问题,比如,你几乎不可能修改一张手写借条;即使是篡改了,在法庭上也很容易被笔迹专家揭穿。
安全专家这些“老干部”们,是如何解决消息认证这个“新问题”的呢?如果你不怕专业术语唬人的话,那就请记住:MAC码、MDC码、鉴别码、非对称密码、对称密码、散列函数、数字签名、零知识证明、多方协议、挑战应答……;反正,该清单还可以继续长下去,直到你满意为止。
这些术语所涉及的技术,要多高大上,就有多高大上;相关理论要多难,就有多难,而且还遗留了好多世界级的未解难题呢。不过,如果我把这层窗户纸捅破的话,其实,它们的核心之一,却是一个连白痴都知道的常识,名叫“鸽子洞原理”,其大意是说:假如你有N+1个萝卜,却只挖了N个坑,那么,无论你有多大本事,要想把这些萝卜种完,则某个坑里至少要种两个或更多的萝卜。当然,我也想提醒你,信息安全专家也不是傻瓜,他们都难以解决的问题,决不是儿戏;至于其中到底有哪些技巧,到底如何利用“鸽子洞原理”等等;嘿嘿,欲知详情,欢迎报考我的密码学博士研究生,这也算顺便做个招生广告吧。
除了“身份认证”和“消息认证”这两种主要认证外,在网络空间中,“行为认证”也必不可少,比如,哪些行为是合法的,哪些是非法的;哪些操作是善意的,哪些是恶意的;哪些是危险的,哪些是安全的等等,都应该有精确的判断。每个人都有自己的上网习惯,如果某天这个习惯突然变化了,那么,这些异常行动的背后,很可能就有问题。一般来说,行为认证的技术核心,主要是统计,所以,大数据分析在这方面将发挥重要作用。
对了,还有一种认证,我差点给忘了;它叫“权限认证”。其目的就是,要给不同级别的上网者,分配合适的权力:既不会因权力太小,而影响工作;又不会因权力过大,而越权行事,造成安全隐患。
比如,谁有权阅读相关内容,谁有权拷贝,谁有权存取,谁有权修改等等,都必须清清楚楚、明明白白。总之,精度越细越好,每个用户的权限,都好像是为他量身订制的一样。其实,这种认证是由若干技术综合而成的。用行话来说,至少包括了统一授权、集中管理和集中审计等。
网络空间中的“认证”,绝不仅限于前面介绍过的“身份认证”、“消息认证”、“行为认证”和“权限认证”,还有许多其它更复杂、更抽象的“认证”,也还有许多需要巨额投资的认证,比如,即将进入你日常生活的“CA数字证书体系”等。而且,这些众多“认证”,在技术上千差万别,在理论完全不同,在表现形式方面,更是眼花缭乱。但是,如果认真研读“玉女”的简历,不被她那“72万变”所迷惑的话,那么,你便可以牢牢抓住牛鼻子。因为,“玉女”的职业限定了,她只做两件事:贴标签、验证标签!
所谓“贴标签”,就是赋予被贴对象某种特性。如果再细分的话,又可分为两种。其一,先确认该对象具有这种特性后,再发给其证书,比如,你的健康证、护照、饭票等,都属于这种“标签”;其二,先赋予你某个“标签”所规定的权力,然后,你再依权行事,比如,邀请函、户口本等。
所谓“验证标签”,其实就是将你出示的“标签”,与验证者预先拥有的“档案”进行比较:如果一致,则验证通过;否则,验证失败。
好了,抓住“玉女”的职业本质后,再回过头来看看前面的所谓“身份认证”、“消息认证”、“行为认证”和“权限认证”等,这些乱麻,就突然理清了!
确实,网络虚拟空间中的认证,除了贴标签,就是在验证标签。你看,你的小脸蛋,是不是已被当作贴在身体上的标签了吗;只要验证了脸蛋的真实性(与数据库中的脸蛋一致),那么,你的身份也就不会假了。口令数字(俗称“密码”),也被当作了标签,事先贴在账号上;如果你通过了验证,即,说出了正确的口令(与后台的存档相同),那么,账号就归你使用了。所谓的“散列函数”,其实也是一个贴在被认证消息上的“标签”,如果验证了标签的真实性(即,被认证消息的散列与预存值重合),那么,消息的真实性也就没问题了。你的权限也是一个“标签”,它标明了哪些事你能干,哪些不能干等。总之,网络空间中的一切“认证”,无论它怎么千奇百怪,却永远是万变不离其宗:贴标签、验证标签!
网络空间中的“标签”可以分为四大类:有形载体上贴的有形标签、无形载体上贴的有形标签、有形载体上贴的无形标签、无形载体上贴的无形标签。如果你嫌这些绕口令太长的话,没关系,可以暂时不管它,后面你将突然顿悟。不过,请你千万别小看这一个个小标签,别看它们其貌不扬,若想建设网络秩序,还真少不了它们呢,因为,“标签”辨明了敌友;当然,“标签”也产生了所有矛盾。
网络虚拟世界的“贴标签和验证标签”运动,现在才刚刚开始,并将永远进行下去,除非网络文明停止或倒退。
虚拟空间中的某些认证技术,确实比较抽象;但是,它们的原理和思路,其实并不新鲜,甚至还很老套。所以,为了更好地理解认证的本质,也算是课间休息吧,我们介绍四个经典故事,分别对应于现实生活中的消息认证、身份认证、行为认证和权限认证。
先讲“消息认证”的故事。
从前,有座山,山里有个省,省里有个掌柜在讲故事。讲的什么呢?从前有座山,山的西边有个省,名叫山西省;省里有个县,名为平遥县;县里有个票号,称为“日升昌”。我们的故事,就发生在这家“中国第一票号”里。那时还是道光三年,虽然“清朝华尔街”商铺林立,票号通达;但是,一个很棘手的问题,摆在这些“老银行家”面前:如何异地验证“老支票”的身份,即,验证“老支票”消息的真假,防止坏人冒领银子?伙计,早在200多年前的1823年,那时可没有什么水印呀、防伪呀、短信确认呀等先进技术哟,而只有一张糙纸,用来写字和盖章。而外地票号的掌柜,只能根据这张糙纸,来判断持票人是否是骗子,是否该给他支付银子,以及支付多少银子等!聪明的日升昌老板,采用了一整套巧妙的认证技术,解决了这个难题;从而使山西,逐渐变成了一个强大的票号商团;更为大清“金融”,开辟了一条安全、便捷的流通之路。
日升昌认证体系,采用了步步为营的策略:
首先,接收汇款的票号,根据客官要求,单独写一封信给承兑票号。信中要标明取款人的年龄及相貌特征等,以便兑付时识别取款人。比如,“老朽独眼龙、大胖墩儿、李麻子将来取款”。这一关,显然就是所谓的“生理特征认证”嘛,约等于现在的虹膜认证。
其次,采用笔迹认证法。由于模仿笔迹很困难,故汇款票号由专人书写汇票,其笔迹还要事先通报给各分号,并让各分号都能熟悉辨认。如果写票人变了,则必须将新笔迹,立即通知各分号,以便辨认。
以上两步只是“形式认证”而已,傻瓜都能想到。但是,接下来的“内容认证”(即,消息认证)就很绝了,因为,即使是笔迹被模仿,取款人被克隆,如果没掌握如下技巧,比如,写出诸如“票号在5月15日汇银300两”等字样,那么,冒领者仍然会露馅。