指纹识别认证

首先截取一段百度关于指纹的定义:

FRR与FAR

FRR(False Rejection Rate)和FAR(False Acceptance Rate)是用来评估指纹识别算法性能的两个主要参数。FRR和FAR有时被用来评价一个指纹识别系统的性能,其实这并不贴切。指纹识别系统的性能除了受指纹算法的影响外,指纹采集设备的性能对FRR和FAR的影响也是不能忽视的。

FRR通俗叫法是拒真率的意思,标准称谓是FNMR(False Non-Match Rate 不匹配率)。可以通俗的理解为“把应该相互匹配成功的指纹当成不能匹配的指纹”的概率。对指纹算法的性能测量是在给定指纹库的情况下进行测量的。用于测量的指纹库一般由FVC(国际指纹识别算法大赛)组织者给定。FVC在作指纹识别算法性能测试时,并无外界指纹输入,是使用标准的指纹图像库来测试的。所以FNMR是在没有连接指纹采集设备的情况下得出的测试值。本节的其它参数也都是在这一前提下得出的。

假定指纹库中有100个不同ID的手指,每个手指注册有3枚指纹,则该指纹库中共有300枚指纹。假定P1表示手指1的ID,则其三次注册的指纹用P1-F1,P1-F2,P1-F3来表示。FNMR是指把指纹库中的同一个手指的3枚指纹两两比较,即P1-F1与P1-F2匹配,P1-F1与P1-F3匹配,P1-F2与P1-F3匹配,P1-F2与P1-F1匹配,P1-F3与P1-F1匹配,P1-F3与P1-F2匹配,共有6种匹配方式。把所有100个手指在其内部均作6种匹配,共6x100=600次匹配。理论情况下,600次匹配均能正确匹配,匹配的成功率为100%。实际上因为同一手指的3枚指纹图像不可能完全一样,所以有一个匹配相似度问题。假定我们把匹配成功的相似度设为>90%,就是说当相似度大于90%时,表示匹配成功。然后我们从600次匹配中,找出多少次相似度在90%以上的,这个数值就表示匹配成功的次数,假定为570次。600次中其余的表示没有匹配成功的次数,为600-570=30次。则匹配失败率,就是30/600=5%。

对于指纹识别算法来讲,在指纹库确定的情况下,其匹配失败率FNMR是一定的。当指纹库发生变化,其FNMR也会有变化。所以国际上是以FVC公布的指纹库为统一的测试库,在该测试库中测试出来的FNMR结果作为衡量指纹算法性能的标准参考。

FAR一般称为认假率,其标准称谓是FMR(False Match Rate 错误匹配率)。FMR是用来评估指纹识别算法性能的最重要参数。可以通俗的理解为“把不应该匹配的指纹当成匹配的指纹”的概率。

同样以前段中的指纹库为例。把库中的每个指纹,与除自己之外的其它所有指纹进行匹配,匹配的总次数,即300×(300-1)=89700次。理论情况下,匹配成功次数为6x100=600次,匹配失败次数应为89700-600=89100次。假定由于指纹算法性能的原因,把本应该匹配失败的判为匹配成功,若假定这种错误次数为100次。则错误接受率FAR为100/89100=0.11%。匹配失败次数是因判定相似的条件严格程度而变化的。当匹配成功的筛选条件,即门限值提高时,FAR会降低。

FAR也与指纹库相关。在FVC大赛中,有4个指纹库用于测试,并取平均值。其中有一个指纹库是人工生成的,以排除采集设备不同导致的指纹图像质量不同对算法效能的影响。

在同一个指纹库中,对同一个算法来讲,需要设定一个阈值,作为判定相似的标准。当相似度大于这个阈值时,表示匹配成功,否则表示匹配失败。FNMR是随阈值增大而增大的,即判定相似的门槛值越高,则真的指纹判定为假的机率越大。反之,FMR是随阈值增大而减小的,即随着判定相似度的门槛值越高,把假的指纹判定为真的概率会越小。FAR与FRR成反比。根据2004年FVC大赛测试结果,一般当FMR是1/1000量级时,FNMR是5/100左右。也就是100个手指的指纹库中,进行1000次匹配,有可能发生一次匹配错误,即认错。进行100次匹配,有可能出现5次匹配失败,即不认。

EER

EER(Equal Error Rate)是相等错误率的意思。这个参数一般在普通场合不大使用。EER主要用于评价指纹算法整体效能的指标。也就是把FAR、FRR两个参数统一为一个参数,来衡量指纹算法的整体性能。FAR和FRR是同一个算法系统的两个参数,把它放在同一个坐标中,如图30所示。FAR是随阈值增大而减小的,FRR是随阈值增大而增大的。因此它们一定有交点。这个点是在某个阈值下的FAR与FRR等值的点。习惯上用这一点的值来衡量算法的综合性能。对于一个更优的指纹算法,希望在相同阈值情况下,FAR和FRR都越小越好。

把FAR和FRR曲线都向下平移。同时相交点ERR也向下平移。EER值越小的时候,表示算法的整体性能越高。

由于当FRR与FAR相交时对应的阈值都很小,也就是说此时的相似度阈值连30%都不到。实际使用中的阈值至少设在80%以上,故EER值并不被用在大众化场合来描述指纹算法的性能,只是在竞赛排名中使用。

FRR实际上也是系统易用性的重要指标。由于FRR和FAR是相互矛盾的,这就使得在应用系统的设计中,要权衡易用性和安全性。一个有效的办法是比对两个或更多的指纹,从而在不损失易用性的同时,极大地提高了系统安全性。

好吧,那么问题来了。。

论文中作者提到的方法显示匹配次数不一样,计算总数不一样,该以哪个标准为真实的呢?

其次,得到的FAR和FRR明明为一个数值,可是却说画曲线的时候,根据阈值的变化,FRR和FAR会有不同的变化,那么这个阈值要怎么变化呢?

时间: 2024-08-23 10:57:05

指纹识别认证的相关文章

android指纹识别认证实现

Android从6.0系统支持指纹认证功能 启动页面简单实现 package com.loaderman.samplecollect.zhiwen; import android.annotation.TargetApi; import android.app.FragmentManager; import android.app.KeyguardManager; import android.content.Intent; import android.hardware.fingerprint

高考替考事件为指纹识别技术敲响警钟

指纹识别技术存在严重安全漏洞 河南高考替考案中暴露出来的指纹膜以假乱真,也让反作弊问题浮出水面.指纹识别认证受环境温度和个人皮肤条件影响较大等原因,部分考生指纹不易 采集,且市场上又出现了大量复制指纹的产品,给通过指纹验证考生身份造成困扰.而现实中,用印泥盗取他人指纹的情形更是屡屡发生. 上述种种危险传递出一个信号:技术已趋成熟且获广泛应用的指纹识别技术,仍存在其自身难以克服的安全漏洞.由于指纹裸露于体表,无法避免被复制及窃取,急需更加安全且同样便捷的身份识别和安防技术. 现在不少公司都装配了指

whatweb网站指纹识别工具

WhatWeb是一款网站指纹识别工具,主要针对的问题是:"这个网站使用的什么技术?"WhatWeb可以告诉你网站搭建使用的程序,包括何种CMS系统.什么博客系统.Javascript库.web服务器.内嵌设备等.WhatWeb有超过900个插件,并且可以识别版本号.email地址.账号.web框架.SQL错误等等.特性* 超过900个插件* 高效.迅速.低碳* 插件包括应用实例URL* 多种日志格式:XML,JSON,MagicTree, RubyObject, MongoDB* 优质

ios开发-指纹识别

最近我们使用支付宝怎么软件的时候,发现可以使用指纹了,看起来是否的高大上.当时苹果推出了相关接口,让程序写起来很简单哈. 在iPhone5s的时候,苹果推出了指纹解锁.但是在ios8.0的时候苹果才推出相关的接口 所有我们需要判断硬件设备和ios系统版本是否支持 下面的例子是,先提示指纹识别,如果不支持或者主动取消,则需要手动输入密码认证 所以我们第一步需要判定系统版本,如果不支持,我们直接返回,即可 1 if ([UIDevice currentDevice].systemVersion.fl

Android6.0指纹识别开发

近期在做android指纹相关的功能,谷歌在android6.0及以上版本号对指纹识别进行了官方支持.当时在FingerprintManager和FingerprintManagerCompat这两个之间纠结.当中使用FingerprintManager要引入com.android.support:appcompat-v7包.考虑到包的大小,决定使用v4兼容包FingerprintManagerCompat来实现. 主要实现的工具类FingerprintUtil:验证手机是否支持指纹识别方法ca

iOS 指纹识别

今天做项目用到指纹识别,但是单指纹识别技术实现起来并不复杂,但是验证成功之后需要刷新UI这里我就跳进了一个坑了??????.因为指纹验证也是在子线程进行的 要么是等待很长时间,要么就是报乱七八糟的错误,看的我也是醉了 #import "ViewController.h" //本地验证框架,用于指纹识别(iOS8出现) #import <LocalAuthentication/LocalAuthentication.h> @interface ViewController (

iOS指纹识别

1 -(void)CreateFingerPrint{ 2 LAContext *myContext = [[LAContext alloc] init]; 3 NSError *authError = nil; 4 NSString *myLocalizedReasonString = @"请验证已有指纹"; 5 6 // 判断设备是否支持指纹识别 7 if ([myContext canEvaluatePolicy:LAPolicyDeviceOwnerAuthentication

基于ARM9的指纹识别系统的设计和实现

生物识别技术是利用人体固有的生理特性(如指纹.脸象.红膜等)和行为特征(如笔迹.声音.步态等)来进行个人身份的鉴定. 生物识别技术比传统的身份鉴定方法更具安全.保密和方便性.生物特征识别技术具有不易遗忘.防伪性能好.不易伪造或被盗.随身"携带"和随时随地可用等优点. 生物识别的工作原理是利用生物识别设备对生物特征进行取样,提取其唯一的特征并将其转化成数字代码,并进一步将这些代码组成特征模板,人们同识别设备交互进行身份认证时,识别设备获取其特征并与数据库中的特征模板进行比对,以确定是否匹

浅谈嵌入式指纹识别方案

信息化时代,生物识别技术作为信息安全和个人身份识别技术越来越受到人们的重视.指纹作为人体中最明显的外表特征,具有唯一性.终身不变性.易获取.难以复制等优点.随着科学技术的发展,指纹识别已经成为目前最为实用.应用最为广泛的生物识别技术,尤其在民用生物识别技术中. 传统的指纹识别系统都是基于PC机的,这种系统具有识别速度快.样本存储量大.软件设计技术成熟等优点.但是,基于PC机的指纹识别系统由于价格昂贵.移动性能差.功耗高等缺点限制了其应用的进一步扩大.随着32位嵌入式微处理器的推广和应用,为人们设