用于连续用户认证的方法和系统的制作方法

文档序号:6559652阅读:106来源:国知局
专利名称:用于连续用户认证的方法和系统的制作方法
技术领域
本发明总体上涉及用户认证技术,并且更特别地涉及用于提供连续用户认证的技术。
背景技术
对于物理和逻辑访问,对用户的身份声明进行认证是确保系统、网络、服务和设施的安全的重要步骤。现有的用户认证通常基于用户对例如密码或个人身份号码(PIN)之类的单个验证对象的知识或基于对例如钥匙或卡之类的单个验证对象的持有进行。其他现有的认证技术包括使用例如指纹、声纹、虹膜扫描或面部扫描之类的生物度量特征作为验证对象。
验证通常通过将在尝试访问时从用户获得的验证对象与先前存储的对象相比较来完成。例如,生物度量系统典型地产生度量所输入的生物度量与参考生物度量模板的接近程度的相似度分值。然后,将门限应用于该分值,以对是接受还是拒绝给定的用户进行二进制判决。基于持有的用户认证系统基于物理设备(例如钥匙)或虚拟设备(例如数字证书)的存在来进行二进制的接受/拒绝判决。对于知识验证,单个挑战会产生基于用户响应的正确性的二进制判决。
当为进行认证的目的而向用户提出多个挑战时,就称用户认证是连续的。连续用户认证可以通过采用按照相同模式(例如只提出知识验证问题)的一系列认证挑战或采用多种验证模式(例如既提出随机知识挑战又询问一个或多个物理钥匙)来完成。依赖于生物度量的类型,基于生物度量的连续认证是有可能的。例如,指纹是一致的,并且连续的挑战是不利的,原因是这些挑战会捕获同一相同指纹。然而,人的声音会发生变化,并且因此连续的声音生物度量(“说话者识别”)是有利的。
当利用连续用户认证时,用于进行关于接受或拒绝用户的二进制判决的算法或规则组有可能比简单的门限更复杂,原因是来自各交互轮(挑战)的结果有可能是矛盾的。一种策略是规则组规定在每轮中,是接受用户、拒绝用户还是向用户提出新的挑战。
已经提出或建议了多种技术用于将使用会话生物度量的说话者识别和知识验证与基于所测量的生物度量(说话者识别)和知识响应这两者来管理用户交互的策略相结合。例如,已转让给本发明的受让人并在此通过参考引入的于2002年10月30日提交的题目为“Methods andApparatus for Dynamic User Authentication Using CustomizableContext-Dependent Interaction Across Multiple Verification Objects”的序列号为10/283,729的美国专利申请公开了一种支持动态的用户认证的认证框架,这种动态的用户认证结合了使用共享的上下文的多个认证对象并允许可定制的交互设计以适合于变化的用户偏爱和处理事务/应用要求。还可以参见已转让给本发明的受让人并在此通过参考引入的题目为“A Way to Identify Using Both Voice Authentication and PersonalQueries”的美国专利No.6,529,871。
尽管这些会话生物度量技术以高度的灵活性、准确性、方便性和健壮性提供了改善的认证框架,但这些技术遭受多种限制,如果克服了这些限制,会进一步提高这些用户认证技术的效率和安全性。特别地,上述会话生物度量技术为每个挑战产生二进制判决。
因此,存在为每个挑战产生连续值分值的会话生物度量的方法和设备的需要。连续值分值允许在设置安全级别之前融合多种生物度量系统。还存在从知识验证系统测量相似度分值的方法和设备的需要。还存在基于测量的知识分值来管理连续认证系统的方法和设备的需要。

发明内容
总体上,提供了采用描述每个安全挑战的特征的一个或多个错误率对用户进行连续认证的方法和设备。根据本发明的一个方面,采用至少一个知识挑战来对用户进行挑战,以得到中间认证结果,并且这种用户挑战会持续,直到累积的认证结果满足一个或多个标准。中间认证结果基于例如对数似然比,并且累积的认证结果是例如各对数似然比之和。
中间认证结果基于例如针对每个知识挑战的误接受和误拒绝的错误概率中的一个或多个错误概率。误接受的错误概率描述了不同的用户正确地回答知识挑战的概率。误拒绝的错误概率描述了真正的用户未正确地回答知识挑战的概率。
根据本发明的另一个方面,基于关于给定挑战的已知信息或现场数据来调整误接受和误拒绝的错误概率中的一个或多个错误概率。例如,可以通过适应于反映测量的FA(误接受)值和FR(误拒绝)值的现场数据来改变FA值和FR值。还可以改变FA和FR值以反映预料的安全突破。由本发明提供的连续分值使得可以进行更容易的适应,原因是这些分值隐含了具有诸如FA和FR之类的参数的统计模型。此外,由本发明提供的连续分值使得可以将累积的认证结果和中间认证结果中的一个或多个结果与根据另一种验证方法(诸如基于生物度量或持有的认证)得到的结果相结合。
通过参考以下详细的描述和附图,将获得对本发明以及本发明的另外的特征和优点的更全面的理解。


图1是示出根据本发明的用于实现连续认证的认证系统的客户端-服务器体系结构的框图;图2是示出根据本发明的用于实现连续认证的示例性计算系统环境的框图;图3是示出根据本发明的一个实施例的多个验证对象的示例性详细说明的示图;图4是示出根据本发明的一个实施例的包括多个验证对象的用户模型的示例性详细说明的示图;图5是示出结合了本发明的特征的连续认证系统的框图;以及图6是描述结合了本发明的特征的连续认证处理的示例性实现的流程图。
具体实施例方式
本发明提供了一种连续认证系统。所公开的连续认证系统基于知识验证,目的是针对每一个交互轮测量相似度分值。所公开的连续认证系统连续地估计用户的身份声明为真实的概率以及用户不是他或她所声明的那个人的概率。
在用户认证期间,向用户提出一系列挑战,并将每个用户响应与一个或多个模型相比较,产生中间认证判决(诸如对数似然比(LLR))。在每一个交互轮中,将来自各轮的中间判决相结合(诸如LLR之和),以产生累积的认证结果,以最终地接受或拒绝用户的身份声明。用于连续认证处理的模型还可以在认证期间根据用户数据进行调整,并且还可以结合执行说话者识别(或另一种形式)的声音生物度量模型使用,以完成用户认证任务。
根据本发明的一个方面,用户或背景模型包括或者这两者都包括描述每个安全挑战的特征的误接受(FA)和误拒绝(FR)的错误率。FA描述了不同的用户正确地回答安全挑战的概率,并且FR描述了真正的用户未正确地回答的概率。指定给每个挑战的FA和FR可以只在背景模型中,从而假定所有的用户具有相同的FA和FR,或者此外,用户特定的FA和FR可以被指定给每个挑战并存储于用户模型中。如以下结合图4讨论的,用户模型还包括对安全挑战的正确响应。
根据本发明的另一个方面,可以通过适应于反映测量的FA值和FR值的现场数据来改变FA值和FR值。还可以改变FA值和FR值以反映预料的安全突破。例如,在社会保险号的库被盗的情况下,可以将指定给社会保险号挑战的FA更新到比通常地预料的更高。由本发明提供的连续分值使得可以进行更容易的适应,原因是这些分值隐含了具有诸如FA和FR之类的参数的统计模型。
采用示例性客户端-服务器体系结构来说明本发明。然而,应当理解,本发明不限于与任何特定的系统体系结构一起使用。相反,本发明可以更一般地应用于希望提供提供高度的灵活性、准确性、方便性和/或健壮性的认证框架的任何系统体系结构。也就是说,本发明的技术可以在单个计算机系统上或在由合适的网络连接的多个计算机系统上实现,以下将描述其例子。
在一个实施例中,交互设计基于实现为使用XML(可扩展标记语言)的统计状态机的认证策略。此外,存在规定相关认证对象(例如要询问的问题或要执行的动作)的文件和包含用户特征数据(例如用户选择的认证对象以及正确的响应和/或用户偏爱)的文件,这两种文件同样可以采用XML来实现。
采用对共享上下文的操作,还利用有效的认证对象和感兴趣的用户特征数据,基于有效的认证策略(基于用户偏爱以及处理事务或应用要求来选择)来动态地确定整个认证交互。
与现有的认证系统相比,这种方法提供了显著改善的认证能力,并确保了非常高度的灵活性、准确性、方便性和健壮性。
此外,如以下将说明性地详细解释,本发明的认证技术利用了以下组件(1)验证对象和验证引擎;(2)验证策略和验证策略管理器;以及(3)用户模型。
验证对象是可以用于验证用户的身份的目的的对象,诸如用户的生物度量特征(例如声纹、指纹、面部扫描、虹膜扫描、手写签名和/或键盘动力学)、用户的知识(例如密码、密码短语和/或对个人问题的回答)以及用户的持有(例如钥匙、卡、令牌、证书、发送主叫方ID信息的蜂窝电话或家庭电话、具有客户端软件的个人计算机或手持计算机以及/或者用户位置)。应当理解,以上示例对象的列表并非旨在穷举,并且此外,本发明并非旨在限于任何特定对象。
验证引擎用于将验证对象与存储于用户模型中的表示相匹配。验证引擎的例子包括用以对用户指纹进行匹配的指纹识别系统、声音响应系统之类的用以评估对问题的口头回答的会话系统、诸如语音或声纹识别系统(其可以包括自然理解技术)之类的用以提取和识别用户的口头话语的会话系统(其中会话系统还可以包括用于产生合成的问题和提示的语音合成系统)、用以对用户的电话号码进行提取和匹配的主叫方ID识别系统、用以扫描用户的标记或卡的标记阅读器、用以确认用户的PIN的PIN确认系统、用以对用户的面部扫描进行提取和匹配的面部识别系统、用以对用户的虹膜扫描进行提取和匹配的虹膜识别系统、用以识别用户的笔迹的笔迹识别系统、用以对用户的键盘动力学进行匹配的键盘动力学识别器、以及在此讨论和/或可以另外得知的其他的方式特定的引擎。应当理解,由于这些类型的引擎是公知的,因此在此没有必要所以也没有提供对这些引擎的细节的进一步描述。同样,应当理解,以上的示例引擎的列表并非旨在穷举,并且此外,本发明并非旨在限于任何特定验证引擎。
尽管验证引擎典型地通过将用户输入与在用户登记时创建的用户模型相比较而执行用户验证,但本发明不限于需要用户登记的验证引擎。还可以采用不需要用户登记的无人管理的验证引擎。当采用无人管理的验证引擎时,可以采用单个用户模型,包括由验证引擎测量的用户属性。例如,可以采用以下验证引擎声音口音识别、语言识别和面部特征检测(例如眼睛颜色检测、眼镜检测)。在此情况下,各验证引擎都不需要用户登记,并且采用一个用户模型,表明用户所说的语音口音、语言、眼睛颜色,以及用户是否佩戴眼镜。
因此,本发明意识到,尽管各验证引擎可以用于执行以预定的静态方式操作的简单验证步骤,但在用多个验证对象来执行动态用户认证时,必须有更通用的框架,以便实现程度更高的准确性和灵活性。本发明提供了这种改善的认证框架。
为实现该目标和其他目标,本发明采用了管理用户与包括认证系统的整个系统之间以及各验证引擎之间的交互的验证策略。可以编写任何种验证策略以满足大量的用户特定、事务处理特定或应用特定的认证需要,包括实时地改变的需要。
可以看到,这些验证策略由验证策略管理器管理,验证策略管理器采用对跨所有验证对象而共享的公共上下文的操作来实现认证系统的最大可编程能力。
通常在用户在系统中登记时使用由用户所提供的(例如声音样本、指纹样本和/或对个人问题的回答)或通过其他方式(诸如过去的事务处理的细节、最近账单的收支、已发出的钥匙或标记的序列号,以及/或者智能卡或客户端软件中所包含的加密密钥)所获得的输入来创建用户模型。
在需要时,诸如在发出新的账单和收支改变时或在更多的声音样本可利用时,可以实时地对用户模型进行更新。各用户模型包含关于与该用户相关的所有验证对象的信息,包括与验证对象有关的任何用户偏爱(例如,用户有可能偏爱关于颜色的问题而不是关于号码的问题)。用户模型还优选地支持验证对象的非平凡操作,诸如要求用户添加其社会保险号的第一位和第三位。同样,任何上述示例并非旨在限制本发明。
给出以上对本发明的某些原理和特征的一般描述之后,现在将在附图的上下文中给出这些原理和特征的说明性实施例。
首先参考图1,其中的框图示出了根据本发明的一个实施例的用于实现连续认证的认证系统的客户端-服务器体系结构。如图所示,认证系统100包括通过网络适配器106连接的验证客户端设备102和验证服务器104。验证客户端102具有上下文108和与其相关联的应用110。验证服务器104包括验证策略管理器112和多个验证引擎114-1至114-N,其中N可以是任何整数2,3,4,...,并代表本发明的特定实现可以支持的验证对象族或验证对象类型的数目。认证系统100还包括数据管理器116、验证对象存储118、验证策略存储120和用户模型存储122。尽管将数据管理器116以及数据存储118、120和122示出为在验证服务器方框之外,但应当理解,它们可以在验证服务器上实现。
验证客户端设备102负责与用户进行接口连接并收集来自用户的输入,通过网络适配器106与验证服务器104进行通信,以及与应用110进行通信。在本发明的一个实施例中,验证客户端设备102还负责获取和维护上下文108。
在一个替代性的实施例中,上下文108可以存储于可由系统100的其他组件访问的中央数据库(未示出)上。这种实现允许在验证客户端设备102与验证服务器104之间的无状态操作,使得不同的服务器可以用于验证处理中的不同轮,从而提供了对在验证处理的过程中特定的服务器的宕机的保护,并且还实现了对服务器资源的改善的负载均衡。
上下文108记录了用于验证处理的所有相关变量,诸如(1)用户名;(2)有效的验证策略中的当前状态;(3)关于已经调用的验证对象的历史以及与调用相关联的分值和结果;(4)事务处理特定的要求(例如希望的事务处理准确度级别或性质);(5)用户特定的要求(例如感冒的用户有可能不愿意依靠声纹匹配);(6)其他物理的和逻辑的变量(例如网络连接的类型一远程的或本地的,或者声音信道的质量)。
上下文108还可以记录代表来自外部验证源(未示出)的验证分值的其他变量。例如,在入口处刷过他的银行卡之后,进入银行的用户有可能已经进行过这种行为,并且该信息可以包括在上下文108中作为外部分值并可用于在柜台或在自动取款机处的后续认证处理。
最初包括在上下文108中的变量是与在最初创建时的验证对象和其他已知要求相关的系统默认变量。然而,随着另外的验证对象被添加到系统100或者随着新的要求被发现,用户定义的变量可以添加到上下文108。
网络适配器106使得在验证客户端设备102与验证服务器104之间能够进行通信。网络适配器106实现网络传输协议,诸如标准的传输控制协议(TCP)/网际协议(IP)或安全套接字层(SSL)协议。应当理解,在认证系统100实现于单个计算机系统上的实施例中,不需要网络适配器。
如图所示,验证服务器104包括验证策略管理器112和一组验证引擎114-1至114-N。每个验证引擎对一个给定的验证对象或一族(一类)验证对象进行操作。例如,指纹验证引擎可以对特定的指纹或不同类型的指纹(例如拇指指纹或食指指纹)进行操作。与此类似,知识验证引擎可以对不同类型的挑战-响应问题进行操作。
灵活的体系结构允许可以容易地添加新的验证引擎和验证对象。待添加的验证引擎可以是新的类型或现有的类型。例如,可以将面部识别引擎添加到先前包括声纹识别引擎和指纹识别引擎的验证服务器,或者可以添加第二声纹识别引擎(例如,其可以来自不同的制造者)。与此类似,可以将新的验证对象添加到新的验证引擎或现有的验证引擎(诸如将新的问题添加到现有的知识验证引擎)。
验证策略管理器112为给定用户模型解释验证策略,并驱动整个认证处理。验证策略管理器112从验证客户端设备102接收当前上下文108,对该上下文进行操作,结合当前验证对象的更新的状态,并向验证客户端设备102返回更新的上下文,连同在验证处理期间将采取的下一个步骤的说明。
验证策略管理器112可以可选地负责调用有限状态机中的状态,解释状态机的条件,并转移到下一个状态。验证策略管理器112是为认证处理作最后的接受或拒绝判决的实体,并且在某些情况下,假定有效的验证策略允许,那么如果当前事务处理需要中间判决,则验证策略管理器112还可以作中间判决。
数据管理器116控制外部存储资源,包括验证对象存储118、验证策略存储120和用户模型存储122。这些资源可以由验证服务器104(由验证策略管理器112或由各验证引擎114-1至114-N)直接访问。在一个替代性的实施例中,这些资源可以由验证客户端设备102访问,并通过网络适配器106传送给验证服务器104。
应用110是在授权访问之前需要用户认证的应用。示例应用包括银行应用、旅行应用和电子邮件应用。应用110负责提供应用特定的和事务处理特定的信息和要求。应当理解,本发明不限于任何特定的应用。
在本发明的一个实施例中,验证客户端设备102使用XML消息接口与验证服务器104进行通信。
此外,在一个替代性的实施例中,应当理解,与验证服务器相关联的组件本身可以通过网络适配器106彼此通信。因此,例如,一个或多个验证引擎114可以通过网络适配器106与验证策略管理器112进行通信。关于验证策略管理器112与数据管理器116,以及关于数据管理器116与数据存储118、120和122,可以存在类似的分布式布置。因此,应当理解,图1中示出的组件的互通性旨在作为说明,并且因此,可以实现其他合适的互连以提供本发明的认证功能性。
现在参考图2,其中的框图示出了根据本发明的一个实施例的用于实现连续认证的示例性计算系统环境。作为例子,计算系统200可以代表分布式计算系统的至少一部分,其中用户经由计算机系统202(说明性地称为“客户端”或客户端设备)经由网络206与另一个计算机系统204(说明性地称为“服务器”)进行通信。该网络可以是计算机系统可以通过其进行通信的任何合适的网络,例如因特网或万维网,或者局域网。然而,本发明不限于任何特定类型的网络。实际上,应当理解,计算机系统可以不需要网络而直接连接。
此外,尽管为简单起见在图2中只示出了两个计算机系统,但应当理解,该网络可以连接多个客户端设备和多个服务器。然而,还应当意识到,本发明的技术可以在单个计算机系统上实现,其中例如用户与执行认证操作的计算机系统直接进行交互。
参考图1,应当理解,验证客户端设备102可以经由计算机系统202来实现,并且验证服务器104(和其组件)、数据管理器116以及相应的对象存储、策略存储和用户模型存储(118、120和122)可以经由计算机系统204来实现。因此,网络适配器106可以根据网络206来实现。
因此,应当理解,图2一般地示出了通过网络进行通信的每个计算机系统的示例性体系结构。如图所示,计算机系统202包括处理器208-A、存储器210-A和I/O(输入/输出)设备212-A,全都经由计算机总线214-A连接。与此类似,计算机系统204包括处理器208-B、存储器210-B和I/O(输入/输出)设备212-B,全都经由计算机总线214-B连接。
应当理解,在此所用的术语“处理器”旨在包括一个或多个处理设备,包括中央处理单元(CPU)或其他处理电路。同样,在此所用的术语“存储器”旨在包括与处理器或CPU相关联的存储器,例如RAM(随机存取存储器),ROM(只读存储器),固定的、持久性的存储设备(例如硬盘),或可移动的、持久性的存储设备(例如磁盘或CD-ROM)。此外,在此所用的术语“I/O设备”旨在包括用于输入数据到处理单元的一个或多个输入设备(例如键盘或鼠标),以及用于提供与处理单元相关联的结果的一个或多个输出设备(例如显示器)。此外,与计算机系统202相关联的I/O设备应理解为包括收集与由认证系统所支持的验证对象相关联的特定数据所必需的那些设备,例如用以捕获用于声纹识别的声音数据和/或对所提出问题的回答的麦克风,用以向用户输出这些问题的扬声器,面部扫描仪、虹膜扫描仪,以及/或者指纹扫描仪。
还应当理解,图2中示出的客户端计算机系统可以包括编程为实现本发明的技术的计算机系统,诸如个人计算机、个人数字助理或蜂窝电话。同样,图2中示出的服务器计算机系统可以包括编程为实现本发明的技术的计算机系统,诸如个人计算机、微型计算机或小型机。然而,本发明不限于任何特定的计算机体系结构。
因此,如同在此所述,用于执行本发明的方法的软件指令或代码可以存储于例如ROM、固定的或可移动的存储器之类的一个或多个相关联的存储设备中,并且当准备利用时,这些软件指令或代码被装载到RAM中并由CPU执行。
现在参考图3,其中示出了验证对象注册表的例子。在该特定实施例中,注册表300使用XML来表示并被存储于验证对象存储118(图1)中。
该详细说明包含对所有已注册的验证对象的描述,当加入新的验证对象时,可以对其进行更新。本例中的第一对象(302)是生日(DOB)对象,该生日对象是提问-回答(QA)类型,并且负责对该对象进行操作的验证引擎是知识验证引擎。在调用该对象时,还可以包括所建议的提示,以提示用户所需的响应,但如有必要,可以由验证客户端修改或替换该提示。“复杂度”是代表与验证对象相关联的困难程度的量,并且可以由验证策略管理器可选地使用来进行验证判决。
本例中的第二对象(304)是主叫方ID,在电话连接的情况下,其试图将发起呼叫的电话的电话号码与相关的用户模型中的电话号码相匹配。没有规定提示,原因是该信息可以自动地从电话基础设施得到,而不需要来自用户的任何明确输入。
本例中的第三对象(306)是声纹对象,并且在此情况下,没有规定任何类型,原因是声纹验证引擎对一种类型验证对象进行操作。假定声纹是一种不会被盗的生物度量特征,因此在本例中规定了高的复杂度。
第四对象和第五对象(308和310)示出了该详细说明的分等级性质,其中CAR_COLOR(汽车颜色)对象从父对象COLOR(颜色)继承了默认的属性。
本例中的最后两个对象(312和314)是动态验证对象的例子,其中预期的响应动态地改变,并且在本例中,从应用中而不是从用户模型中得到正确的响应。“当前收支”(CUR_BALANCE)对象(312)是数值类型的应用特定的对象(APP_NUM),并且“最后事务处理日期”(LAST_TRANSACTION DATE)对象(314)是字符串类型的应用特定的对象。
现在参考图4,其中示出了用户模型的例子。在该特定实施例中,用户模型400使用XML来表示并被存储于用户模型存储122(图1)中。
该用户模型包含用户已经提供登记数据的验证对象的描述。第一对象(402)是主叫方ID对象,在本例中,该用户对其的正确响应是914-945-3000。可选地可以包括用户对该对象的偏爱,如果可能,验证策略可以用用户对该对象的偏爱来选择具有更高偏爱程度的对象。
第二对象和第三对象(DOB 404和COLOR 406)是类似的。在本例中,第四对象(汽车颜色或CAR_COLOR 408)具有两个响应,原因是该用户有两辆车,并且任一响应都可以作为正确回答接受。第五对象(410)是声纹对象,对于声纹对象,需要模型参数,模型参数可以存储于文件中,并且包括文件名。最后两个对象(CUR_BALANCE 412和LAST_TRANSACTION_DATE 414)不包括任何正确响应,原因是这两个对象是动态验证对象,并且当前的正确响应必须从应用中得到。
如上所述,根据本发明,可以实时地更新或删除任何对象,并且可以实时地添加新的对象。
如图4所示,根据本发明的用户模型包括描述每个安全挑战的特征的误接受(FA)和误拒绝(FR)的错误率。FA描述了不同的用户正确地回答安全挑战的概率,并且FR描述了真正的用户未正确地回答的概率。指定给每个挑战的FA和FR可以只在背景模型中,因此假定所有的用户具有相同的FA和FR,或者此外,用户特定的FA值和FR值可以被指定给每个挑战。例如,特定的挑战可以具有0.001的FA值和0.07的FR值。
用户模型400中的较低的FA率有可能反映了例如用户容易给出挑战的答案。同样,背景模型540中针对社会保险号挑战的较低的FA率有可能反映了例如社会保险号的库已经被盗。
用户模型400中的较低的FR率有可能反映了例如用户经常忘记特定挑战的答案。同样,背景模型540中针对特定挑战的较低的FR率有可能反映了例如大量用户容易忘记挑战的答案。
如图4所示,用户模型还可以包括对安全挑战的正确响应。可以通过适应于反映在实践中测量的FA和FR的现场数据来改变FA值和FR值。例如,如果大量用户容易忘记对挑战的回答,则FR值应该增加。还可以改变FA值和FR值以反映预料的安全突破。例如,在社会保险号的库被盗的情况下,可以将指定给社会保险号挑战的FA更新为比通常预料的更高。
图5是示出结合了本发明的特征的连续认证系统的框图。如图5所示,连续认证系统500采用用户模型400来描述每个用户的预料行为。此外,连续认证系统500可选地采用背景模型540,该背景模型540描述了一般用户群的预料行为。背景模型540可以是例如各用户模型400的集合。
对于本领域的普通技术人员很显然,可以采用任何已知技术来创建用户模型400和背景模型540。例如,可以采用诸如高斯混合模型(GMM)和隐式马尔可夫模型(HMM)之类的统计生成模型来创建用户模型400和背景模型540。此外,还可以采用诸如人工神经网络(ANN)和支持向量机(SVM)之类的判别模型。应当注意,用户模型400针对每个挑战包括一个FR率,并且可选地包括一个FA率,而背景模型540针对每个挑战包括一个FA率,并且可选地包括一个FR率。
如前所述,在每个交互轮中,向用户提出安全挑战。该挑战典型地是用户必须回答的问题。在完成每轮之后,在级510处采用背景模型540和用户认证模型400来计算中间判决。然后,在级510中产生的中间判决传送给模块520,该模块520集合中间结果以形成累积的结果525,通过累积的结果525进行用户接受/拒绝判决。如果不能进行最终的判决,则模块520产生第三状态累积结果(“未决”),意味着需要向用户提出附加的挑战。可选地,可以在级515中对用户模型和/或背景模型进行调整来反映新的用户输入。
在一个实施例中,针对每个交互轮(形成中间结果的)计算对数似然比(LLR)分值,并在各轮上对LLR分值进行求和(以形成累积的用户接受/拒绝结果525)。可以将LLR分值之和与两个门限相比较,以例如基于Wald的SPRT原理来进行判决。参见例如A.Wald的“SequentialAnalysis”(J.Wiley,1947)。
如果LLR分值超过了较高的门限,则接受用户。如果累积的LLR分值没有满足较低的门限,则拒绝用户,并且如果LLR分值在两个门限之间,则交互继续进行。假定针对每个挑战的全局FA和FR(存储于背景模型540中),则可以如下计算LLR分值对于给定的挑战i,定义两个描述该挑战的特征的参数pi是针对该挑战的误接受(FA)率(例如猜对答案或具有所认可的答案的概率);以及qi是针对该挑战的误拒绝(FR)率(例如忘记答案或不知道答案的概率)。
对整个对话的观察可以用二进制矢量x来代表,其中对于特定的挑战,x中的每一位要么是1(对应于正确答案)要么是0(对应于错误答案)。
定义λ为说话者的声明为真的情况,并且λ为说话者试图闯入另一个账户(即冒名顶替者)的互补情况,可以针对轮号j计算以下概率P(xj|λ)=qi,xj=01-qi,xj=1]]>P(xj|λ‾)=1-pi,xj=0pi,xj=1]]>并且针对每轮的LLR为LLR(j)=log(P(xj|λ)P(xj|λ‾))]]>现在,假定各轮是独立的(这可以指在实践中,诸如生日之类的多字段轮应当视为单轮),则在轮数N之后,对数似然比(LLR)计算为LLR(N)=log[P(x1,x2,...,xN|λ)P(x1,x2,...,xN|λ‾)]=Σj=1Nlog[P(xj|λ)P(xj|λ‾)]=Σj=1NLLR(j)]]>因此,LLR的值随着轮数而增加,并且由于LLR的值是一个和,因此若假定基于独立的轮而进行LLR估计,则该和的分布变为更加类似于高斯分布。
对基于知识的和生物度量的系统进行直接组合可以增加两个分值或平均两个分值。知识生物度量分值可以是从说话者验证引擎返回的分值(其是生物度量LLR的估计),或该分值的概率解释。然后,将门限应用于组合的分值525。
图6是描述结合了本发明的特征的连续认证处理600的示例性实现的流程图。如图6所示,连续认证处理600首先在步骤610期间向用户提出挑战。然后,在步骤620期间,将用户响应与用户模型400和/或背景模型540相比较,以生成中间认证判决。可以针对每个交互轮如下计算对数似然比(LLR)分值LLR(j)=log(P(xj|λ)P(xj|λ‾))]]>然后,在步骤630期间,通过将当前中间认证判决(例如LLR值)添加到LLR值之和来对累积的认证判决525进行更新。此外,如有必要,则在步骤640期间基于用户数据而对用户模型400和/或背景模型540进行更新。例如,可以通过在步骤640期间适应于反映测量的FA值和FR值的现场数据来改变FA值和FR值。还可以改变FA值和FR值以反映预料的安全突破。例如,在社会保险号的库被盗的情况下,可以将指定给社会保险号挑战的FA更新为比通常预料的更高。
最后,在步骤650期间执行测试,以相对于所确立的门限来评估累积认证判决(LLR分值之和)525。在一个示例性的实现中,可以将LLR分值之和与两个门限相比较以进行判决。如果LLR分值超过了较高的门限,则接受用户(步骤650的分支A)。如果累积的LLR分值没有达到较低的门限,则拒绝用户(步骤650的分支B),并且如果LLR分值在两个门限之间,则交互继续进行(步骤650的分支C)。
制造产品和系统的细节正如在本领域中所知,在此讨论的方法和设备可以作为制造产品分发,该制造产品本身包括具有计算机可读代码装置嵌入在其上的计算机可读介质。计算机可读程序代码装置可以结合计算机系统而操作为实现执行在此所讨论的方法或创建在此所讨论的设备的所有步骤或某些步骤。计算机可读介质可以是可记录介质(例如软盘、硬盘驱动器、光盘或存储卡),或者可以是传输媒介(例如包括光纤、万维网、电缆的网络,或采用时分多址、码分多址或其他无线频率信道的无线信道)。可以采用可存储适合于与计算机系统一起使用的信息的任何已知的或开发的介质。计算机可读代码装置是用以使得计算机可以读取指令和数据的任何机制,诸如磁介质上的磁差或光盘的表面上的高度差。
在此描述的计算机系统和服务器均包含存储器,该存储器可以将相关联的处理器配置为实现在此公开的方法、步骤和功能。这些存储器可以是分布式的或本地的,并且这些处理器可以是分布式的或单一的。这些存储器可以实现为是电的、磁的或光的存储器,或者这些类型或其他类型的存储设备的任何组合。此外,术语“存储器”应当广义地解释为足以涵盖能够从由相关联的处理器访问的可寻址空间中的地址读取或向这些地址写入的任何信息。根据这种定义,网络上的信息仍在存储器内,原因是相关联的处理器可以从网络取回这些信息。
应当理解,在此示出并描述的实施例和变型只是对本发明的原理的说明,并且在不偏离本发明的范围和精神的情况下,本领域的普通技术人员可以实现各种修改。
权利要求
1.一种用于对用户进行连续认证的方法,包括用至少一个知识挑战来对所述用户进行挑战,以得到中间认证结果,其中所述中间认证结果基于针对每个知识挑战的误接受和误拒绝的错误概率中的一个或多个错误概率;以及重复用至少一个知识挑战来对所述用户进行挑战的所述步骤,直到累积的认证结果满足一个或多个标准。
2.根据权利要求1所述的方法,其中所述误接受的错误概率描述了不同的用户正确地回答所述知识挑战的概率。
3.根据权利要求1所述的方法,其中所述误拒绝的错误概率描述了真正的用户未正确地回答所述知识挑战的概率。
4.根据权利要求1所述的方法,其中针对用户群定义所述误接受和误拒绝的错误概率中的一个或多个错误概率。
5.根据权利要求1所述的方法,其中针对所述用户定义所述误接受和误拒绝的错误概率中的一个或多个错误概率。
6.根据权利要求1所述的方法,其中基于现场数据调整所述误接受和误拒绝的错误概率中的一个或多个错误概率。
7.根据权利要求1所述的方法,其中基于关于给定挑战的已知信息调整所述误接受和误拒绝的错误概率中的一个或多个错误概率。
8.根据权利要求1所述的方法,其中所述中间认证结果是连续的分值。
9.根据权利要求1所述的方法,其中所述中间认证结果基于对数似然比。
10.根据权利要求1所述的方法,其中所述累积的认证结果是各对数似然比之和。
11.根据权利要求1所述的方法,其中所述累积的认证结果和所述中间认证结果中的一个或多个结果与根据生物度量验证方法得到的结果相结合。
12.根据权利要求1所述的方法,其中所述累积的认证结果和所述中间认证结果中的一个或多个结果与根据说话者验证方法得到的结果相结合。
13.一种用于对用户进行连续认证的系统,所述系统包括存储器;以及至少一个处理器,其连接到所述存储器,所述至少一个处理器可操作为用至少一个知识挑战来对所述用户进行挑战,以得到中间认证结果,其中所述中间认证结果基于针对每个知识挑战的误接受和误拒绝的错误概率中的一个或多个错误概率;以及重复所述挑战,直到累积的认证结果满足一个或多个标准。
14.根据权利要求13所述的系统,其中所述误接受的错误概率描述了不同的用户正确地回答所述知识挑战的概率,并且所述误拒绝的错误概率描述了真正的用户未正确地回答所述知识挑战的概率。
15.根据权利要求13所述的系统,其中针对用户群定义所述误接受和误拒绝的错误概率中的一个或多个错误概率。
16.根据权利要求13所述的系统,其中针对所述用户定义所述误接受和误拒绝的错误概率中的一个或多个错误概率。
17.根据权利要求13所述的系统,其中基于关于给定挑战的已知信息或现场数据来调整所述误接受和误拒绝的错误概率中的一个或多个错误概率。
18.根据权利要求13所述的系统,其中所述中间认证结果基于对数似然比,并且所述累积的认证结果是各对数似然比之和。
19.根据权利要求13所述的系统,其中所述累积的认证结果和所述中间认证结果中的一个或多个结果与根据生物度量验证方法得到的结果和根据说话者验证方法得到的结果中的一个或多个结果相结合。
20.一种用于对用户进行连续认证的制造产品,包括包含一个或多个程序的机器可读介质,当被执行时,所述一个或多个程序实现步骤用至少一个知识挑战来对所述用户进行挑战,以得到中间认证结果;以及重复用至少一个知识挑战来对所述用户进行挑战的所述步骤,直到累积的认证结果满足一个或多个标准。
全文摘要
本发明提供了用于采用描述每个安全挑战的特征的一个或多个错误率对用户进行连续认证的方法和设备。根据本发明的一个方面,用至少一个知识挑战来对用户进行挑战,以得到中间认证结果,并且这种用户挑战持续,直到累积的认证结果满足一个或多个标准。中间认证结果基于例如针对每个知识挑战的误接受和误拒绝的错误概率中的一个或多个错误概率。误接受的错误概率描述了不同的用户正确地回答知识挑战的概率。误拒绝的错误概率描述了真正的用户未正确地回答知识挑战的概率。可以基于关于给定挑战的已知信息或现场数据来调整误接受和误拒绝的错误概率。
文档编号G06F21/00GK1892666SQ20061009315
公开日2007年1月10日 申请日期2006年6月22日 优先权日2005年6月23日
发明者兰·D·齐尔卡, 甘尼施·拉巴斯瓦迈, 杰里·内夫拉蒂尔, 瑞安·奥斯本, 贾森·W·皮莱坎奥斯 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1