澎湃Logo
下载客户端

登录

  • +1

手机指纹解锁和密码解锁,哪个更安全?|臧亚丽

2019-09-05 07:55
来源:澎湃新闻·澎湃号·湃客
字号

原创: 臧亚丽 我是科学家iScientist

当你看到指纹手机又被破解的视频,你是否感到恐慌或是认为只是危言耸听?当你假期旅行、周游列国的时候,是否考虑过海关系统指纹验证的必要性?被列入黑名单的嫌疑人,破坏自己的指纹就可以通过系统检测吗?你听说过“指纹丢失”吗……你的指纹还好吗?中国科学院自动化研究所副研究员臧亚丽带来演讲《嘿!你的指纹还好吗?》。

以下为臧亚丽演讲实录:

我是臧亚丽,来自中国科学院自动化研究所。

大家都比较关注指纹的安全性,所以我的分享主要围绕安全性展开。

我本科毕业于西安交通大学,然后中国科学院大学硕博连读,后来在中科院自动化所做副研究员。

在我整个学习和工作的过程中,一共涉及到以下几个指纹的课题——

形变指纹的匹配。在采集的时候,手指可能会变形,比如会不自觉地拧一下,会影响识别的效率。

现场指纹识别。它主要应用在公安上,是关于怎样能将指纹有效地从背景里找出来,然后跟正常的指纹做匹配。

假指纹甄别。主要研究各种材料的假手指跟真正的皮肤采集的图像有什么区别。

小面积的指纹识别。我们有一个横向的项目,跟公司合作来做指纹识别的芯片。

更安全:密码,还是指纹?

大家觉得,指纹和密码,哪一个更安全?指纹现在应用得这么广泛,是因为密码不安全吗?

一个八位数字组成的随机密码,一共会有10^8(1亿)种方案。也就是说,随便生成一个八位数字的密码,另外一个人随机猜到的可能性是一亿分之一。如果夹杂大小写字母和符号,就会有94^8(6千万亿)种。

这就是说,当选择的范围越宽时,密码的不确定性就越高,相对安全性也就会越高。

信息学和密码学的领域里有一个“熵”的概念,用来评测密码的安全性。密码熵里边有两个关键变量L和N,表示在N个符号的范围内,去随机选择长度为L的密码,得到的值是52.7。

而指纹只要采集的位置、面积、形变角度等存在不一致,收到的信息就会不一样。正因如此,很难定量判断指纹的唯一性和不确定性有多高。全世界六十亿个人,每个人十个手指,一共有六百亿个手指。而指纹又是唯一的,算下来是六百亿分之一——这样说起来好像是绝对安全的,但其实不是这样的。

很难定量判断指纹的唯一性和不确定性有多高|Pixabay

目前商用的指纹算法(比如手机解锁),在误识率为五万分之一的情况下,拒识率小于百分之三。也就是说,在别人的手指试五万次,会有一次能够非法通过认证的前提下,自己的手指每试一百次,有三次会被拒绝掉。

这是一个博弈的过程:误识率和拒识率,一个高,另外一个就会低。目前的数值,是从用户反馈中得出的。

这个性能,对小面积而言是1:小N——系统里可能会注册不止一两个手指;对大面积而言(刑侦公安或者大数据库)而言是1:大N。所以,指纹系统的安全性(指纹识别出错的概率)大致是五万分之一,大面积的可能会达到十万分之一或者二十万分之一,但目前的技术也就到此为止了。

指纹系统和密码系统的安全性完全不是一个量级的,但是也不能就此认为后者就是安全的。

为什么?

大家想想:我们设置的密码,真的是随机的吗?即便是随机的密码(而且要所有的系统都不一样),记得住吗?

所以有两个概念,一个叫“预测熵”,一个叫“最小熵”,它们是用来衡量考虑了各种实际情况以后可能达到的安全性的测度。

预测熵,就是任意的一个8位字符。在有组合要求(有大小写、有符号、不能是一个英文单词、不能是连续的数字等等)的情况下,数值可以达到30,也就十亿分之一的概率会被猜中。

十亿分之一,听起来还可以;但是,我的密码绝对是自己惯用的几个组合,因此也存在较坏情况下的判断,而这就与最小熵(即认为他人达到最优状态,如对主体密码设置习惯有一定了解)有关。

一般来说,一个密码系统的最小熵达到是10(即在随机一千分之一的概率被猜中),我们才能认为它是安全的。在系统本身不做限制或者安全增强技术的情况下,密码要有15位才能保证一千分之一。15位的密码,大家有吗?反正我没设过这么长的密码。所以密码的安全性其实并不高的,容易被人破解。

通过上述讨论,我们可以得到一个大概的结论:指纹系统的安全性往往是由它系统本身(硬件、算法)决定的,而密码系统几乎完全依赖于用户的使用习惯。因此,对于特别认真谨慎而且记忆力特别好的人,密码可能更安全;但对于比较马虎的一般人,设置密码有点随便,可能还是指纹更安全。

指纹的优势有哪些?

所以,就安全性而言,指纹并没有比密码有本质上、颠覆性的突破。不是说用了指纹之后,密码所有不安全的问题都解决了。

那么,为什么指纹应用如此广泛?

因为方便。

指纹到底有什么优势呢?

首先是方便、快捷。我不用像钥匙一样带在身上,也不用特意记住,甚至都不用每次输入——一摸就开了。

还有固有特征。固有特征的意思是,指纹是长在我身上的,所以认证通过了我的指纹就代表认证通过了我这个人,而不是密码、卡或者证件。因此,也就减少了盗用密码以及盗刷卡或者证件的可能性,所以这是它比密码要好一些的地方。当然也不是绝对的,比如还有假指纹可以伪造。

另外还有稳定性。指纹终生不变,但不代表完全不变。已经有很多人做过研究,隔5年、10年再去采同一个人的同一根手指,相似度会有一些下降。此外,体型胖瘦、手的干湿程度以及磨损程度(如受伤、划痕、脱皮)也会造成影响,但都是在量变的水平,没有到质变。

电影《烈日灼心》里,主人公每次抽完烟都碾搓烟头烧自己的手指,希望能把指纹烧得无法辨认。那么,这种方法有用吗?在结局中他被捕了,所以我们可以一步到位地得出结论说没用。

为什么没用?

尽管破坏了指纹,必然会影响到识别,但是能不能匹配成功,取决于多个因素。

首先取决于破坏的程度。在这张图中,指尖部分可能破坏得不能用于识别了,但是指腹只要采集得够多,还是能够识别出。

但是,如果破坏的程度真的很高呢?比如整个表层皮肤都破坏掉,甚至连底下都没有了。那可能就识别不出来了。但是在公安刑侦领域,并不会把指纹作为嫌疑人唯一的特征,还会有别的识别方法。电影中,邓超饰演的辛小丰之所以会被关注,就是因为他搓烟头的动作被看到了。

不同场景下的规则有什么区别?

在正常的指纹应用环境里,指纹识别根据不同的运用环境也会有不同的规则。

我简单归纳为“非你不可,偏你不行”——这不是专业用词,是我自己编的。

什么叫“非你不可”?这是我的手机,就只有我能通过,其他人一律都不行,所以它只关注我固定的一根手指。只要不吻合,就不让通过。

“偏你不行”指的是,不允许海关刑侦黑名单上的人通过,而其他人都可以。

具体该怎么实现呢?

首先,会设置阈值来判断是不是同一个人,或者同一根手指。阈值的取值在不同的应用场景下可能不一样,在“非你不可”这边可以高一点,哪怕多拒绝真的用户几次,也不能让假的用户过去。但是在“偏你不行”这边,阈值就可以取得低,可以相似用户留下来再看一看。

还会关注是否存在异常现象。如果犯罪分子想通过破坏指纹来逃脱,就反而会受到关注。

“指纹丢失”有哪些情况?

“指纹丢失”也不是一个专业的概念,但是我在很多地方都见到过这种说法。

什么叫指纹丢失?

主动破坏自己的指纹,肯定是丢失的一种,因为如果破坏程度大就会永久性失去指纹(不可能再恢复到原来的纹理)。

疾病和外伤和磨损所致的表面纹路受损更为常见的,但这种情况下,经过一段时间就可以恢复到和原来一致。

还有一种叫指纹副本丢失。是指得到的指纹图像,或者制作出来的假指纹丢失。

还有指纹模板丢失。指纹特征存在系统里,就有可能会被可能黑客获取。

我重点对后面两种稍微阐述一下。

01

指纹副本丢失

首先是关于假指纹。

左边两幅图片是我在网上找的例子,是通过硅胶或者导电材料制作假指纹。自己做自己的假手指,没什么难度,因为配合度非常高;甚至可以做多做两个,找其中最清楚的那个识别。

那么,假指纹涉及到哪些技术呢?它分软件和硬件两个层面。

软件层面(算法)包括动态特征和静态特征。首先,手指摁下去的过程就是一个逐渐形变的过程,这就跟材料的弹性和质地有关;而且要考虑出汗。其实在软件层面,可能纹理更有效,因为它是一个静态的特征,不需要不停地采很多帧。但是不同的材料摁下去以后形成纹路,虽然可能肉眼看不出来,但计算机能识别出明显的区别。

硬件层面(设备)会集成一个小模块。尽管现在测生理信号的模块都很成熟了,但考虑到体积和成本,应用场景十分有限。

为什么我们手机里面没有假指纹的甄别技术呢?一方面,就是因为增加相关硬件就要增加体积——手机再厚一层估计你也不愿意。另一方面,在自己不愿意、不知情的情况下,别人拿我的手指去做假指纹,还要能打开手机,需要挺高的技术含量,而且是非常专业的领域才能实现的。所以大家也不用特别担心。

02

指纹模板丢失

接下来是关于稳定性。

指纹终身不变,到底是优势还是缺陷?这个问题其实是所有的生物特征可能都会面对的。刚刚说过,指纹会丢失,不管是副本丢失还是模板丢失,别人有了我的指纹,但是我的指纹永远不会变,不能像密码一样更改重置。因此,一旦指纹被别人知道,我其它的系统都不能再用这个指纹了,因为它不安全了。

其实现在也有指纹模板保护技术,而且这个工作已经做了很多年了。但是因为它会有一点问题,就是会损失指纹的有效信息——因为它相当于对指纹做了一次加密,然后用加密后的信息再去做认证,所以必然会造成一定的信息损失,进而导致精度上的下降。虽然这项技术目前还没有成熟到可以随便应用的程度,但在不断进步。

保护指纹:势在必行,还是危言耸听?

我简单总结一下前文:指纹相比密码其实没有更安全,但确实更方便。但同时,它带来两个问题,一个是假指纹,一个是指纹丢失。也许大家特别关注指纹丢失,但我认为不需要在上面太费心思,因为别人拿着你指纹来攻破系统,不是一般人能做到的。

曾有新闻报道说,一段胶带就能破解手机的指纹解锁:把透明胶带贴在手机指纹识别键上,只要试三次就能解锁。其实,这在理论上是可行的。但是。你真的不会发现自己的手指或者手机上贴了一个胶带吗?所以,其实它不是随便就可以发生的。

还有人说,不要随便拍照比Y,不然指纹会丢失。我想说,虽然现在通过远距离拍照实现手机指纹的采集和识别可以做到,但需要在非常苛刻的条件下:人要有一定配合度,相机的分辨率要高,图像成像的角度要合适,周围的环境光线要好……有很多的要求。所以不是说上去拍一下,你的指纹信息我就有了。

所以,对于像我这样的普通人,享受简单生活的简单快乐就可以了。谢谢大家!

演讲嘉宾臧亚丽:《嘿!你的指纹还好吗?》

作者:臧亚丽

编辑:麦芽杨、凝音

在“我是科学家iScientist”后台回复“演讲”,或者点击菜单栏“演讲”,即可看到更多科学家演讲。

阅读原文

    本文为澎湃号作者或机构在澎湃新闻上传并发布,仅代表该作者或机构观点,不代表澎湃新闻的观点或立场,澎湃新闻仅提供信息发布平台。申请澎湃号请用电脑访问http://renzheng.thepaper.cn。

    +1
    收藏
    我要举报

            扫码下载澎湃新闻客户端

            沪ICP备14003370号

            沪公网安备31010602000299号

            互联网新闻信息服务许可证:31120170006

            增值电信业务经营许可证:沪B2-2017116

            © 2014-2024 上海东方报业有限公司

            反馈