[转] http://www.leiphone.com/news/201702/XvMk0m6XxxooLzoI.html

雷锋网(公众号:雷锋网)按:我们在很早之前就有指纹传感和采集的需求,但直到20世纪59年代计算机发明后才实现了指纹识别的可能性。到70年代,美国FBI开启了一个项目,从而开启了用指纹识别来进行一些身份认证的工作。从此,业界对指纹的传感和如何攻破指纹系统的研究延续到现在。

指纹识别遭遇的攻击手段层出不穷,假指纹就是其中之一。

为了防御假指纹带来的安全风险,去年有国内厂商专门推出了活体指纹识别技术,这种技术号称可以通过指纹、手指皮肤颜色以及心率信号等生物特征来验证用户的真实身份,以避免假指纹的攻击。然而雷锋网了解到,市面上所谓内置“活体指纹识别”技术的终端遭假指纹破解的事件也屡见不鲜,这一技术似乎也不可靠。

指纹的采集技术和传感器原理是指纹识别系统最基础的部分,所以,要认清指纹识别的安全问题必然绕不过这两部分。那么活体指纹识别遭破解背后究竟有什么秘密呢?

为此,雷锋网邀请了迈瑞微电子创始人李扬渊为大家分享《指纹传感器原理和假指纹攻防技术》。

嘉宾介绍

李扬渊,苏州迈瑞微电子创始人;指纹识别领域唯一贯通算法、传感器、IC设计的从业者;密码芯片领域最早的开发者之一;基于李扬渊所发明的“C-Q-T”电路,仅成立3周年的苏州迈瑞微电子已成为中国大陆电容式指纹传感器出货量第二名的供应商。

以下内容整理自本期公开课:

我们在很早之前就有指纹传感和采集的需求,但直到20世纪50年代计算机发明后才实现了指纹识别的可能性。到70年代,美国FBI开启了一个项目,从而开启了用指纹识别来进行一些身份认证的工作。从此,业界对指纹的传感和如何攻破指纹系统的研究延续到现在。

“活体指纹识别”靠谱吗?

去年2月的MWC上,国内某公司号称发布了全球首个活体指纹检测技术,2017年该公司得到了CES全球创新金奖,在这期间有三个著名的厂商应用了其活体指纹识别,并对外宣称可以避免假指纹的攻击。

MWC2016: XX科技发布全球首个活体指纹检测技术,2016.02

黑科技 XX天机X XXX支持活体指纹识别 ,2016.10

XX“真”旗舰 除了8890芯片还有活体指纹 ,2016.12

XX科技荣获2017年CES全球创新金奖 活体指纹检测识别方案引领生物识别科技创新 ,2017.01

XX M2017活体指纹体验 假指纹无处遁形 ,2017.01

然而,前不久有网友曝出一段视频,视频演示了假指纹是否能破解活体指纹识别的测试,结果如下:

1.未注册的裸手制和理论结果一样不能解锁;

2.使用隐形指纹膜可以解锁;

3.传统指纹膜和理论结果一样不能解锁。

总结来说,活体检测的可靠性随技术方法的提升而提高,现在被破解的是最低级的早已被淘汰的技术。

假指纹“黑产”

指纹识别最早应用在公安、海关等领域,所以假指纹的研究起初是一种间谍级别的行为。用硅胶等材料制作假指纹来欺骗传感器是从指纹识别的应用开始就存在的一种方式。

假指纹黑产一直是指纹识别技术的副产品, “隐形指纹膜”不是新技术,只是因为以前没有需求才没有作为产品推出。而在中国,严格来讲还没有形成黑产业,一般只用作欺骗考勤机。

活体指纹是什么?

活体指纹识别是一个很宽泛的名词,他本身不是一个很严格的技术定义。去年,我在雷锋网发布了一篇文章《iPhone SE发布了,并没有“活体指纹识别什么事”》,这篇文章里面引用了中国知识产权局的定义,定义的内容包括哪些东西可以归纳到活体检测的门类,具体有以下几点:

第一类是生理特征信号,例如体温、皮肤表面的电阻特性、排汗过程、表情的变化、眼部动作、瞳孔大小变化等;

第二类是光谱学信息,该项技术主要针对打印图像形成的规律的纸质纹理特性,利用频谱特征进行检测;

第三类是通过人机互动的形式,通过检测预期的运动来对生物特征的活体特性进行验证;

第四类是多模态的生物特征识别,在认证系统中采用两种以上的生物特征识别技术方式,提高伪造样本的难度。

这是一套检测规则,如果做了其中一种就可以叫活体。但需要注意的是,活体并不代表最新的先进技术,它可能是已经不具备安全性的过时技术。

破解的原理

上文提到的活体指纹被破解的例子中,其手机用的技术其实就是苹果拥有却没有应用的专利技术(专利US 8180120 B2的技术):

电容采集指纹成像;

红外光反射率检测(先发射,再检测它的反射光,反射光的强度在一定范围内的时候就认为其反射率和预期的差不多)。

但是,该方案智能防御传统黑色材料的假指纹,并不能防住半透明材料的假指纹,这种假指纹具备以下两个特性:

导电性,电容成像的可能性;

半透明,可以让红外光透过假指纹由真手指反射,所以能欺骗检测系统。

指纹传感器

指纹是空间的特征,它并不是具体的物理量,所以指纹的采集是一种很开放的技术领域。

传感器可以分为物理传感器、化学传感器、生物传感器,指纹传感器是第一种,除了磁传感器外,光、电、力、声、热这五类物理传感器都可以采集指纹。

光学

1.基于全反射的效应,这是最经典的一种:

当光源在全反射角以上,就是光源侧着照进去时,光线会侧着反射出去,在反射光的角度用镜头拍摄,就能拍到很亮的背景,如果指纹在棱镜表面光源照亮的区域接触,那么指纹凸出的部分(脊线)和棱镜接触,凹下的部分(谷线)不会接触,接触部分因为全反射效应会有一个受抑制的情形(光线从脊线接触的地方透射出去了),反射光的对应区域会变弱, 这时候会收到一个脊线暗、谷线亮的图像;

当光源在全反射角一下(上图不能实现这种情况,需要把棱镜的直角削平,也就是变成梯形),光线从正下方射入,这时候光线大不会从棱镜上透射出去,但是手指与棱镜接触的区域,光线会发生所有角度的散射,这时候就会出现脊线部分为亮,谷线为暗,这也可以形成指纹图像。

这个例子解释的是指纹传感器的物理效应是调制效应,一组物理量在空间上有分布,而指纹只是通过某种方法影响了这种分布,用传感器采集这个物理量的空间分布来获得指纹的图像,这是所有指纹传感器所遵循的原理,具体差异只是选择的物理量不同。

2.基于指内漫射光效应

这是由NEC公司原创的技术,它的原理如下:

当我们用手电筒对着手掌照射,整个手掌会亮起来,这是光线在手的肌肉皮肤传播,这种传播包含散射、折射,如果从指纹的方向射出来,会产生亮暗的差别,我们就可以从中提取出来;

与指静脉采集使用同样的原理不同的波长;

3.近距离面光源照射指纹,谷线阴影成像

最近iPhone 8要上光学指纹识别的消息被炒得沸沸扬扬,这实际上只是在炒冷饭。这种技术的原理甚至是工艺,早在1997年就发明了,之所以现在还能拿出来炒,是因为这个专利过期了。

这种方法的原理就是,当有一个面型的光源离手指比较近的时候,脊线就会挡住谷线。如果远距离的光线照进去,必须要有角度,某些角度看得见,某些角度看不见;但是近距离对于手指的任意一个点都相当于从差异很大的方向光线汇聚过来进行照明,所以有充分的条件使得脊线把谷线挡住。

但是这种图像很弱,对于指纹浅的人来说,就很难识别。

4.空气排斥成像

在玻璃板上放置哑光柔性薄膜,指纹压迫薄膜时把脊线下方空气排出,在另一面形成不同的反射率。可以说,在所有光学指纹识别传感器里面,这种图像是最清晰的,不过目前只有台湾一家公司在做小批量的生产。

电学

1.直接电容式

这是最早的电学传感器,是在1980年由西门子提出,也就是把指纹看做电极,对面放上一整片电极,凸起的地方距离小电容大,而凹下的地方电容更小,测出这部分电容就能得到指纹的分布。不过,在使用中,这种方法不耐用。

按照FBI的标准,指纹的像素密度是50微米一个像素,作为电容,那么电极之间的距离要远小于50微米,以5微米为例,随便一根牙签就能戳坏。所以早期的电容传感器很容易损坏,要提高指纹到电极之间的距离,就需要有中间介质进行保护,也就是后面的电场式。

2.电场式

这种方法在1997年首次提出,传感电极距离指纹距离远大于传感点击尺寸时,就不能堪称电容,而必须以电场密度差(指纹的凸起和凹陷)为测量目标,因为电极是平的,所这个密度差体现的就是指纹的图像,苹果收购的AuthenTec就是采用的是这种原理。

3.生物射频、微波

这两种都是无关原理的命名。

力学

力学一般有两种原理,但都不结实,为什么这么说呢?

要传递细微力的差异,必然不结实,但反过来,如果要在厚厚的钢板上按压,力就没办法传递。目前解决了这个矛盾的只有苹果,这也是为什么苹果能推出3D Touch的原因。

1.压阻效应

通过压力改变电阻大小;

2.压容效应

通过压力改变电容大小。

声学

也就是采用压电互换效应:

压电换能器件又称为超声波换能器,把压力和电压进行互换;

超声波传感器的命名是因为其使用了超声波换能器,但并不像常见的超声波传感器那样向空气中发射超声波再接收回波;

流传的各种超声波指纹传感器的超能力,都基于对其定义的误解,有点类似生物射频、微波这样的假技术名词。

但是超声波指纹识别传感器并不是传统意义上的超声波传感器,它是一个固体类的振动阻抗传感器。例如小米5S的指纹识别传感器,它会自己发生振动,手贴在指纹识别的区域就会产生阻抗,会减弱振动,接触的地方(脊线)振动减弱会大一些,这写振动的变化会影响到下面的传感器,然后转换为电信号最后形成图像。

热学

采用热传导效应:

热学传感器最早退出了市场,因为当热传导达到平衡,指纹传感器就失去能力;所以热学指纹传感器曾经以滑动式存在过,却一直难以实现按压式。

这也在一定程度上证明了一点,试图超越数学、物理来实现一项技术的能力,完全是缘木求鱼。

总结来说,声学和热学一样因为物理上的缺陷而被淘汰,力学也因为上述原因不可用,电学是主流,光学是很复杂,取决于是否适合产品。

假指纹攻击原理

假指纹的定义

系统层面,假指纹攻击有三个等级:

rank1,已知指纹实体复制的假指纹;

rank2,根据指纹特征还原出的假指纹;

rank3,不基于具体指纹特征制作的“万能指纹”。

需要注意的是,在传感段不关心算法怎么判断,而是传感器怎么判断是否是生物体的指纹。

传感器防假一般与判定是否生物体等价:

基于生物指纹不重复的假定;

“活体”不是一种可传感的物理量;

上文提到,指纹传感器都是物理传感器,而任何物俩量都可以被仿冒,区别只是成本高低。

低级假指纹

平面打印指纹图案可欺骗光学传感器:

打印设备非常普及,不可管控;

东亚地区有按指印的文化习俗,通过指印来获取电子化指纹数据只需要一台扫描仪;

把日常留在物体表面的指纹进行显影和拍照,是公安部门应用了近百年的技术,相当普及;

类似的,由于定制美瞳作为一种商业活动的存在,从照片中抠图并基于之定制美瞳来攻击虹膜识别系统,也是一种低成本攻击。

中级假指纹

立体指纹可欺骗电、力、声、热传感器,难度比低级假指纹要高:

立体指纹可以由3D打印、激光雕刻获得,这样的设备相对稀缺,操作技能要求高;

立体指纹还可由生物指纹经2次倒膜获得,这相当于要求指纹主人“攻击”自己;

当传感器类型不同,假指纹所用的材料需要有所差别,电学传感器需要(弱)导电材料,力学声学使用一般材料,热学则要求人体体温。

高级假指纹

在化学特性或细微结构特性上非常接近真指纹的假指纹:

由于历史上在指纹识别领域并未普及应用过化学传感方法,所以如果开发出化学型指纹传感器,一段时间内还没有对应的造假方法;

细微结构,如汗腺、皮脂腺、皮肤层次等接近真指纹,需要非常高的制造技术。

如何防御假指纹

安全价值

安全技术成本不是安全技术价值的度量标准,破解成本才是:

防守方必须防御所有可能的攻击,这形成了安全技术的成本;

攻击方只要寻找到一个突破口,所有破解方法中成本最低者决定了攻击成本,攻击成本低安全环境就差;

使攻击者因为成本太高而放弃攻击是安全技术唯一价值;

多传感技术

各种生理特征都需要转换为具体物理量,导致从物理破解角度,这些检测办法都没什么用:

参考中级假指纹,立体指纹通吃各种传感技术,即使5类传感技术全部用上也增加不了安全性;

如把电和光结合的例子,被某宝破解的结局说明,结合弱安全和中安全,结果还是中安全,没有任何提高;

传统指纹膜成本0.05rmb,隐形指纹膜0.016rmb,所以起不到阻止攻击的作用。

另外,有个原则是安全性和安全成本的比例要在10以上。

红外多光谱技术

通过红外反射谱扫描可以判定真假手指:

红外光谱可以用于分析物质,符合人体光谱的可判定为真手指;

这种技术虽然靠谱,但是成本高(一套5000元左右),只能在海关一类场合应用。

红外断层扫描技术

红外断层扫描(OCT)通过红外干涉激光对皮下结构进行um级断层成像,这是一种更高级的做法:

能获取3D皮肤组织结构,包括汗孔、汗腺、微细血管,神经末梢;

成本极高(光传感部分就是6万美元,整套系统30万美元以上),速度极慢。

这种技术的安全性和安全成本的比例在100以上。

保护好指纹信息

平面假指纹到立体假指纹之间的技术鸿沟才是主要防御假指纹的壁垒:

不要自造立体指纹,更绝不可以交给第三方使用,以免被复制;

手机丢失要迅速锁定,你的手机可能自带指纹印,但辗转到技术高手手中并制造出立体假指纹来尚需时间。

总结

我们没必要在假指纹攻破指纹识别系统这件事上太过担忧,关键是自己不要参与制作假指纹的制造,保护好自己的指纹。

精彩问答

Q:看到有些活体指纹识别方案是把多个传感器集成在一起,对此您怎么看?这是目前业界普遍的做法?

A:把难度不同的集成到一起,难度等于原本最大那个。全球充分研究40多年的攻防,不止针对指纹,而是针对各类物理传感器。要提高防御能力必须用先进技术,不可能靠几毛钱打到好效果。

实际上当有人提出用光学来加强电传感器的放假能力时,我就已经很雷了。公认的强技术居然可以靠公认的弱技术来提高,这得多业余啊。业界的普遍看法是,不必操心,守住3d立体指纹的制作难度即可,千万别自己制作复制指纹送人!

Q:刚听您讲的内容,现在好像没有很好的防御假指纹攻击的办法啊,现在上游厂商研究的方向是什么?

A:多光谱,oct都是目前能确实防得住的技术,但成本等限制了应用场合。从日常生活应用来看,要注意几点:

1、坚决淘汰光学指纹传感器,毕竟靠打印指纹图案就能欺骗的东西

2、攻防相长,要持续提高防御技术,这分几个角度

2.1、把验证做得更复杂,但导致不方便

2.2结合更丰富的安全手段,切实提高攻击者的成本和风险

3、绝对安全是假象,相对安全才是唯一可量化的

生物识别其实是不太靠谱的安全方式,但考虑到经典信息安全领域只能做到设备到设备,没有认证人的办法,也就聊胜于无了。

Q:那活体指纹识别方案对设备安全到底有没有意义?

A:活体指纹识别是一个大类,在海关用多光谱来验活就有意义,但用一些没有效果的做法套上活体的名词,就涉嫌欺诈。指纹识别到目前为止其实还是一个模式识别技术,还没有正式进入信息安全技术的范畴,还有不少需要研究的。

我举个最简单的例子,安全性的量化,目前就做不到,目前业界有一些企业,把指纹传感器越做越小。我就想,你们干脆缩小成一个点,当开关用好了,消费者毕竟还指望这玩意有点聊胜于无的安全性,总不能啥也没有吧。

Q:指纹识别做到显示屏上还有什么难点?现在做到了什么水平?

A:这有三个思路:

第一,on,就是做在tp里

第二,in,做在screen里

第三,under,做在screen下面

先说第一类,tp层,做指纹的话密度会很高,会导致光学差异,其次,穿透整块2.5D玻璃超出了物理极限,所以整个设计要重来。如果单说做个透明指纹面板,倒不是什么难度,难在各方面都达到工业量产。

再说第二类,技术上实现用光学方案问题不大,问题在于,screen损失近一半的亮度和分辨率,价格还大大提高,你愿意买单吗?而且这种光学方案的图像很弱,功耗又高,也就是说指纹唤醒等功能就别指望了。

第三类,under,这个最有欺骗性,但说句不好听的,就凭3D touch都做不到量产的水平,under screen真的可行么?结合工业可行性,还是刻意忽视,就是领先工业设计者和技术骗子的区别,一线之隔,远隔天边

under一重介质,良率就一塌糊涂了,还要连续穿透那么多层那么厚。

雷锋网按:上一期公开课提到了指纹的传感方法,传感器把真实的指纹采集为图像,算法来识别指纹的一致性,而万能指纹是目前还没有开始研究的一种攻击方法。

在雷锋网的上一期硬创公开课中,迈瑞微电子创始人李扬渊为大家分享了《指纹传感器原理和假指纹攻防技术》的内容,其中,就提到了在系统层面,假指纹攻击有三个等级,这三个等级对指纹识别的技术需求都不一样:

rank1,已知指纹实体复制的假指纹;

rank2,根据指纹特征还原出的假指纹;

rank3,不基于具体指纹特征制作的“万能指纹”。

所以,如果听过上一期课程,你应该已经有所了解,黑客要攻击一部手机和设备,除了复制一个和你一模一样的指纹之外,他们会不会通过窃取指纹数据逆推出你的指纹来,甚至直接制作“万能钥匙”一样的“万能指纹”来破解你的设备?

面对这样的安全隐患,我们需要认清以下几个问题,才好做到未雨绸缪:指纹识别的原理是什么?指纹识别的攻击方式有哪些?万能指纹真的存在吗?雷锋网(公众号:雷锋网)再次邀请到了李扬渊,为大家继续解答上述问题。

模式识别

指纹识别是模式识别的一种,模式识别是给一种物体每个个体一些描述,这些描述的总和就是特征空间,特征空间的维度越丰富,辨别个体就越容易。例如:男,中等个头,瘦小,面容猥琐,但是仅凭这些信息我们很难定位到某一个人。如果在上例增加一些特征,如下巴有一颗痣,左眼角有伤疤,就能对个体描述的更加准确。

在特征空间建立的时候,对个体抽象成一个特征序列的描述的时候,会有一定的不确定性,例如有的人会认为他长得很丑,但也有的人则认为帅。为了把特征空间的描述特性变成有意义的分类和辨别,就需要算法来实现了。

模式分类是把特征空间划分为若干区域,从而实现对个体的分类;

落户打分可以看作一种最为简单的分类,把多个特征维度合并到一个维度;

更为普遍的大于2种类别的分类,并不会首先形成一个连续的分值序列。

指纹不是典型的模式识别

为什么这么说呢?主要有两个原因:

1.特征空间不明确

如果存在准确的坐标系,那么指纹特征就可以用特征空间来描述:

•细节点,无论端点还是叉点,其特征主要是几何位置;

•方向场、频率场等特征都基于坐标系;

但不幸的是,指纹匹配的目的是找到坐标变换:

•指纹匹配分数的定义是,穷尽任意坐标变换下,两个指纹实现最大程度匹配的坐标变换下的匹配分数即为指纹的匹配分数;

•指纹相对于手指的位置通常不予采集,是导致这个属性的原因。

2.模式分类不明确

从1823年起,就有关于指纹分类学的论述,上图显示的是珀金杰描述的9类指纹。因为指纹的基本环形有很大的差异,所以我们没法为指纹定做一个比较靠谱的坐标系,如果世界只存在一种指纹,那么指纹识别就会变得很简单。

自动指纹识别技术的目标是:

辨别某指纹是否是特定的已注册的指纹;

辨别某指纹是否是已注册的多个指纹中的一个,以及是哪一个。

所以,经典的指纹分类学对指纹识别技术没有什么助力。

从数学本质上,将指纹识别看作似然性匹配更为贴切。很多人都学过滑动窗相关法,这是最基本的似然性匹配,它只考虑两个维度的几何平移。但是指纹识别要考虑更多的因素:

•旋转,皮肤的蠕变(非刚性形变);

•皮肤的变化,例如脱皮、起皱;

•传感器带来的噪声和信号衰落。

因此,这些因素导致指纹识别成为充满挑战的领域:

•不能直接从经典大领域获得知识支持;

•涉及面广,又缺乏理论,偏偏应用呼声极高;

•作为信息源头的指纹传感器,其设计方法的开放性,使整个指纹识别领域的研发工作具备更大的开放性。

其它生物识别技术

就目前而言,除指纹识别之外,生物识别还有面部识别和虹膜识别两种,但是后两者的特点是有明确的几何坐标系:

•五官有明确的结构关系,虹膜也有明确的结构和方向;

•人脸和虹膜都可以用特征空间来表述,虹膜甚至有经典的编码;

•采用高清摄像头,在传感器自身的稳定性上更好。

而指纹识别区别于这两种生物识别的最大因素就是它们不是一个类别,所以指纹识别的研究人员也很少有共同点。

指纹识别是信息安全技术吗?

在周一的公开课上,我们提到了活体指纹识别被破解的案例,但这种想法并不合理,安全一定是系统级的,并以攻击成本为价值衡量。

以单一技术单一环节实现安全,是以无知迎合无知,好比安装金库级的大门,却开着窗;

攻防相长,持续进步,落后的技术价值为零,所以安全领域不能炒冷饭;

层层设卡环环嵌套是基本做法;不同技术的防御面不同,结合起来看结果。

各种安全技术的可靠性和攻击成本必须得到量化:

从系统整合和系统攻击成本量化估计两方面都有此要求;

决不能等被攻破后才得知某技术的破解成本。

目前的指纹识别并没有发展成为一个安全技术,一直以来是个模式识别的研究,当它推向市场得到普及应用之后才真正具备了向安全技术的演进,也就是产业化在先,研究在后的阶段。

指纹识别的安全性

指纹识别自身还没有量化安全性评估,还不能作为安全技术,未来能不能发展成安全技术,就是现在产业界的责任。

FAR / FRR 测试依赖于数据集,而数据集由采集获得:

•所以指纹识别系统的FAR只是随机碰撞概率,不是防攻击能力;

•这就好比声称6位数字密码的安全性等于10^6一样,非常业余;

•模式识别指标定义,不能作为信息安全定义。

再来看看指纹识别潜在的攻击方法,在上一期公开课中,我们提到和指纹识别技术有关的攻击方法有三种:

•rank1,根据真实指纹制作假指纹,攻击点是欺骗传感器;

•rank2,根据指纹数据制作假指纹,攻击点是数据库;

•rank3,无须指纹数据先验制作假指纹,攻击点是指纹识别算法。

如果真实指纹和指纹数据都得到保护,则传感器和算法构成两重防御。

其它生物识别的安全性

特征空间明确对安全属性是双刃剑,一方面安全性容易量化,另一方面攻击方法容易研究。rank3大众脸攻击是面部识别的主要困境;而rank1从照片提取虹膜并制作美瞳是虹膜识别的主要困境。

当一种方法被普遍接受成为了要承担安全责任时候,如果有价值被攻击,那么一定有人研究,有人研究就有人实施,这也是为什么一定要提出“万能指纹”攻击方法的研究,并且评价最低成本的攻击方法成本是多少,进而评价指纹识别的安全性。

小面积图像带来的挑战

传统指纹识别的研究思路

自动指纹识别技术由美国FBI主导于20世纪70年代建立,这个时代背景是指纹采集技术手段落后,图像质量差;而且运算平台落后,算法研究也落后。

唯一能保证的就是图像比较大,但是图像大特征不准确,采集尽量大的指纹图像,获取远超过必要的信息量,所以要对不可靠的特征集合进行“模糊识别”。

小面积图像的产业前提

实现一定程度准确性的识别所需要的信息量是一定的。但是指纹传感器面积减小,信息总量也相应的减小了,所以要提高信息准确性,那么信息利用率也需要提高。

与此同时,传感器所面临的挑战是要保证更高的图像质量和保真度;而对算法来说需要尽可能全面的利用指纹图像蕴含的信息。

特殊手指问题更严重

指纹传感器面积小,图像质量再不给力,问题就大了。

举个例子,有传言称国内某超声波指纹手机在冬天导致近20%人群无法使用,这实际上是特定指纹所导致的:

•亚洲人皮肤油脂最少,冬天气候干燥皮肤尤其干;

•亚洲女性是全世界人种中指纹最难搞的,又浅又细;

•再加上东亚人手洗衣服的生活习惯造就了数以亿计的指纹杀手。

除此之外,还有很多指纹对指纹识别不友好,如干皮肤对棱镜光学也是噩梦,家里有光学指纹锁都可以感受;另外,最近炒的很火的苹果授权的新专利技术在东亚市场也难以适应,因为细指纹对近光源阴影成像就是噩梦;表皮薄的妹纸更是噩梦中的噩梦。

传统的算法不能用

据统计,过去有8万人在研究指纹识别算法,但目前全球只有5个公司实现算法的大规模应用,而传统指纹识别算法和现在的小面积图像指纹识别算法有着很大的差异。

传统大面积图像指纹识别算法:

•特征提取马马虎虎,反正原始数据就不可靠;

•特征匹配精细调整;

小面积图像指纹识别算法:

•原始数据必须可靠;

•特征提取精雕细琢,一点也不能放过;

•特征匹配要求精确,哪里还有模糊识别?

•对模板融合扩展(自学习功能)的要求大大提高。

万能指纹攻击的猜想

万能指纹是否存在是从业者必须面对的事情。

第一种情形是针对算法缺陷,存在构建万能指纹的可能性:举个例子,2010年深圳客户报告过,其技术总工用拇指能够开启使用注册了别人指纹的杭州某公司算法芯片的指纹锁。

这是传统算法的缺陷造成的,它的思路是部分特征匹配即过,如果特征有无差别大,往往认为是图像问题或提取问题导致的异常,予以忽略。这哥们的指纹比较皮烂,特征提取算法差的话容易提取出非常多的假特征,正好和很烂的特征提取算法配合的匹配算法往往更容易忽略不匹配的特征的影响而只关注匹配特征。

第二种情形是特征空间遍历。如上图,我们用无线网覆盖的案例来解释什么叫特征空间遍历,类似锁匠尝试许多把钥匙来开锁。红点代表一个路由,每个路由覆盖一定的区域,这些区域会有连接重叠,我们把假指纹比喻成路由。

生物识别算法的判决规则允许一定程度的失真。如果特征空间很明确,算法自身的容错度导致比较大特征空间区域都可以判定通过,把这个区域定义为通过区域;制作一组假指纹,其通过区域能够覆盖特征空间,则必存在一枚假指纹可以通过。

万能指纹的研究价值

只有实施攻击并评估其复杂度和成本,才能量化安全技术。指纹识别要从模式识别技术走向安全技术,必须进行进一步的研究,从攻击角度可以评价各种算法特性是否构成安全缺陷,第二个要评价指纹识别的特征空间。尽管指纹识别特征空间的不明确,但我们也需要要用等价的方法来做覆盖性的研究。

主动攻击相当于降低了判决阈值,所以除判决阈值处的FAR,当判决阈值进一步降低时FAR的提升曲线也很重要。

万能指纹的研究价值就是一个指纹识别系统从安全评价角度到底有多大的能耐。

万能指纹的测试

有了评价标准之后,我们需要建立相应的测试方法体系和工业标准。从测试成本考虑,不能使用物质的假指纹,而是软件合成的假指纹图像,具体来说有以下几个方向:

研究点1,软件合成器如何能体现具体指纹传感器的噪声特性?

研究点2,如何设计假指纹特征分布来针对性的测试算法?

研究点3,如何调整合成策略来产生不同等级的测试库?

研究点4,不同测试库的测试结果如何统一为安全性量化评估?

精彩问答

Q:汇顶的IFSTM 技术见龙不见尾,目前有投产吗?另外,这个技术量产的关键难点是什么?

A:IFS不是指纹传感器的类型,而是手机工业设计的一种方向。按汇顶的意思,把电容指纹传感器放在玻璃下面。因为汇顶做触屏,这样一结合,一张玻璃两个产品,就没别人什么事了。但对手机设计而言,这样并不好。

所以IFS不是技术概念,而是插手了手机设计,但并没有被主流手机接受

Q:鉴于指纹本身的差异性以及指纹识别技术的多样性,行业是不是应该要形成一个规范?

A:规范是有必要的。尤其是我这样的研究背景很强的参与者。毕竟江湖功夫咱不到家,按技术规律规范着来,比较有竞争优势。规范的形成,是一个长期的拉锯战,各方博弈的后果,最后谁大呢?传统看法是谁份额大谁就有事实标准。

但有时也未必,因为涉及安全,安全是非常理性的规范性,否则就要遭遇大赔偿。跟金融业比起来,指纹识别技术供应商都算不得什么控制力,金融业是规范的需求方,不具备制定规范的技术能力。所以这事有得搞。

Q:之前业界也在呼吁几种生物识别技术融合的方案,原则上安全性应该会有所提高,现在业界有没有相关的案例?以及技术难点在哪?

A:这就和结合光学与电容搞得活体一样,一高一低的结合不提高安全性。不过人行有个文件,安全等级是数技术手段个数的。从风控的角度,如果场景比较安全,那么认证手段就会少。此时选择最方便的一个让消费者舒服。如果场景本身不靠谱,认证手段多上几个,对提高攻击成本总有点价值,所以如果生物识别手段上多个,会有主有次,有高频有低频。而不会相互抵触。

如果非要说难点,只有两个非技术的:第一,安全量化没做到,金融业定不了标准。如果多模给100万额度,单模给1000额度,立刻都多模;另外是成本,但节流问题没有开源重要。

金融信息安全的演进

基于物理隔离网络

我们所看到的银行柜台和ATM机的网络连接模式都是物理隔离网络,也就是银行的专用网络。

物理隔离是最直接的安全防护,它杜绝了监听、中间人等基础攻击手段,几乎不需要建立安全技术。常见报道的某地区或某军区建立的安全网络,大多都是指物理隔离网。

但是这种网络的缺点也很明显,它的终端会受限,仅能在固定的柜台和ATM机办理业务,而且其攻击方式也主要是内部人业务级的攻击,或者说是银行雇员监守自盗,例如行长挪用,柜员盗窃客户帐户,以及ATM机维护人员搬走现金。

基于电话机交换网络

这在POS机进入了各个商户后,POS机对银行来说是一种第三方网络,但考虑到是电信运营商的网络还算可靠。

传统的POS机以电话交换网络连接入银行主网,也就是传统物理电话交换网络,在双方之间建立唯一的物理通道,这是人工切换,隔绝了中间人的攻击,但对监听难以防御。在这之后,还出现了自动切换以及软件切换,软件分组交换网络可能因软件系统漏洞,导致中间人攻击和监听。

再来看看POS机。早期申领POS机的商户都要被严格的审核,而且POS机和人一样有个一一对应的身份,不过我们近几年看到推销的各种POS机都没有没有独有的身份。

严格来讲,作为终端,POS机配还是备了一定安全手段的:

POS的领取受到管控,POS使用者和唯一序列码绑定;

POS在技术手段上实施了一定程度的加密;

POS毕竟是安全设备,提前内置密钥,无须分发,没有分发环节风险;

当然,这不代表POS机就不存在安全风险,比较常见的攻击方式就是刷卡套现,属于业务级而不是技术级的攻击。

基于互联网

互联网引入金融系统,就意味着要在不安全的网络之上建立一个安全的体系,最基本的要求就是终端要有保障。我们看到这类最早的产品是U盾,现在U盾已经从第一代发展到了第三代(支持指纹识别功能),在这过程中U盾的成本增加了,但交易风险在降低。

那么,网上银行终端以互联网接入银行主网存在哪些风险呢?

最致命的就是互联网是不安全的网络:分组转发传输方式决定了物理信道不确定性;数据层面,监听、篡改、阻塞、中间人攻击五花八门;软件系统层面,病毒、木马、远程控制层出不穷。

针对这些问题,可以基于数字证书和安全模块来增强终端的安全:

数字证书体系由非对称密码、对称密码、安全协议构成;

安全模块具备设备唯一码、安全储存器、安全计算环境,等等;

攻击方式:

为抵抗伪造交易,所以U盾从1代发展到2代,增加了现实和确认物理按键;

为抵抗窃取U盾,第3代U盾引入指纹识别;

银行卡受限于成本只相当于1代U盾。

基于移动互联网

移动互联网的支付风险比互联网要大,因为攻击手段增加了,从技术角度上讲,终端的接入入口是变化的,从法律管控来看,终端的身份认定更加困难,所以说移动互联网比固定互联网更加不安全:

假基站攻击、复制sim卡等新攻击手段;

设备不易追踪,犯罪风险更小。

因此,在网络变弱的情况下,对移动设备终端安全也提出了更高的挑战:

移动设备仍然是开放的软件平台;

安全链涉及的环节和厂商更多;

没有成形标准,很难协同一致。

一言以蔽之,移动支付遍地漏洞,攻击方式非常多样化,主要防御手段就是大数据统计风控,以支付宝为例,他们早期的发展主要原因之一就是敢赔,中国的移动支付能走在世界前列靠的就是统计风控,这间接打了技术安全的脸。

手机信息的安全问题

一般情况下,网络越开放,终端安全技术要求越高,所以标准化不如PC的手机,所面临的安全风险也会更高。

一是硬件漏洞和硬件驱动程序作恶防不慎防,举个例子,去年我们一竞争对手用驱动程序检测内置的芯片,而他们就在此做了些动作,当检测到不是他们自己的芯片时,就会影响用户手机的运行速度甚至导致死机。硬件驱动程序在系统的权限级很高,而手机生态对硬件驱动程序没有做很全面的代码审核,尤其是指纹识别。

另外,手机操作系统尤其是碎片化的Android面临的安全风险很高,例如旧版本维护问题,安全补丁及时性问题。

除此之外,恶意软件管控面临巨大挑战,软件分发缺少安全标准和执行,防御性软件式微,手机平台不具备PC平台那样成熟的安全软件行业。

所以,移动支付面临的问题是网络安全以及技术安全的实施条件都变差了,支付平台必须付出很高的代价来完善统计风险控制,但需要注意的是,统计风控也存在一定的局限性,例如用虚假交易来扰乱金融,这是统计风控无法避免的。

Secure Element(SE)

SE是一个符合金融标准的芯片、软件系统标准技术,以U盾芯片和CPU银行卡芯片为例,SE代表了金融信息安全的一系列标准技术,它有以下技术特征:

封闭的软件环境;

与金融信息化系统的兼容性接口;

具备内存保护的安全动态储存器;

防静态破解的安全静态储存器;

密码加速硬核;

真随机数发生器;

防动态功耗分析的机制,等等。

SE有什么作用?

对以移动支付为代表的移动互联网金融而言,SE的作用是衔接终端安全体系和金融安全体系。

苹果就是以标准SE作为两套体系的接口,还兼顾了部分服务端的架设工作,这使苹果公司向金融业的接入方式更灵活更有兼容性;而Android阵营则为SE的价值争论不休,并没有什么作为,仿佛做梦由金融系统主动改变技术标准来适应自己。

SE只针对互联网金融吗?

答案是否定的,央行正在大幅度地提高监管力度,以前松技术监管的好日子是给互联网金融试水成长的;技术监管趋严,互联网金融已经面临与银行业一致的监管标准和安全要求,随时间推进会整体性越来越严格;不安全无金融,金融就是以可控的风险进行资金的流动;安全技术攻防中,互联网金融平台取代传统金融业成为防守方的主力,这本身也是整个金融业的进步。

苹果的安全架构

苹果的安全架构有三个部分:Open OS、Secure Enclave和SE,这是Apple终端安全的三大件,一个都不能少:

Open OS(IOS)用于运行软件,作为兼容性平台先天弱安全,即使IOS也不停暴露致命漏洞;

Secure Enclave用于运行安全软件,拥有独立的片上安全SRAM,不安装第三方软件,是一个封闭系统;

SE作为与金融信息安全系统的标准接口,同时提供安全储存功能,为前两者提供密钥储存等服务;

总结来说,Apple设计理念是硬件隔离风格,这是可证的安全。

Android终端安全

Android没有SE,这使得金融体系要接入的时候安全性不高,它主要的两个组成部分是Open Zone和Secure Zone,但二者的关系设计不合理:

Open Zone(Android)往往不具备独立的Secure Boot Chain,而由运行于Secure Zone的Secure OS引导;

Secure Zone虽然和Secure Enclave都遵从ARM的Trust Zone标准,但配置不一样:Android阵营使Secure Zone与Android复用DRAM,等于对内存补丁攻击不设防,一旦关键数据地址暴露,则可以被Android运行的软件锁定变量值;部分Android阵营厂商设置的开发规则使Android App成为Secure App的精细调用者,对调度者攻击不设防,可以误导操作组合实现业务层攻击。

所以Android阵营的设计理念是软件防御式的扰乱,而不是硬件隔离,它的安全不可证。

金融安全的游戏规则

金融业玩的就是量化风险,风险越高保险费越高,消费者付出的手续费就越高。

对于安全可证的Apple平台,给予符合其可证安全等级的低费率。苹果在低费率上再加一点点抽水,还能使总费率低于平均水平;

对于安全不可证的Android平台,基本费率以可能的最低安全等级为准。正因为Android手机支付的高费率,Apple Pay才能在盈利的同时拥有费率竞争力。也正是因为这种安全机制的差异,造成了现在Apple Pay和Android赔的局面。

Secure Enclave Vs Secure Zone

Trust Zone

Trust Zone是ARM提出的标准,这个标准强调的是隔离软件和硬件,但具体把安全做到哪一步依赖于完整的Soc设计甚至整机设计。

Apple的Secure Enclave和Android的Secure Zone都基于ARM的Trust Zone。Secure Enclave的storage(静态存储器)、dynamic memory(内存)、boot chain都是独立的,且不安装第三方应用;

Secure Zone的storage、dynamic memory与Android是复用的,靠AP的寄存器配置来分离,一旦Android App获得改写权限,那么就只有指望攻击者不知道该怎么办了。

Apple的指纹子系统

Apple的指纹子系统有3个角色:一是传感器,主要任务是采集指纹数据;第二个是加密芯片,将指纹数据加密传输到AP;第三个是Secure Enclave,与加密芯片在出厂前匹配密钥,指纹图像明文只有在Secure Enclave里才被解密,且由于Secure Enclave使用的SRAM在片内,数据不可取出,掉电即失,苹果拿不到指纹数据是由硬件隔离保证的。

Android的指纹子系统

Android的指纹系统有2个角色:一是传感器,主要是采集指纹数据,明文传输给AP;二是Secure Zone,获得指纹数据明文,并储存在共享DRAM里,并对其进行运算。

但是有个问题,指纹数据传输给Secure Zone还是Open Zone,是由寄存器设置决定的,一旦寄存器被改指纹信息也就被盗取了,这是软隔断思路的局限性。

为什么Android没有SE?

一方面是因为SE本身有成本,另一方面是Android引入了也没什么用:

SE只是一个保险箱,确保保险箱里的东西不被盗窃。这么一个赤身裸体的Android体系作为SE的调度者时,即使保险箱永远不打开,手机永远不丢失,Hacker远程控制你的手机根本不在话下。

Android体系的本质难题

前面比较了苹果和Android的安全,苹果把Secure Enclave作为一个绝对独立的东西,Android则做不到。作为开放性兼容体系,Android阵营在安全上天然不利。

Secure Zone需要安装第三方软件,决定了Secure Zone的安全性是有限的;Secure Zone需要富资源,尤其是存储器资源,导致成本上无法像苹果一样接受片上专用的SRAM。

硬件不行软件上,Secure Zone对Secure OS要求极高,导致对Secure OS的限制也就极大。再把Secure Zone作为安全根显然是不可行的。

如何发挥SE的作用?

Secure Element除了作为金融安全标准件外,还可以为终端提供安全根和安全储存服务:

SE需要自主运行,免受调度者攻击;作为Secure boot chain的第一环节,由SE来校验Secure Zone,Secure Zone再来校验Open Zone,将SE集成于AP的设计需要充分考虑到这一需求;

SE提供密钥安全储存服务,当Secure Zone被攻破的时候,数据还存在SE里。充分活用SoC和SiP技术,杜绝该安全储存服务本身受到链路攻击;

把指纹识别的运算从Secure Zone转移到SE,使指纹识别得以辅助SE成为最后一道关卡,这就构成了下面这个架构图。

这是基于FSE的安全架构,它以Secure Element作为安全中心节点:SE左侧为指纹和金融体系,AP关闭时可以独立支付;SE右侧逐次连接Secure Zone和Open Zone,从左到右实现Trust Boot Chain等安全机制。

这一体系的价值在于可以降低支付的手续费,而且还提高了手机的业务级安全能力。

精彩问答

Q:指纹识别方案现在有没有和支付平台和系统厂商协作?以及怎么承担风险?

A:指纹方案现在只是兼容性接入,没有量化,没有风险评估。不止指纹,安全操作系统提供方也以软件授权,而非安全服务的形式存在。风险只在系统集成那里,毕竟安全链没有闭合,安全没量化,一旦出错,怎么分责任呢?而安全领域的做法是,安全商集体为最终客户背锅。手机还没有达到信息安全标准,目前只有信息安全噱头

Q:Secure Enclave和ARM的TrustZone区别在哪?

A:Secure enclave是基于trust zone标准做了配置和再开发的成果,至于苹果干了什么,并没有通知ARM。事实是,ARM靠苹果用了trust zone给自己打广告,并且把苹果没有使用ARM参考方案给忽略了。

我需要强调一个观念,产业级企业,一家的力量,可以比平行产业整体的力量大很多,中国有企业,缺完整产业,更加没有产业级企业,华为肯定走在最前面,但路还长。

Q:前不久看到印度推出的指纹支付计划,就是指纹支付系统和印度的“生物识别数据库”连接,这种安全性是好是坏?我只要保护一个数据库就可以防住所有人的信息泄露...

A:我只要攻破一个数据库就拿到所有的数据,攻防相长,一切是动态的。鸡蛋放在一个篮子里,不是安全领域人员可以接受的想法。像苹果一样,用机制确保指纹数据拿不出来才是王道,我给出的以SE为中心的架构建议就遵循这个思路。安全技术在于提升天然等级达到需要的等级,如果天然等级足够高,就不必担心技术的发展使得未来得以破解,安全产品的生存期也就提高了,同一维度的攻防,只有杀毒软件才喜欢,升级越频繁,收费越自然。从架构设计来看,不到迫不得已,就不要指望同一维度的防守,尽量比攻击者高一个等级。

指纹传感器和假指纹攻防技术相关推荐

  1. 网络攻防技术(摆烂一天)

    网络攻防技术非常基础 1. 信息采集 信息采集的重点概念: 信息采集是黑客为了更有效的实施攻击而在攻击前对被攻击目标进行探测活动(信息渗透的过程) 信息采集是渗透重要的一部分:知道的越多就可能知道的更 ...

  2. AI生成假指纹以假乱真,你的指纹识别还安全吗?

    AI前线导读: 指纹,由于其具有终身不变性.唯一性和方便性,已几乎成为生物特征识别的代名词.指纹识别技术是一种生物识别技术,指纹识别系统是一套包括指纹图像获取.处理.特征提取和比对等模块的模式识别系统 ...

  3. 指纹辨识将被破解?最新研究出人工智能可以绘制假指纹

    采用指纹辨识的安全设备需要使用者的指纹,因此被认为比设密码安全.但研究人员现在已发展人工智能绘制而成的假指纹,已能成功骗过指纹辨识系统.也就是说,未来可能黑客也不用跟在使用者背后窃取指纹. 指纹辨识已 ...

  4. 指纹辨识真的安全?AI能轻松生产出假指纹破解

    采用指纹辨识的安全设备需要使用者的指纹,因此被认为比设密码安全.但研究人员现在已发展人工智能绘制而成的假指纹,已能成功骗过指纹辨识系统.也就是说,未来可能黑客也不用跟在使用者背后窃取指纹.指纹辨识已被 ...

  5. 2018-2019-2 20165315《网络攻防技术》Exp6 信息搜集与漏洞扫描

    2018-2019-2 20165315<网络攻防技术>Exp6 信息搜集与漏洞扫描 目录 一.实验内容 二.实验步骤 1.各种搜索技巧的应用 2.DNS IP注册信息的查询 3.基本的扫 ...

  6. 工控系统的指纹识别技术

    当前,指纹识别技术已被或坏或好的广泛应用于ICT系统.攻击者通过扫描网络获取设备指纹来关联漏洞入侵系统,安全防护者则利用设备指纹来发现系统的脆弱性,检测系统的网络异常.在工业控制系统(ICS)中,指纹 ...

  7. 2017-2018-2 20179207 《网络攻防技术》第五周作业

    kali漏洞分析之数据库评估(一)(二) web层与数据库连接的漏洞在安全测试中并不少见,owasp曾经的top之首sql注入漏洞. 数据库评估软件 1.bbqsql 是一个pyth编写的盲注工具,当 ...

  8. 2018-2019-2 20165312《网络攻防技术》Exp7 网络欺诈防范

    2018-2019-2 20165312<网络攻防技术>Exp7 网络欺诈防范 目录 一.相关知识点总结 二.实验内容 三.实验步骤 四.实验总结及问题回答 五.实验中遇到的问题及解决方法 ...

  9. CPU 已不足以驱动屏幕指纹识别技术,于是 vivo 用 DSP 来加速

    伴随着全面屏时代的到来,智能手机在解锁方面面临着多条路径.比较常见的有三种: 第一种是像 iPhone X 那样彻底放弃指纹识别,全面拥抱人脸识别: 第二种是则后置指纹识别模块的基础上,增加基于前置摄 ...

最新文章

  1. Hello world!
  2. 出现module ‘xgboost‘ has no attribute ‘DMatrix‘的临时解决方法
  3. 软件测试面试必备的一些基础理论概念
  4. 330+ 个机器学习模型/库探索工具!Papers With Code 重磅推出!
  5. JavaFX 架构与框架 (译)
  6. CSS3属性——(一)
  7. 利用Cache缓存数据DataTable数据提高大数据量访问性能-.NET教程,数据库应用
  8. leetcode942. DI String Match
  9. leetcode934.ShortestBridge
  10. jquery监听html状态,jquery监听页面刷新
  11. Facebook开源项目:我们为什么要用Fresco框架?
  12. 演练Ext JS 4.2自定义主题
  13. 《恋爱通告》8月12上映 海报预告片齐亮相
  14. Blob转换二进制流下载文件
  15. 读《Scratch 2.0 少儿游戏趣味编程》
  16. 数据分析师的工资水平如何?
  17. java生成unix格式文件_Java Windows文本格式和Liunx/Unix文本格式转换
  18. linux中network启动不了的三种解决方案
  19. linux网卡驱动重装操作
  20. 小学计算机教海探航论文名字,教海探航获奖论文题目参考(95页)-原创力文档...

热门文章

  1. Python筛选处理Excel的两种方法(openpyxl与pandas)
  2. Mac实用小技巧--Finder左边栏添加文件夹
  3. OpenCV图像处理专栏十七 | 清华大学《基于单幅图像的快速去雾》C++复现(有一定工程意义)
  4. 易课寄在线购课系统开发笔记(二十九)--完成用户登录功能
  5. 关于虚拟机无法创建目录的问题
  6. ETH官方客户端Geth的使用
  7. 洛谷 P2728 纺车的轮子 Spinning Wheels
  8. Docker中Spring boot+VueJS+MongoDB的前后端分离哲学摔跤
  9. uniapp抖音网页版
  10. Excel技巧1:将符合要求的多个单元格内容合并到一个单元格