生物信息认证方法

文档序号:7959820阅读:303来源:国知局
专利名称:生物信息认证方法
技术领域
本发明涉及网络安全技术领域,具体涉及一种生物信息认证方法。
背景技术
随着网络快速发展,电子商务得到了大量的应用,网上银行、交易等也愈发普遍。近年来网络欺诈,帐户盗用的现象日益增多,以传统密码方式保护个人帐户信息显然已经不足以起到安全效果。因此,需要为用户提供更高安全层次的个人信息保障、认证机制。
PKI(Public Key Infrastructure,公钥认证体系)目前已经得到了一定程度的应用。该认证机制由权威机构发放公钥证书给终端用户,并在证书中存放了用户的公钥以及其他信息。与公钥相对应的私钥由用户自己保管,公钥与私钥为唯一确定的关系,从公钥不能够推断出私钥,但公钥加密的信息可以通过私钥唯一解密。PKI的这种特性,能够保证验证者根据用户是否能够提供私钥确认用户是否为公钥证书上声明的实体,进而保证了用户信息不会被非法窃取。在该机制中,保护用户私钥是关键,私钥一般是以电子信息的方式存放在某些硬件上面。如果私钥丢失,也就意味着用户的个人信息失去了保障。
利用个人生物信息(例如,指纹、虹膜等)进行身份验证是一种保护资源的有效方法。考虑生物信息本身的特殊性以及网络身份认证的特殊环境,将生物信息与PKI相结合形成一种更为安全的认证架构成为一个非常有竞争力的研究领域。
TSM(Telebiometric System Mechanism)是目前探讨生物信息与PKI相结合实现公网上更为安全的认证的一个项目,其将TLS(Transport Layer Security,传输层安全)与生物认证相结合,以生物信息进一步保证终端用户即为注册用户。
TSM根据生物模板(Biometric Template用户注册时权威机构提取用户生物信息用来为后面的验证提供样板依据)存放位置、生物认证进行的实体位置将公网上进行生物认证划分为9种类型,如下表1所示表1 其中,Client为用户使用的终端(一般可以采集用户的生物信息);Server为提供服务的设备,必须对用户进行验证后才准许其访问自身提供的资源;TTP(Trusted Third Party,可信的第三方)为第三方,一般为Client和Server都信任的机构;Local为本地认证模型,模板存储在本地,将采集的生物信息与模板进行比对,形成生物信息认证结果也在本地进行;Download认证模型,模板不在本地,但是生物认证在本地,因此需要从Server将生物模板下载到本地,然后进行生物认证;RFC3739 Client/Server Matching是借鉴了RFC3739的认证模型,为客户端或者服务器端认证;Attached表示客户端将本地存储的生物模板信息与其他信息一起发送给Server,由Server进行匹配;Center表示客户端仅负责采集生物信息,生物模板存储在Server处,由Server进行匹配;Matching sourcing by Client/Server表示Client/Server端存储有生物模板,将此生物模板与Client端采集的生物信息以attached(附加)的方式发送给TTP,由TTP进行匹配;Storage & Matching Outsourcing表示生物模板存储在TTP,Client端将采集的生物信息发往TTP,由TTP进行匹配。
例如,TSM中的Local认证模型如图1所示。
TSM主要针对两种情况(1)用户公钥证书与Client(客户端)的公钥证书为一个(例如个人电脑,个人手机);(2)用户公钥证书与Client的公钥证书为不同的两个(例如实验室门禁系统),将生物认证与基于PKI的TLS(传输层安全)协议相结合,提供了生物信息与公钥相结合的认证架构。
TSM在其生物认证模型中给出了生物验证的过程。在Client发送给Server的Biometric Client Hello(生物认证请求)消息中,包含了客户端可以提供的生物数据类型、生物验证模型等信息。如果支持多种验证方案,以列表形式列出,而且TSM给出了其ASN.1编码。但这种ASN.1编码结构还存在以下缺点(1)对于生物数据类型与生物认证模型不是唯一对应的时候,ASN.1表示的BiometricMethod(认证方案)会很复杂,使得Biometric Client Hello消息中的数据太长,从而占用过多的网络及系统资源;(2)当有多种认证方案时,ASN.1表示的ListofBiometricMethod(认证方案列表)对于Server选择使用哪种方案没有提供有效信息。
另外,在TSM的处理过程中,对于download等要求生物模板从Server下载到Client端的验证模式,TSM并没有说明通过何种方式下载;对于需要TTP参与的情况,例如MatchingOutsourcingByClient模式,TSM并没有说明TTP如何与Client及Server进行通信;而且,如果一种验证方案验证失败,Server仅将下一个验证方案发送给Client端,这种处理方式不利于Client端检测自身问题,形成必要的报告,与用户主或者与维护人员进行必要的信息交互。

发明内容
本发明的目的是提供一种生物信息与公钥相结合的认证方法,以克服现有技术中在有多种认证方式时Client和Server之间的传递的信息复杂,且不能传递足够的有效信息的缺点,对Client和Server的交互信息进行优化,节省网络及系统资源,提高认证效率。
为此,本发明提供如下的技术方案
一种生物信息认证方法,所述方法包括步骤当客户端支持多种认证方案时,确定这些认证方案的优先级顺序;客户端将其支持的多种认证方案通过生物认证请求消息发送给服务器,在该请求消息中,所述多种认证方案按照优先级排序;服务器优先选择优先级高的认证方案,并将其选定的认证方案通过生物认证响应消息传送给客户端;客户端按照服务器选定的认证方案进行生物认证,并将认证结果通知服务器。
所述多种认证方案以列表形式列出,并且每个认证方案列表包括一种或多种网络认证模型。
当所述认证方案列表包括多种网络认证模型时,以客户端认可的优先级顺序排列这些网络认证模型。
可选地,所述方法进一步包括如果服务器选定的认证方案中的网络认证模型要求服务器将客户的生物模板发送给客户端,则在所述生物认证响应消息中包含该生物模板。
可选地,所述方法进一步包括如果服务器选定的认证方案中的网络认证模型要求服务器与可信的第三方交换信息,则服务器与所述可信的第三方进行通信,完成生物认证过程。
所述服务器与所述可信的第三方进行通信,完成生物认证过程的步骤包括服务器检查是否有预先商议好的与所述第三方的通信方式;如果有,则通过所述预先商议好的通信方式进行通信;如果没有,则服务器通过协商方式建立与所述可信的第三方的安全通信通道,并通过该安全通信通道进行通信。
如果服务器通过协商方式建立与所述可信的第三方的安全通信通道失败,则服务器重新选定认证方案发送给客户端进行重认证,或者通知客户端认证过程结束。
可选地,所述方法进一步包括如果服务器选定的认证方案中的网络认证模型要求客户端与可信的第三方交换信息,则客户端通过协商方式建立与所述可信的第三方的安全通信通道进行通信,完成生物认证过程。
如果客户端通过协商方式建立与所述可信的第三方的安全通信通道失败,则客户端直接通知服务器认证失败,并在该通知消息中携带失败原因信息。
如果所述客户端或者所述第三方判定生物认证失败,则在发送给服务器的认证结果通知消息中携带失败原因信息。
如果服务器判定生物认证失败,则在其发送给客户端的重认证或者认证结束消息中,携带失败原因信息。
由以上本发明提供的技术方案可以看出,本发明当客户端支持多种认证方案时,确定这些认证方案的优先级顺序,并将其按照优先级排序,通过生物认证请求消息发送给服务器,从而使服务器可以有针对性地优先选择优先级高的认证方案,提高认证效率;而且当一种生物数据类型对应多种网络验证模型时,将这些网络验证模型以优先级顺序包含在一个认证方案列表传送给服务器,从而减小了客户端发送给服务器的生物认证请求消息的长度,大大节省了网络资源。更进一步地,在认证失败后,通过对现有Biometric Client Verify消息和Biometric Retry Request消息以及Biometric Finished消息的扩展,使客户端和/或服务器端将认证失败的原因传送给对方,从而可以使客户端检测自身问题,形成必要的报告,为用户及系统维护人员提供有效的参考信息,同时使服务器可以参考失败原因,有效地选择下一种认证方案,提高了认证的有效性。


图1是TSM中的Local认证模型;图2是TSM中用户公钥证书与Client公钥证书相同时TLS会话的生物认证模型;图3是TSM中用户公钥证书与Client公钥证书不同时TLS会话的生物认证模型;图4是本发明方法的实现流程图;图5是利用本发明方法进行生物认证过程中客户端、服务器及TTP的消息交互流程。
具体实施例方式
为了使本技术领域的人员更好地理解本发明方案,首先对TSM中的两种认证情况进行简单说明。
参照图2所示用户公钥证书与Client公钥证书相同时TLS会话的生物认证模型在该认证模型中,用户公钥证书与Client的公钥证书为一个,例如个人电脑、个人手机等。Client与用户的公钥证书为同一个,Server(服务器)验证了Client的证书,也就验证了用户。因此TLS通道建立后,Server即确信了用户的身份,随即可与Client展开生物信息验证。
参照图3所示用户公钥证书与Client公钥证书不同时TLS会话的生物认证模型在该认证模型中,用户公钥证书与Client的公钥证书为不同的两个,例如实验室门禁系统。Server首先验证Client的公钥证书,建立与Client的TLS通道。在这个通道上,Server通过TLS Handshake with Biometric Authentication(TLS握手与生物认证的结合),对用户进行PKI公钥认证以及生物认证,认证结束后,Server与用户之间建立TLS的会话通道。
其中,建立TLS会话通道的协商方法与TLS协议相同。在TLS会话成功建立后,随即开始进行生物认证。
本发明即针对上述这两种及与其类似的生物认证模型,对Client端和Server间的消息交互做了进一步的优化,以保证Client端和Server能够相互提供足够的所需信息,并提高认证效率。
本发明所提供的消息及交互过程不仅适用于上述这两种生物认证模型,也可应用于其他类似架构的生物认证模型,但为更方便、清楚地描述本发明,以下以上述第一种生物认证模型为例说明。
下面结合附图和实施方式对本发明作进一步的详细说明。
参照图4,图4示出了本发明方法的实现流程图步骤401当客户端支持多种认证方案时,确定这些认证方案的优先级顺序。
可以根据应用需要及客户端的实际能力,预先设定客户端支持的这些认证方案的优先级顺序。
步骤402客户端将其支持的多种认证方案通过生物认证请求消息发送给服务器,在该请求消息中,所述多种认证方案按照优先级排序。
在生物认证请求消息中,包含客户端可以提供的生物数据类型,比如,指纹、虹膜、耳形等,还包括客户端支持的网络认证模型,比如Local、Download、RFC3739 Client Matching、Attached、Center、RFC3739 Server Matching、MatchingOutsourcing by Client、Matching Outsourcing by Server、Storage & MatchingOutsourcing中的任一种或多种。另外,如果认证过程需要TTP参加,则在该消息中还包括TTP的信息等。
所述多种认证方案可以以列表的形式列出,并按照优先级排序。而且为了节省消息负荷,每个认证方案列表可以包括一种或多种网络认证模型。
对于客户端请求的生物认证方案,可以通过ASN.1编码方式描述如下RequestBiometricModel::=SEQUENCE{requestNum INTEGER,(认证方案个数)listofBiometricMethod BiometricMethod(认证方案列表)}
其中,认证方案列表以客户端确定的优先级顺序排列。ListofBiometricMethod::=SET SIZE(requestNUM)OF BiometricMethodBiometricMethod::=SEQUENCE{biometricType BiometricType,--(生物数据类型,CBEFF定义的类型)biometricFunctionProvider BFPSchema,--(生物功能提供信息,BioAPI定义的类型)NetworkAuthenticationModelInfo NetworkAuthenticationModelInfo,(网络认证模型信息)thirdPartyInfo UTF8String(可信任的第三方信息)}网络认证模型信息内容包括NetworkAuthenticationModelInfo::=SEQUENCE{ModelNum INTEGER,(网络认证模型的个数)listofNetworkAuthenticationModel NetworkAuthenticationModel(网络认证模型列表)}其中,网络认证模型以优先级顺序排列。
NetworkAuthenticationModel定义及ASN.1编码同现有技术,可以为前面提到的9种生物认证模型以及其他类似的生物认证模型。
步骤403服务器优先选择优先级高的认证方案,并将其选定的认证方案通过生物认证响应消息传送给客户端。
服务器根据客户端发送的RequestBiometricModel中的多个认证方案列表,结合自身的特点选择其可以接受的认证方案列表,按照优先级选择最优者首先发送给客户端,同时将每一种方案的认证要求参数一起发送给客户端。如果服务器选定的网络认证模型,指示服务器必须发送Template(模板)给客户端,比如,服务器选定的网络认证模型为download模式时,则服务器需要在给客户端的应答消息中带有该Template信息,即将TemplateID发送给服务器,TemplateID的定义与TSM相同。
本发明对Biometric Server Hello(生物认证响应)消息的扩展如下BiometricAuthenticationRequest SEQUENCE{biometricMethod BiometricMethod,(生物认证方案)requestFMR BioAPI-FAR,--(要求满足的误配率)requestTrialNumber INTEGER(1..15),(允许重试次数)requestQuality INTEGER(0,..255)(要求的数据质量)templateID TemplateID(OPTIONAL)(生物模板标识,为可选)}END如果服务器根据客户端发送的RequestBiometricModel,确认必须与TTP通信,则服务器此时需要确认与TTP的通信模式。如果有事先商议好的通信方法,则采用该通信方法;否则,服务器在发起与TTP的PKI(公钥认证体系)证书认证基础上建立安全通道;另外,还可以通过TLS(传输层安全)协商建立与TTP的安全通道。
这样,如果服务器选定认证方案后,确认需要与TTP通信,则首先按照服务器自身的策略配置以及TTP的信息,与TTP协商通信通道。如果协商失败,则服务器认为本次验证失败,可以选择结束与客户端的认证(发送BiometricFinished消息),或者选择下一个认证方案,通知客户端重新进行认证。
步骤404客户端按照服务器选定的认证方案进行生物认证,并将认证结果通知服务器。
客户端收到服务器的Biometric Server Hello(生物认证响应)消息后,如果在该消息中服务器确定的网络认证模型为Download模型,则客户端需要进一步检查该消息的BiometricAuthenticationRequest结构中是否包含模板信息,如果未包含,则客户端认为该消息错误,客户端通知服务器本次认证失败。
如果服务器选择的认证模型要求客户端与TTP通信,则客户端首先发起TLS协商,建立与TTP的安全通道。
例如,对于RFC3739 Client matching model,或者Matching Outsourcing byClient Model,或者Storage & Matching Outsourcing Model认证模型,客户端首先与TTP利用TLS协议协商安全通道,如果协商失败,则客户端通知服务器本次认证失败。
如果服务器确定的网络认证模型是由客户端本身进行匹配的认证模型,比如,Local模型,Download模型,RFC3739 ClientMatching模型等,则客户端按照服务器选定的认证方案进行生物认证时,客户端采集数据并执行认证后,如果数据结果本身不能够满足服务器的生物认证响应消息中的认证要求,例如FMR(错误匹配率),客户端认为本次认证失败,需要通知服务器本次认证失败。
为了使客户端和服务器了解认证失败的原因,以便客户端更好地检测自身问题,形成必要的报告,为用户或者维护人员与客户端进行必要的信息交互提供参考,并且便于服务器有针对性地选择合适的网络认证模型,提高认证效率。
因此,本发明对客户端发送给服务器的Biometric Client Verify消息进行扩展,在该消息中携带认证失败原因,其ASN.1编码如下BiometricClientVerifyResult::={BiometricVerifyCode INTEGER,(表明验证结果,如果失败,给出失败原因)BiometricClientVerifyContents BiometricClientVerifyContents,(同TSM定义,当BiometricClientVerifyResult显示本次失败时,Biometric Client Verify中可以不含有Contents成员)}服务器收到客户端的执行结果后,如果判定一种认证方案结果失败,并决定选择下一个认证方案发送给客户端重新进行认证时,除了告知客户端新的认证方案参数外,还需要通知客户端认证错误原因。同样,如果是服务器与TTP协商失败,选择下一个认证方案,通知客户端重新进行认证时,也需要服务器通知客户端认证错误原因。同样,如果服务器决定中止所有的认证,则通知客户端错误原因也是必要的。
这些错误原因可以是硬件操作失败、通信通道建立失败、TTP操作失败、客户端采集数据、匹配结果等不满足服务器端的要求等原因导致的。该错误原因以BiometricVerifyCode定义,类型为整型。
为此,本发明对客户端发送给服务器的Biometric Retry Request(生物重认证请求)消息以及Biometric Finished(生物认证完成)消息进行扩展,使其携带认证失败原因信息。
扩展后的ASN.1编码如下BiometricRetryRequest::=BEGINEBiometricVerifyCode INTEGER,(表明验证结果,如果失败,给出失败原因)biometncAuthenticationRequest SEQUENCE{biometricMethodBiometricMethod,requestFMR BioAPI-FAR,requestTrialNumber INTEGER,requestQuality INTEGER}ENDBiometric Finished::=BEGINbiometricAuthenticationResult::=INTEGEREND下面参照图5进一步说明本发明进行生物认证过程中客户端、服务器及TTP的消息交互过程。
步骤1.Client发送Biometric Client Hello(生物认证请求)消息给Server,在该消息中如果包含多种认证方案,则这些方案按照优先级顺序排列,并且每种认证方案中包含一个或多个网络认证模型,这些网络认证模型也以优先级排序;步骤2.Server根据Client发送的认证方案和自身限制,选定一种认证方案;步骤3.Server确定的认证方案中的网络认证模型是否需要Server与TTP交换信息,比如Matching sourcing by Server认证模型;如果需要,则进到步骤4,否则,进到步骤6;步骤4.Server通过协商方式建立与TTP的安全通信通道,或者按照内定的策略与TTP通信;步骤5.如果安全通信通道建立成功,则Server根据网络验证模型与TTP进行通信;步骤6.如果Server确定的认证方案中的网络认证模型不需要Server与TTP交换信息,则直接向Client发送Biometric Server Hello(生物认证响应)消息,在该消息中包含服务器端选定的生物数据类型,网络验证模型,对于测量数据的质量等信息列表。而且,如果服务器端选定的网络验证模型需要Server将客户的生物模板发送给Client,则在该消息中还包含所述生物模板信息;步骤7.Client根据收到的消息判断Server确定的认证方案中的网络认证模型是否需要Client与TTP交换信息,比如Matching sourcing by Client认证模型或者Storage & Matching Outsourcing认证模型;如果需要,则进到步骤8,否则,进到步骤10;步骤8.Client通过协商方式建立与TTP的安全通信通道;步骤9.如果安全通信通道建立成功,则Client根据网络验证模型与TTP进行通信;步骤10.如果Server确定的认证方案中的网络认证模型不需要Client与TTP交换信息,则Client按照该网络认证模型对其采集的生物信息与生物模板进行匹配;步骤11.Client将执行结果通过Biometric Client Verify(生物认证校验)消息发送给Server;步骤12.Server根据该执行结果确定是否执行重认证或结束认证,如果需要重认证,则进到步骤13;如果结束认证过程,则进到步骤14;步骤13.如果验证的结果为失败,则Server根据自身信息与Client端发送的信息再次选定一套验证方案通过Biometric Retry Request(生物重认证请求)消息发送给Client;步骤14.如果Server确认Client通过认证,或者自行决定结束认证过程,则向Client发送Biometric Finished(生物认证完成)消息。
如果需要,则在上述Biometric Retry Request消息、Biometric Client Verify消息及Biometric Finished消息中包含认证错误原因信息。
另外,如果在步骤4中Server通过协商方式建立与TTP的安全通信通道失败,则Server重新选定认证方案发送给客户端进行重认证,或者通知客户端认证过程结束。
如果在步骤8中Client通过协商方式建立与TTP的安全通信通道失败,则客户端直接通知服务器认证失败,并在该通知消息中携带失败原因信息。
如果是Client或TTP进行生物认证失败,则在发送给服务器的认证结果通知消息中携带失败原因信息。
虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。
权利要求
1.一种生物信息认证方法,其特征在于,所述方法包括步骤当客户端支持多种认证方案时,确定这些认证方案的优先级顺序;客户端将其支持的多种认证方案通过生物认证请求消息发送给服务器,在该请求消息中,所述多种认证方案按照优先级排序;服务器优先选择优先级高的认证方案,并将其选定的认证方案通过生物认证响应消息传送给客户端;客户端按照服务器选定的认证方案进行生物认证,并将认证结果通知服务器。
2.根据权利要求1所述的方法,其特征在于,所述多种认证方案以列表形式列出,并且每个认证方案列表包括一种或多种网络认证模型。
3.根据权利要求2所述的方法,其特征在于,当所述认证方案列表包括多种网络认证模型时,以客户端认可的优先级顺序排列这些网络认证模型。
4.根据权利要求1所述的方法,其特征在于,所述方法进一步包括如果服务器选定的认证方案中的网络认证模型要求服务器将客户的生物模板发送给客户端,则在所述生物认证响应消息中包含该生物模板。
5.根据权利要求1所述的方法,其特征在于,所述方法进一步包括如果服务器选定的认证方案中的网络认证模型要求服务器与可信的第三方交换信息,则服务器与所述可信的第三方进行通信,完成生物认证过程。
6.根据权利要求5所述的方法,其特征在于,所述服务器与所述可信的第三方进行通信,完成生物认证过程的步骤包括服务器检查是否有预先商议好的与所述第三方的通信方式;如果有,则通过所述预先商议好的通信方式进行通信;如果没有,则服务器通过协商方式建立与所述可信的第三方的安全通信通道,并通过该安全通信通道进行通信。
7.根据权利要求6所述的方法,其特征在于,如果服务器通过协商方式建立与所述可信的第三方的安全通信通道失败,则服务器重新选定认证方案发送给客户端进行重认证,或者通知客户端认证过程结束。
8.根据权利要求1所述的方法,其特征在于,所述方法进一步包括如果服务器选定的认证方案中的网络认证模型要求客户端与可信的第三方交换信息,则客户端通过协商方式建立与所述可信的第三方的安全通信通道进行通信,完成生物认证过程。
9.根据权利要求8所述的方法,其特征在于,如果客户端通过协商方式建立与所述可信的第三方的安全通信通道失败,则客户端直接通知服务器认证失败,并在该通知消息中携带失败原因信息。
10.根据权利要求6或8所述的方法,其特征在于,如果所述客户端或者所述第三方判定生物认证失败,则在发送给服务器的认证结果通知消息中携带失败原因信息。
11.根据权利要求1或7所述的方法,其特征在于,如果服务器判定生物认证失败,则在其发送给客户端的重认证或者认证结束消息中,携带失败原因信息。
全文摘要
本发明公开了一种生物信息认证方法,包括当客户端支持多种认证方案时,确定这些认证方案的优先级顺序;客户端将其支持的多种认证方案通过生物认证请求消息发送给服务器,在该请求消息中,所述多种认证方案按照优先级排序;服务器优先选择优先级高的认证方案,并将其选定的认证方案通过生物认证响应消息传送给客户端;客户端按照服务器选定的认证方案进行生物认证,并将认证结果通知服务器。利用本发明,可以节省网络及系统资源,提高认证效率。
文档编号H04L29/06GK101051897SQ200610074288
公开日2007年10月10日 申请日期2006年4月7日 优先权日2006年4月7日
发明者刘淑玲 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1