3.2.4 生物认证

3.2.4 生物认证

前面讨论了利用口令与信物进行身份认证的方法,由于口令可能会不经意地泄露,而信物又可能丢失或者被人伪造,所以在对安全性要求较高的情况下,这两种方法都不太恰当。为此,人们把注意力集中到了利用人类特征进行认证的方法上。

人类的特征可以分为两种:一种是人的生物特征;另一种是人的行为特征。使用生物特征作为身份证明与人类历史一样悠久。通过声音、外表来识别一个人,通过易容术来冒充一个人,这在古代就被广泛使用,这一点在金庸先生的小说中也有类似的描述。利用人类的生物特征进行身份识别的历史已经很长了,特别是在侦破犯罪案件中。法国在1870年前的40多年中,一直使用着一种称作Bertillon的系统,它通过测量人体各部分的尺寸来识别不同的罪犯,如前臂长度、各手指长度、身高、头的宽度、脚的长度等。

生物认证就是通过生物学特征和行为特征来辨识每一个人的自动化方法。常用的特征有指纹、声音、眼睛、脸部、击键或者以上特征的综合。给定用户一个账号,系统管理员要采用一系列的措施,在一个可接受的错误程度内识别该用户。只要该用户访问系统,生物认证机制就要验证用户的身份。只要与声明用户身份关联的已知数据进行比较,就可以确定该用户是得到认证还是被拒绝。人的特征具有很高的个体性,世界上几乎没有任何两个人的特征是完全相同的,所以这种方法的安全性极高,几乎不能伪造,但一般来讲,采用这种方法费用都很昂贵。

1.指纹

今天,我们都知道利用人的指纹进行身份认证的方法。人的指纹是与生俱来的,并且一般都不会改变。世界上几乎没有任何两个人的指纹是完全一样的,所以利用人的指纹就能唯一地认证出每个不同的人。

对指纹可进行光学扫描,但是所需要的照相机体积庞大。有一种电容技术可利用手指螺纹上电荷的差异来检测哪部分手指接触芯片,哪部分手指没有接触芯片。数据被转换为一个图,山脊由顶点表示,对应于相应山脊的顶点是相连的。每个定点为一个数字,它近似于定点对应山脊的长度。在此,确定一个匹配就等价于图的匹配问题。这个问题与传统的图同构问题类似,但是由于测定中的不准确性,从指纹产生的图可能有不同数目的边和顶点,因此该匹配算法是一种近似算法。

2.声音

不同频率的声波会使我们听到不同的声音。人类的说话声是靠口腔内声带的振动发出的,正常人的声带是与生俱来的,不同的人的声带、声带附近的肌肉组织等是不同的。所以,不同的人发出声音的频率成分、各频率成分的多少以及它们的持续时间都是不同的,根据这种差异就可以识别出不同的人。

通过声音认证,也称为说话者验证或者说话者识别,涉及识别一个人的声音特征或者语言信息验证。前者使用统计技术来测试这个假设:说话人的身份和他所声明的身份是一样的。系统首先用固定的通行证短语或者可以结合的因素进行训练。认证时,说话人或者重复一遍通行证短语,或者复述一个由已知因素构成的词(或者一系列单词)。而语言信息验证说话的内容是指系统提问一系列的问题,如“你的小学全名是什么?”和“你的出生地是哪里?”等,接着验证回答和数据库里的相应记录是否一致。主要的区别在于说话者验证技术是与说话者相关的,而语言信息验证技术与说话人无关,只与说话的内容相关。

3.眼睛

通过眼部特征来认证,使用的是眼睛的视网膜和虹膜。视网膜认证是一种比较可靠的认证方法。研究人员发现,人眼视网膜中的血管分布模式具有很高的个体性,人们可以利用这一性质对不同的人进行认证。视网膜扫描依赖于眼睛背面的血管模式的唯一性,它要求有穿透性很强的激光束照在视网膜上。这种方法一般只用于需要最高级别的安全设备之上。每个人的虹膜模式都不相同,因此一种验证方法就是用统计方法来比较虹膜,并判断区别是否随机。第二种方法和图像相关,用统计测试方法来判断两张图像是否匹配。

4.脸部

脸部识别由几个步骤组成。首先是脸部定位。如果用户把他的脸放在一个事先确定好的位置上(比如把下巴放在一个支架上),这个问题就变得容易些了。然而,脸部特征比如头发和眼镜会使识别变得更加困难。解决这些问题的技术包括使用神经网络和模板。然后把所得图像与数据库中相关的图像进行比较。相关性会受到当前图像与参考图像的光线、扰乱、噪声、对脸部的观察等因素的差异的影响,相关性机制必须得到“训练”。有几种不同的相关性方法已被使用,它们分别获得了不同程度的成功。还有一种方法注重于脸部特征,如鼻子和下巴之间的距离、它们之间的连线的角度等。

5.行为特征

人的下意识动作也会留下一定的特征,不同的人对同一个动作会留下不同的特征,这方面最常见的例子是手写签名。手写签名作为一种身份认证的方法也有很长时间的历史了。商人之间签订合同、政府间签署协议、某组织下发文件等活动都需要有相应负责人的签字,以表明签字人对文件的认可。频繁进行签名的人对这一动作已经司空见惯,所以签名已经成了一种条件反射的动作,它已经不受手臂肌肉的人为控制,从而成为一种下意识的动作。这种动作的结果会留下许多特征,如书写时的用力程度、笔记的特点等,根据这些特征就能够认证出签名人的身份。

动态击键需要使用一种基于击键间隔、击键压力、击键持续时间、击键位置的“签名”。这种签名是唯一的,和手写签名一样。击键识别可以是动态的,也可以是静态的。静态识别一次性完成,通常在认证时需要输入一个固定的或者一致的字符串。认证一旦完成,攻击者可以在不被察觉的情况下获取这个连接(或者控制终端)。动态识别则贯穿整个会话过程,因此以上的攻击是不可行的。然而,必须选择合理的签名,使得用户会话期间的某些变化不会导致认证的失败。例如,击键间隔也许变化很大,动态识别机制必须考虑到这个问题。从某个用户的击键行为得到的统计信息用于整个统计测试过程(依据技术的不同,也许会丢弃一些无效数据),统计测试说明数据中可接受的变化量。

一些研究人员结合上述的几种技术来提高生物认证的准确性。结合多种特征的认证可以获得比使用单一特征认证更高的准确率。

6.警告

由于生物认证测定一个用户的私人特征,因此人们往往相信攻击者无法模仿授权用户来访问一个使用生物测定技术认证的系统。这是基于两个假设的,第一个假设是生物测定设备在它所运用的环境中是准确的。例如,如果指纹扫描在监督下进行,使用别人的手指来代替自己的认证当然能被发现。但是如果没有监督,这种欺骗就没法发现,未授权的用户就可以侵入系统。第二个假设是从生物测定设备到计算机分析过程的传输是防篡改的。否则,攻击者可以记录一个合法的认证,并在以后重放。

生物认证还存在一些让人怀疑之处,邪恶的攻击者可能从真人身上割下某个部位,并使用它来通过系统的认证。在某个阴谋中,恐怖分子就是这样做的——他们割下某个FBI队员的手指,并使用它进入了一个警戒区,谋杀了其他的FBI成员。在电影《第六日》中,主人公同样割下了敌人的手指,并使用它进入了敌人的据点。生物测定设备制造商声称,这是不可能做到的,因为所得到的指纹将很快失去足够的生物特征,因此无法以这种方式使用。一些厂商还制造了指纹阅读器,这种指纹阅读器要求脉搏的再现,或者要求其他一些生物特征。然而,是否能够使用所窃取的身体部分特征进行身份认证的真实与否并不要紧。在非洲的金矿中,如果通过某个人的指纹进行认证就可以进入储藏钻石的地方,那么这个人的手指肯定是保不住的。

生物测定系统已经开始在机场使用,其目的是识别出在逃的罪犯。为了试图找到正在通缉的恐怖分子、罪犯,也会使用生物测定系统。然而,生物测定系统的使用是用于识别而不是认证。这些系统试图从经过摄像头的许多人中间识别出先前已经登记在案的那些人,这些人的照片或图像已经事先存储在数据库中了。这很像使用指纹来探测犯罪现场,以从相应的指纹数据库中识别出要找的那个人。从另一方面来说,认证会使用一些账户信息(用来指示我们声称自己是谁),并且只试图与我们所提供的另外一些东西(口令、PIN或生物特征)相匹配,且与账户中保存的信息相对照。如果生物测定系统仅仅用于识别而不是用于认证,比如使用人的面部特征来进行识别,就会导致许多问题。

对于指纹识别系统的其他一些攻击也已经揭示出来,其中一种就是“黏手指”攻击。2002年3月,日本某研究生获取了一位重要人士的指纹,并根据压痕制作了假手指。他用大约10美元购买普通的材料,制造出了类似糖果黏虫的纹理,然后他使用“黏手指”攻破了不同的商用指纹读卡器。这种攻击需要接触到个人的手指,而另一种类似的攻击则演示了该学生使用的是取自各种表面的模糊不清的指纹,这种攻击也成功了。这些攻击不仅攻破了大多数人认为是坚不可摧的系统,而且在攻击之后还可以销毁证据。

现在网络上可以购买到类似的小产品,声称是公司员工的最爱,在你迟到的时候,可以让同事用这个在网络上可以便宜购得的、与你指纹相同的“黏手指”,在公司打卡机上帮你“打卡”,以防止月末清算迟到次数扣工资或奖金,但是这样的小产品对个人安全来说实在是隐患无穷。