具体实施方式
为使本发明实施例的目的、技术手段和优点更加清楚明白,以下结合附图作进一步详细说明。
本发明实施例的基本思想是:预先设置生物认证系统相关参数与安全级别的对应关系,其中,相关参数包括该生物认证系统采用的安全措施,以及该生物认证系统采用的生物认证算法的FMR或FNMR;在为生物认证系统确定安全级别时,首先确定生物认证系统采用的安全措施以及生物认证系统的FMR或FNMR,根据其采用的安全措施及FMR或FNMR,参照预设的对应关系,确定该生物认证系统的安全级别。
图2为本发明实施例中确定生物认证系统的安全级别的方法总体流程图。如图2所示,该方法包括:
步骤201,预先设定生物认证系统的相关参数与安全级别的对应关系。
本步骤中,相关参数包括该生物认证系统采用的安全措施以及该生物认证系统采用的生物认证算法的FMR或FNMR。
步骤202,确定生物认证系统采用的安全措施和生物认证系统采用的生物认证算法的FMR或FNMR。
步骤203,根据步骤a中预设的对应关系,得到步骤b所确定的安全措施以及FMR或FNMR对应的安全级别,将该安全级别作为该生物认证系统的安全级别。
图3为本发明实施例中确定生物认证系统的安全级别的设备总体结构图。如图3所示,该设备包括:存储模块310、安全措施获取模块320、算法特征获取模块330和级别判定模块340。
在该设备中,存储模块310,用于存储预先设定的生物认证系统的相关参数与安全级别的对应关系,其中,相关参数包括该生物认证系统采用的安全措施以及该生物认证系统采用的生物认证算法的FMR或FNMR。安全措施获取模块320,用于获取生物认证系统所采用的安全措施,可以是接受用户输入的方式,或者是主动探测的方式,并将得到的安全措施类别发送给级别判定模块340。算法特征获取模块330,用于确定生物认证系统的FMR或FNMR,可以是由用户输入或者是主动测量生物认证系统的ROC曲线,并根据得到的ROC曲线确定系统的FMR或FNMR发送给级别判定模块340。级别判定模块340,用于接收安全措施获取模块320发送的生物认证系统采用的安全措施,还接收算法特征获取模块330发送的生物认证系统的FMR或FNMR,并根据该生物认证系统采用的安全措施以及FMR或FNMR,调用存储模块310中的对应关系,参照该对应关系,确定该生物认证系统的安全级别。
上述即为本发明实施例确定生物认证系统安全级别的方法和设备的总体概述,下面结合具体实施例说明本发明实施例的具体实施方式。
对于某一确定的生物认证系统,其识别欺骗攻击的能力可以通过生物认证系统所采用的生物认证算法的FMR或FNMR来表示。FMR和FNMR相互关联,当FNMR减小时,系统可以容忍更多的输入变化和噪声干扰,这样可以满足系统可用性,但却会增加FMR。另一方面,当FMR减小,可使系统更安全,却使FNMR增加,这可能会使系统在实际中没法使用。通常系统的接收者操作特性(ROC)曲线可以反应FMR和FNMR之间的关系。在实际应用中,要仔细调整FMR和FNMR,以期在系统的安全性和可用性之间取得平衡。
不同的生物认证系统,还可以采用各种不同的安全措施,这些措施主要有:单生物认证、多模态生物认证、生物认证结合活体检测、生物认证结合智能卡/口令等。
单生物认证,即通过对用户的单一的生物特征进行提取并识别,从而对用户进行身份认证的生物认证方式。如单纯的指纹认证系统、单纯的虹膜认证系统和单纯的人脸认证系统等。
多模态生物认证,是在某一生物认证系统中,集成多种生物特征进行认证的生物认证方式。多模态生物认证系统通过加强从不同来源获得的证据,克服了单生物认证系统的一些限制。这些来源可以是:(1)同一生物特征,多传感器检测,如光学的和固体的指纹传感器。(2)同一生物特征,多个实例,如人脸在不同姿态/光照条件下的多幅图像。(3)同一生物特征的多种表述和匹配算法,如人脸的多种匹配器,像PCA和LDA。(4)同生物特征的多个不同单位,如左右虹膜图像。(5)多个不同的生物特征,如脸、指纹和虹膜。多模态生物认证系统比单生物认证系统更可靠和抗干扰能力。从反欺骗的观点看,这类系统增加了欺骗的困难度,主要原因是:(1)同时获取多个特征有难度;(2)需要假冒者同时伪造多个特征;(3)识别系统可以随机要求用户提供同一特征的不同单位,来确认活的用户存在,如先要求左食指,然后右中指。
活体检测,旨在为系统增加检测生物样本是由活人提供还是无生命特征的物品的能力。通常活体检测是对传感器的要求,在传感器侧检测传感器感受到的生物样本是否为活人提供,再将该生物样本进行其他生物认证。活的生物体与死的生物体在很多物理特征方面存在差异,活体检测可以通过检测活的生物体的物理特征来实现。如根据活的生物体应具备的电阻率进行的电测量、根据活的生物体应具备的热度和潮湿度进行的热测量和潮湿度测量、对光和其它辐射的反射和吸收等;自然的自发信号,如脉搏;对外界刺激的反应,如瞳孔在光下的收缩,肌肉对电信号的收缩等;手指的形变、排汗,等等。
生物认证结合智能卡/口令,即将生物特征、智能卡和口令的认证结合的生物认证方式。传统上,身份认证系统是基于知识(如,PIN或口令),或者基于拥有物(如智能卡或IC卡)来验证身份。虽然卡可能被偷,靠猜测或简单的蛮力字典攻击可以破解短的、简单口令,但它们的组合使用会使身份认证更加可靠。直到现在,在商业和政府认证领域,这种方法仍然是使用的最广泛的方法。毫无疑问,生物特征、智能卡和口令的结合在身份验证中会取得更高的安全性。智能卡可以完成这样一些功能:它可以是存放生物特征数据的存储器,也可以直接用来进行身份验证。在这种应用场合,用户要获得身份认证,首先提供登记过的智能卡来声明他/她的身份,然后还必须同时通过生物特征验证和口令验证。由于这三者是独立的,攻破这类系统的概率是各自攻破它们概率的乘积,对假冒者来说,同时破坏3个系统意味他必须同时伪造用户生物特征、获得用户口令以及用户智能卡,这是非常困难的。这种反欺骗机理实际上和多模态系统是一样的。
对于上述的安全措施,在目前的生物认证系统中,有些安全措施可以单独使用,也可以组合使用,如单生物认证可以单独使用,也可以与智能卡/口令组合使用,而有些安全措施则是需要组合才能使用的,如活体检测需要与其他安全措施结合使用。本发明实施例预先设置的安全级别分类,就是根据这些安全措施的各种组合以及生物认证系统的认证算法等来对认证系统的安全性进行定级的,具体分类方法在下面的实施例中将详细描述。
图4为本发明实施例中确定生物认证系统的安全级别的方法具体流程图。如图4所示,该方法包括:
步骤401,预先设置安全级别的分类表。
本实施例中,通过安全级别分类表表示安全措施、FMR与安全级别的对应关系。该安全级别分类表如表1所示。
表1
在表1中,生物安全级别对应的列表示生物认证系统的不同安全级别分类,采用的安全措施对应的列表示生物认证系统采用的相应安全措施,其中表中打钩的项表示,处于该安全级别的生物认证系统所用到的安全措施,生物认证系统FMR对应的列表示处于该安全级别的生物认证系统在确定的FNMR下各自对应的FMR。例如,表中的第6行表示安全级别为BA0的生物认证系统,其采用的安全措施为单生物认证与智能卡/口令认证的结合,在确定的FNMR下,该生物认证系统的FMR值为≥1×10-2。
由表1可以看出,本实施例中的安全级别分类表共分4大类25小类。其大类的划分是根据生物认证系统采用的安全措施进行划分的,分别是A、B、C、D,从A到D级别依次升高,安全性也依次升高。其中A类采用单一生物认证技术。B类又划分为两个子类:BA、BB类;BA类采用单一生物认证技术+智能卡/口令技术;BB类采用多模态生物认证技术;BA和BB之间没有高低之分。C类采用多模态生物认证技术+智能卡/口令技术。D类在C类基础上要求进行活体检测。
在进行大类划分时,是以生物认证系统所采用的安全措施为依据的,也即破坏该认证系统的难度概率为依据的。针对采用不同的安全措施,对生物认证系统所获得的安全性是不同的。通常,破坏单生物认证系统的难度概率最低,因此其安全级别最低,将其划分为A类;破坏多模态生物认证系统的难度概率为破坏各单一子生物认证系统难度概率之积,比单生物认证系统的安全级别更高,且对于单生物认证+智能卡/口令的认证系统,破坏该系统的难度概率为破坏单生物认证系统的难度概率与破坏智能卡/口令认证系统的难度概率之积,与多模态生物认证系统的安全级别相当,因此将这两类同设为B类,为将二者加以区分,设置两个子类,分别代表这两种认证方式;破坏多模态生物认证与智能卡/口令的结合认证系统,难度概率为破坏多模态生物认证系统的难度概率与破坏智能卡/口令认证系统的难度概率之积,因此其安全性高于多模态生物认证系统,将其设为C类;同理,增加活体检测后的C类系统的安全性也高于C类系统,将其设为D类。这里,没有把四种技术的所有组合一一分类,是基于以下考虑:(1)技术之间的覆盖性,如多模态生物认证覆盖了单一生物特征认证。(2)现有技术的可靠性,如没有将单一生物认证+活体检测作为一类,因为目前提出的活体检测方法还不成熟,不能保证检测出精心制作的赝品。例如活体手指的排汗效应可能通过精心设计的物理或化学的方式加以实现。当然,在活体检测成熟后,可以将该方案列为安全级别中的一类。
本实施例中,在每个大类(BA和BB算做两个大类)的内部,根据生物认证系统的FMR划分为5个小类。该FMR的取值,是根据生物认证系统的ROC曲线,对应统一的FNMR,即保证相同可用性的前提下,得到的FMR值。表1中的FMR值是在FNMR值为5%的情况下得到的。
不同生物认证系统的FMR不同,该值主要取决于:(1)选用的生物模式。通常认为,基于生理模式的认证系统比基于行为模式认证系统具有更高的FMR,其分辨能力更强;如,一般认为指纹比签名更可靠。(2)采用的认证算法。对同一个生物模式来说,认证算法的好坏决定了系统的FMR。系统的FMR由算法的各个环节综合决定,如算法选用的匹配特征、特征抽取过程的算法、匹配算法以及最终决策阈值等都会影响到FMR值。(3)测试数据库。同一个生物模式、同一个认证算法,在不同的测试数据库上得出的ROC曲线可能有相当大的差别。(4)在特定测试数据库上,可测出一个算法的ROC曲线,在这条曲线上,给定不同的FNMR,会有不同的FMR值。
在本实施例中,在细分安全级别时没有依据生物模式,而是依据了系统的FMR,因为在同等条件下,FMR较为客观地反映了一个认证系统的模式选择和算法优劣的综合性能,例如一个认证系统即使选择了被公认可靠性好的虹膜,但如果认证算法不当,其通过FMR反应的可靠性不见得比精心设计的人脸认证系统更高。但如上所述,由于很多因素会影响认证系统的FMR,因此在表1得出的FMR划分依据是建立在如下基础之上的:(1)标准测试数据和测试标准。对各种生物模式,应该由世界范围内的权威机构建立起测试标准以及标准测试数据库。生物认证系统的ROC曲线不应该是生产厂商自己宣称的,而是由权威机构按照测试标准,在标准数据库上测试得到的。由于目前国际上只对部分生物模式有权威的测试,如指纹认证算法测试的FVC2004和FpVTE 2003,人脸认证算法测试的FRVT 2002,但这些测试只是定期的测试竞赛,参赛厂商也是自愿的。其组织机构还不是常设机构,无法进行日常的算法测试。但可以预见,随着生物认证系统的普及,各类生物认证标准的制定,肯定会出现一些常设的安全认证权威机构以及测试标准和标准测试数据库。(2)原则上,ROC曲线有无数对应的FMR-FNMR点,实际中很难直接采用它来划分安全级别类型,故本发明实施例选择在满足系统可用性的条件下,也就是确定一个合理的FNMR后,根据FMR来细分安全级别。这个合理的FNMR应该对所有模式是相同的,该值的确定目前还比较困难,因为如(1)所述,一些生物模式还没有权威测试标准和标准数据库,因此采用这些生物模式的认证系统还没有客观的ROC曲线。参考FVC2004的测试结果,本发明实施例可以暂时给定一个参考数值,如FNMR为5%,可能是合理的。
而在进行大类划分时,没有依据FMR值进行划分的原因是:不同的生物认证系统由于采用不同的安全措施,对识别欺骗攻击的能力不能单靠比较其FMR值确定,如,对于高质量的伪造品和从合法用户身上切割的生物特征,无论多小FMR的系统都无法辨别其欺骗攻击性,而如果采用活体检测等安全措施,就可以将其欺骗攻击性辨别出来。
步骤402,确定生物认证系统采用的安全措施和生物认证系统的FMR。
本步骤中,确定生物认证系统采用的安全措施的方式可以为:根据该生物认证系统的参数输入其采用的安全措施。
确定系统FMR的方式可以为:利用标准测试数据库,对生物认证系统的生物认证算法测量其ROC曲线,在ROC曲线上,对应统一设定的某个FNMR,即系统的可用性指标,确定系统的FMR。
步骤403,根据步骤402中得到的生物认证系统采用的安全措施,参照预设的安全级别分类表,确定该生物认证系统所属安全级别的大类信息。
本步骤中,根据步骤402中得到的生物认证系统采用的安全措施,参照表1,即能够确定生物认证系统属于A、BA、BB、C或是D大类。从而在粗粒度级上确定生物认证系统的安全级别。
步骤404,根据步骤402中得到的生物认证系统的FMR,参照预设的安全级别分类表中该生物认证系统所属大类的表项,确定该生物认证系统所属安全级别的小类信息,从而最终确定该生物认证系统的安全级别。
本步骤中,根据系统的FMR,参照表1中该生物认证系统所属大类的表项,如其中D类的表项,在表中找到与系统FMR所属范围一致的表项中对应的安全级别。该安全级别即为最终确定的生物认证系统的安全级别。
系统的FMR值的取值范围是0~1,在表1中安全级别的小类信息对应的是这些取值在0~1范围的FMR值。另外,在BioAPI中定义了另外一种FMR的表达方式-BioAPI FMR,它用一个32位的整数(N)表示FMR,FMR=BioAPI_FMR/(231-1)=N/(231-1)。BioAPI支持基于FMR值决定阈值。基于用N表示FMR的方式,某安全级别的大类中,小类的划分可以根据N进行,具体如下面的表2所示。
安全级别 |
FMR |
N |
A0 |
≥1×10<sup>-2</sup> |
[21474837,2147483647] |
A 1 |
[1×10<sup>-3</sup>,1×10<sup>-2</sup>) |
[2147484,21474836] |
A2 |
[1×10<sup>-4</sup>,1×10<sup>-3</sup>) |
[214749,2147483] |
A3 |
[1×10<sup>-5</sup>,1×10<sup>-4</sup>) |
[21475,214748] |
A4 |
<1×10<sup>-5</sup> |
[0,21474] |
BA0 |
≥1×10<sup>-2</sup> |
[21474837,2147483647] |
BA1 |
[1×10<sup>-3</sup>,1×10<sup>-2</sup>) |
[2147484,21474836] |
BA2 |
[1×10<sup>-4</sup>,1×10<sup>-3</sup>) |
[214749,2147483] |
BA3 |
[1×10<sup>-5</sup>,1×10<sup>-4</sup>) |
[21475,214748] |
BA4 |
<1×10<sup>-5</sup> |
[0,21474] |
BB0 |
≥1×10<sup>-3</sup> |
[2147484,2147483647] |
BB 1 |
[1×10<sup>-4</sup>,1×10<sup>-3</sup>) |
[214749,2147483] |
BB2 |
[1×10<sup>-5</sup>,1×10<sup>-4</sup>) |
[21475,214748] |
BB3 |
[1×10<sup>-6</sup>,1×10<sup>-5</sup>) |
[2148,21474] |
BB4 |
<1×10<sup>-6</sup> |
[0,2148] |
C0 |
≥1×10<sup>-3</sup> |
[2147484,2147483647] |
C 1 |
[1×10<sup>-4</sup>,1×10<sup>-3</sup>) |
[214749,2147483] |
C2 |
[1×10<sup>-5</sup>,1×10<sup>-4</sup>) |
[21475,214748] |
C3 |
[1×10<sup>-6</sup>,1×10<sup>-5</sup>) |
[2148,21474] |
C4 |
<1×10<sup>-6</sup> |
[0,2148] |
D0 |
≥1×10<sup>-3</sup> |
[2147484,2147483647] |
D1 |
[1×10<sup>-4</sup>,1×10<sup>-3</sup>) |
[214749,2147483] |
D2 |
[1×10<sup>-5</sup>,1×10<sup>-4</sup>) |
[21475,214748] |
D3 |
[1×10<sup>-6</sup>,1×10<sup>-5</sup>) |
[2148,21474] |
D4 |
<1×10<sup>-6</sup> |
[0,2148] |
表2
在表2中,描述了N与各个小类间的对应关系,至于大类的划分与表1所示的一致,这里就没有标出。这样,预先设置的安全分类表中可以存储FMR或者存储N。方便与BioAPI标准接轨。
至此,本实施例中确定生物认证系统的安全级别的方法流程结束。应用该流程,即可确定生物认证系统所属的安全级别,并且可以其安全级别为基础,根据需要配置系统,生产不同安全等级的产品,满足客户的不同层次需要。
上述为本发明实施例提供的确定生物认证系统安全级别的方法具体流程。本实施例还提供了确定生物认证系统安全级别的设备的具体结构,可以用于实施图4所示的方法流程。图5为本实施例中确定生物认证系统的安全级别的设备具体结构图。如图5所示,该设备包括:存储模块310、安全措施获取模块320、算法特征获取模块330和级别判定模块540。其中,级别判定模块540包括粗粒度判定子模块541和细粒度判定子模块542。
在该设备中,存储模块310,用于存储预先设置的安全级别分类表,如表1。安全措施获取模块320,用于获取生物认证系统所采用的安全措施,可以是接受用户输入的方式,或者是主动探测的方式,并将得到的安全措施类别发送给级别判定模块540中的粗粒度判定子模块541。算法特征获取模块530,用于确定生物认证系统的FMR,可以是由用户输入或者是主动测量生物认证系统的ROC曲线,并在得到的ROC曲线上,根据设定的FNMR确定FMR,将该FMR发送给级别判定模块540中的细粒度判定子模块542。
在级别判定模块540中,粗粒度判定子模块541,用于接收安全措施获取模块320发送的生物认证系统采用的安全措施,调用存储模块510中的安全级别分类表,参照该表,确定该生物认证系统安全级别的大类信息,再将该大类信息发送给细粒度判定子模块542。细粒度判定子模块542,用于接收算法特征获取模块330发送的生物认证系统的FMR,还用于接收粗粒度判定子模块542发送的大类信息,并根据接收的FMR和大类信息,调用存储模块510中的安全级别分类表,参照该表中对应的大类信息的表项,确定该生物认证系统的小类信息,从而最终确定安全级别。
在上述方法流程和设备结构的具体实施方式中,对某生物认证系统,确定其所属安全级别的大类信息和小类信息是先后执行的,即在图4中,先执行步骤403,而后执行步骤404。事实上,也可以同时确定生物认证系统所属安全级别的大类和小类信息,或者以相反的顺序执行,然后再通过对大类和小类信息的组合得到最终的安全级别。例如,在步骤402确定了生物认证系统采用单一的指纹识别,并得知了该系统的FMR,可以一方面根据采用的是单生物认证,参照表1确定大类信息为A类,同时,另一方面确定根据其FMR值为0.5×10-4,参照表1确定小类信息为第4小类。将二者信息组合,即得到该指纹认证系统的安全级别为A3。
对应上述同时或以相反顺序确定生物认证系统所属安全级别的大类和小类信息的情况,其设备的具体实施方式与图5所示稍有不同。区别在于,在设备的级别判定模块540中进一步增加最终判定子模块543。于是,级别判定模块540的具体实施方式为:
在级别判定模块540中,粗粒度判定子模块541,用于接收安全措施获取模块320发送的生物认证系统采用的安全措施,调用存储模块310中的安全级别分类表,参照该表,确定该生物认证系统安全级别的大类信息,再将该大类信息发送给最终判定子模块543。细粒度判定子模块542,用于接收算法特征获取模块330发送的生物认证系统的FMR,调用存储模块310中的安全级别分类表,参照该表,确定该生物认证系统的小类信息,再将该小类信息发送给最终判定子模块543。最终判定子模块543,用于接收粗粒度判定子模块542发送的大类信息和细粒度判定子模块543发送的小类信息,并将二者进行组合得到最终的安全级别。
对于其他的存储模块、安全措施获取模块和算法特征获取模块的结构和功能,与图5所示的设备实施方式相同。
由上述可以看出,本实施例预先设置安全级别分类表,在为生物认证系统确定安全级别时,首先确定生物认证系统采用的安全措施和生物认证系统的FMR。然后根据其采用的安全措施和预设的安全级别分类表,确定该生物认证系统所属粗粒度级上的安全级别。通过粗粒度级的安全级别确定,可以将采用不同的安全措施对生物认证系统抵御攻击的提升能力反应出来。最后,根据系统的FMR和预设的安全级别分类表,确定该生物认证系统在其所属的粗粒度级的安全级别内的细化的安全级别。于是可以对采用同类安全措施的生物认证系统的安全性作进一步细致确定。从而最终确定生物认证系统的安全级别。并以确定的安全级别为基础,根据需要配置系统,生产不同安全等级的产品,满足客户的不同层次需要。
在本实施例中,利用表格的形式表示预先设置的安全级别分类,及其对应的分类标准。当然,也可以采用其他的方式表示,这里就不再一一赘述。
本实施例中,按照表1的方式确定了四个大类,其中B大类包括两个子类。事实上,也可以按照其他方式进行分类,分成的具体大类的数量可以调整,其具体分类方式可以参照该类别的安全认证系统被破坏的难度概率来进行设定。同时,表1中的每个大类中包含五个小类,事实上,也可以根据需要,划分为更多或更少的小类数。另外,各个大类中小类的确定是依据生物认证系统的FMR值确定的,当然,由于FMR值与FNMR是相互关联的,也可以在固定FMR的情况下,以FNMR为依据进行小类的划分。只是,随着FNMR值的增加,系统安全性也是增加的。具体的分类方式这里就不再赘述。
以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。