一种利用可信赖平台模块的认证系统和认证方法

文档序号:7960981阅读:158来源:国知局
专利名称:一种利用可信赖平台模块的认证系统和认证方法
技术领域
本发明涉及计算机系统的安全技术,特别是一种对计算机系统的用户进行安全认证的技术。
背景技术
出于安全的考虑,现有的计算机系统(例如笔记本电脑、台式电脑等)都在用户登陆的时候对计算机用户进行认证,只有在用户提供的认证信息与计算机系统中存储的认证信息一致的情况下,才允许用户进入计算机系统进行操作。
然而,目前的认证信息均存在计算机系统的存储系统中(如计算机系统的硬盘),这样存放于电脑的存储系统内上的认证信息可能被远程盗取或者非授权访问,没有通过认证的用户还是有可能获取该认证信息,从而实现登陆该计算机系统,同时,由于介质的通用性和开放性,存放于电脑的存储系统内上的认证信息也很容易受到病毒、木马和其他恶意程序的攻击。
由于上述问题的存在,目前已有一些致力于解决该问题的相关的解决方案,如利用TPM(Trusted Platform Module,可信任平台模块)来实现,其独立于操作系统,不受操作系统控制而独立运行,TPM芯片内部程序是固化的,不能更改的,这些都能部分的解决上述问题。
其中,现有的TPM认证模块的结构如图1所示,包括包括应用程序模块11、TSP(TSS Service Provider,TSS服务提供商)模块12、TCS(TSS Core Service,TSS核心服务)模块15、TPM驱动模块16和TPM 17,TSS为TPM Software Stack的缩写,即TPM软件堆,是一种软件规范,该规范提供用于接入TPM的函数的标准API(Application Programming Interface,应用编程接口)。
如图1所示,其中应用程序模块11,与TSP模块12连接,用于向TSP模块12发送指令,包括创建秘钥指令和加解密操作指令,并接收TSP模块12返回的密钥创建成功信息和加解密执行结果信息;TPM 17,与TPM驱动模块16连接,用于创建秘钥和加解密操作,并向TSP模块返回创建秘钥和加解密操作执行结果;TCS模块15,连接TSP模块12和TPM驱动模块16,用于对TPM 17和TSP模块12之间传输的数据执行一定的编码操作;TSP模块12,与TCS模块15连接,用于通过TCS模块15、TPM驱动模块16向TPM 17发送创建密钥指令和加解密操作指令,在创建密钥时,还用于向应用程序模块11返回密钥创建成功信息;在使用密钥时,还用于向应用程序模块11返回加解密操作执行结果。
然而,目前TPM认证采用口令的方式进行认证,用户需要记忆用户名、口令等一系列的数据,使用不便,同时输入口令也容易被键盘监听软件盗取到口令,系统安全还是无法得到充分的保证。
用户作为一种生物,其本身的许多生理特征都是独一无二的,例如指纹、虹膜等。

发明内容
本发明的目的在于提供一种利用可信赖平台模块的认证系统和认证方法,将用户本身的特有的生理特征引入现有的TPM认证系统,安全,易于使用,解决现有技术条件下计算机系统的安全认证无法完全保证安全、同时使用不便等问题。
为了实现上述目的,本发明提供了一种利用可信赖平台模块的认证系统,包括一应用程序模块、一TSP模块、一TCS模块、一TPM驱动模块和TPM,还包括一生物特征识别设备,与所述TPM和TSP模块连接,用于获取用户生物特征,并根据用户生物特征形成用户生物特征码,还用于根据用户生物特征寻找匹配的用户生物特征码;所述TPM,用于直接从所述生物特征识别设备获取所述用户生物特征码,并用于根据所述TSP模块的指令和所述用户生物特征码执行TPM操作。
上述的系统,其中,在执行需要获取认证信息的指令时,所述生物特征识别设备具体用于获取第一用户生物特征码并根据所述第一用户生物特征码计算得到第一哈希值;所述TPM具体用于从所述生物特征识别设备获取第一用户生物特征码和第一哈希值后执行需要获取认证信息的指令。
上述的系统,其中,在执行需要验证认证信息的指令时,所述生物特征识别设备具体用于获取第二用户生物特征码,与内部维护的用户生物特征码列表进行比对,找到匹配的生物特征码后计算第二哈希值;所述TPM具体用于获取所述第二哈希值,并用于比较所述第一哈希值和第二哈希值,在二者一致时执行所述需要验证认证信息的指令。
上述的系统,其中,在执行需要获取认证信息的指令时,所述生物特征识别设备具体用于获取第一用户生物特征码;所述TPM具体用于从所述生物特征识别设备获取第一用户生物特征码,并根据所述第一用户生物特征码计算得到第一哈希值后执行需要获取认证信息的指令。
上述的系统,其中,在执行需要验证认证信息的指令时,所述生物特征识别设备具体用于获取第二用户生物特征码,与内部维护的用户生物特征码列表进行比对,找到匹配的生物特征码;所述TPM具体用于获取匹配的生物特征码后计算第二哈希值、比较所述第一哈希值和第二哈希值,并用于在二者一致时执行所述需要验证认证信息的指令。
上述的系统,其中,所述生物特征识别设备与所述TPM通过通用输入输出信号进行信息交互。
上述的系统,其中,所述生物特征识别设备利用一随机数获取所述用户生物特征码,所述随机数由所述TSP模块通过OIAP或OSAP获得,并发送给所述生物特征识别设备。
上述的系统,其中,所述用户生物特征包括但不限于指纹、虹膜、面型、掌纹和声音。
上述的系统,其中,所述生物特征识别设备通过一生物特征识别设备驱动模块与所述TSP模块连接,并根据所述TSP模块的指令获取所述用户生物特征码。
为了更好的实现上述目的,本发明还提供一种利用可信赖平台模块的认证方法,由生物特征识别设备获取用户生物特征,并根据用户生物特征形成用户生物特征码;TPM直接从所述生物特征识别设备获取所述用户生物特征码,并根据所述TSP模块的指令和所述用户生物特征码执行TPM操作。
上述的方法,其中,在执行需要获取认证信息的指令时,所述生物特征识别设备获取第一用户生物特征码并根据所述第一用户生物特征码计算得到第一哈希值;所述TPM从所述生物特征识别设备获取第一用户生物特征码和第一哈希值后执行需要获取认证信息的指令。
上述的方法,其中,在执行需要验证认证信息的指令时,所述生物特征识别设备获取第二用户生物特征码,与内部维护的用户生物特征码列表进行比对,找到匹配的生物特征码后计算第二哈希值;所述TPM获取所述第二哈希值,并比较所述第一哈希值和第二哈希值,在二者一致时执行所述需要验证认证信息的指令。
上述的方法,其中,在执行需要获取认证信息的指令时,所述生物特征识别设备获取第一用户生物特征码;所述TPM从所述生物特征识别设备获取第一用户生物特征码,并根据所述第一用户生物特征码计算得到第一哈希值后执行需要获取认证信息的指令。
上述的方法,其中,在执行需要验证认证信息的指令时,所述生物特征识别设备获取第二用户生物特征码,与内部维护的用户生物特征码列表进行比对,找到匹配的生物特征码;所述TPM获取匹配的生物特征码后计算第二哈希值、比较所述第一哈希值和第二哈希值,并二者一致时执行所述需要验证认证信息的指令本发明的利用可信赖平台模块的认证系统和认证方法,向TPM引入了生物特征识别,通过利用一生物特征识别设备获取用户生物特征码,然后由TPM通过该用户生物特征码实现创建密钥操作或加解密操作,由于生物特征码的唯一性,且只有生物特征码验证通过,TPM才执行相应操作,由于TPM设备与指纹设备直接通信,用户生物特征码不会出现在内存中;同时无须用户输入口令,键盘监听软件也无法盗取,具有安全性高的特点,同时,用户无需记住所有者和密钥的secret信息,使用方便。


图1为现有技术的可信赖平台模块的认证系统的结构示意图;图2为本发明的利用可信赖平台模块的认证系统的结构示意图;
图3为本发明的认证系统实现认证的方法中的创建密钥步骤的流程图;图4为本发明的认证系统实现认证的方法中的使用密钥步骤的流程图。
具体实施例方式
本发明的利用可信赖平台模块的认证系统的第一实施例如图1所示,包括应用程序模块11、TSP模块12、生物特征识别设备驱动模块13、生物特征识别设备14、TCS模块15、TPM驱动模块16和TPM 17,其中应用程序模块11,与TSP模块12连接,用于向TSP模块12发送指令,包括需要获取认证信息的指令和需要验证认证信息的指令时,并接收TSP模块12返回的执行结果信息;生物特征识别设备14,与生物特征识别设备驱动模块13和TPM 17连接,用于根据TSP模块12的指令获取用户生物特征,并根据用户生物特征形成用户生物特征码,维护用户生物特征码与公钥哈希值之间的对应关系,在执行需要获取认证信息的指令(如创建所有者,创建密钥,加密数据,更新授权)时,所述生物特征识别设备获取第一用户生物特征码并计算第一哈希值,在执行加解密操作时,所述生物特征识别设备获取第二用户生物特征码,与内部维护的用户生物特征码进行比对,找到匹配的生物特征码计算第二哈希值;该生物特征识别设备通过GPIO(General-Purpose Input/Output,通用输入/输出)信号与TPM 17实现信息交互,该生物特征识别设备14根据随机数获取用户生物特征,该随机数由TSP模块12通过OIAP(对象无关认证协议)指令或OSAP(对象相关认证协议)获取,并随指纹扫描指令一起发送给生物特征识别设备14,指示生物特征识别设备14获取用户生物特征;TPM 17,与生物特征识别设备14和TPM驱动模块16连接,用于从生物特征识别设备14获取用户生物特征码,并根据TSP模块12的指令结合用户生物特征码执行需要获取认证信息的指令和需要验证认证信息的指令;在执行需要获取认证信息的指令时,根据从生物特征识别设备14获取的第一用户生物特征码和第一哈希值,并在创建成功后,将第一哈希值和密钥数据(或第一用户生物特征码和密钥数据)打包加密,并向TSP模块12返回结果;在执行需要验证认证信息的指令(如改变芯片状态和获取关键信息需要所有者授权,创建子密钥和加解密数据需要密钥授权,解密数据需要加密数据授权)时,TPM 17从生物特征识别设备14获取第二哈希值,并比较第一哈希值和第二哈希值,二者如果一致则执行加解密操作,并向TSP模块返回执行结果,否则不执行需要验证认证信息的指令;TPM 17通过向生物特征识别设备发送相同随机数获取与之对应的生物特征识别码。
TCS模块15,连接TSP模块12和TPM驱动模块16,用于对TPM 17和TSP模块12之间传输的数据执行一定的编码操作;TSP模块12,与生物特征识别设备驱动模块13和TCS模块15连接,用于通过OIAP(对象无关认证协议)指令或OSAP(对象相关认证协议)获取一随机数,并将该随机数通过生物特征识别设备驱动模块13发送给生物特征识别设备14,指示生物特征识别设备14获取用户生物特征,同时通过TCS模块15、TPM驱动模块16向TPM 17发送需要获取认证信息的指令或需要验证认证信息的指令,并在接收到TPM 17返回的执行结果后,向应用程序模块11返回执行结果。
当然,计算哈希值的动作也可以由TPM完成,但数据传输量大(一般256-1024字节)。
下面以秘钥为例进行进一步详细说明。
本发明的利用可信赖平台模块的认证系统实现认证的方法包括创建密钥步骤和使用密钥步骤。
如图3所示,本发明的利用可信赖平台模块的认证系统实现认证的方法中的创建密钥步骤具体包括如下步骤步骤31,TSP模块接收到应用程序模块发送的创建密钥指令;步骤32,TSP模块通过OIAP指令获取随机数,并将随机数发送给生物特征识别设备,指示生物特征识别设备获取用户的生物特征码;步骤33,生物特征识别设备获取用户的生物特征,并形成第一用户生物特征码,如果是已知用户则合并;步骤34,TSP模块将创建密钥指令发送给所述TPM,由所述TPM创建密钥,并从生物特征识别设备获取所述第一用户生物特征码;步骤35,所述TPM根据第一用户生物特征码获取第一哈希值,并将第一用户生物特征码和密钥数据,或第一哈希值和密钥数据打包加密,并向TSP模块返回密钥创建成功信息;步骤36,TSP模块向所述应用程序模块返回密钥创建成功信息。
如图4所示,本发明的利用可信赖平台模块的认证系统实现认证的方法中的使用密钥步骤具体包括如下步骤步骤41,TSP模块接收到应用程序模块发送的加解密指令;步骤42,TSP模块通过对象无关认证协议指令获得随机数,将随机数发给生物特征识别设备,指示生物特征识别设备所述获取生物特征;步骤43,生物特征识别设备获取用户的生物特征,并形成第二用户生物特征码,并与内部维护的用户生物特征码进行比对,找到匹配的生物特征码计算第二哈希值;步骤44,TSP模块将加解密指令发送给TPM;步骤45,TPM根据随机数获取第二哈希值,并判断所述第一哈希值和第二哈希值是否一致,如果一致则执行加解密操作,并向所述TSP模块返回加解密操作执行结果,否则不执行加解密操作;步骤46,所述TSP模块向所述应用程序模块返回加解密操作执行结果。
在上面的实施例中所说的生物特征是用户独一无二的生物特征,如指纹、虹膜、面型、掌纹和声音等生物特征。
同时,本发明的实施例中是以密钥为例进行说明的,当然也可以是所有者,其过程与密钥的过程基本一致,在此不再赘述。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
权利要求
1.一种利用可信赖平台模块的认证系统,包括一应用程序模块、一TSP模块、一TCS模块、一TPM驱动模块和TPM,其特征在于,还包括一生物特征识别设备,与所述TPM和TSP模块连接,用于获取用户生物特征,并根据用户生物特征形成用户生物特征码,还用于根据用户生物特征寻找匹配的用户生物特征码;所述TPM,用于直接从所述生物特征识别设备获取所述用户生物特征码,并用于根据所述用户生物特征码决定是否执行TPM操作。
2.根据权利要求1所述的系统,其特征在于,在执行需要获取认证信息的指令时,所述生物特征识别设备具体用于获取第一用户生物特征码,并根据所述第一用户生物特征码计算得到第一哈希值;所述TPM具体用于从所述生物特征识别设备获取第一用户生物特征码和第一哈希值,并执行需要获取认证信息的指令。
3.根据权利要求2所述的系统,其特征在于,在执行需要验证认证信息的指令时,所述生物特征识别设备具体用于获取第二用户生物特征码,与内部维护的用户生物特征码列表进行比对,找到匹配的生物特征码后计算第二哈希值;所述TPM具体用于获取所述第二哈希值,并用于比较所述第一哈希值和第二哈希值,在二者一致时执行所述需要验证认证信息的指令。
4.根据权利要求1所述的系统,其特征在于,在执行需要获取认证信息的指令时,所述生物特征识别设备具体用于获取第一用户生物特征码;所述TPM具体用于从所述生物特征识别设备获取第一用户生物特征码,并根据所述第一用户生物特征码计算得到第一哈希值后执行需要获取认证信息的指令。
5.根据权利要求2所述的系统,其特征在于,在执行需要验证认证信息的指令时,所述生物特征识别设备具体用于获取第二用户生物特征码,与内部维护的用户生物特征码列表进行比对,找到匹配的生物特征码;所述TPM具体用于获取匹配的生物特征码后计算第二哈希值、比较所述第一哈希值和第二哈希值,并用于在二者一致时执行所述需要验证认证信息的指令。
6.根据权利要求1、2、3、4或5所述的系统,其特征在于,所述生物特征识别设备与所述TPM通过通用输入输出信号进行信息交互。
7.根据权利要求1、2、3、4或5所述的系统,其特征在于,所述生物特征识别设备维护一随机数与所述用户生物特征码的对应关系,所述随机数由所述TSP模块通过对象无关认证协议或对象相关认证协议获得,并随指纹扫描指令一起发送给所述生物特征识别设备;TPM向生物特征识别设备发送相同随机数获取与之对应的生物特征识别码。
8.根据权利要求1、2、3、4或5所述的系统,其特征在于,所述用户生物特征包括但不限于指纹、虹膜、面型、掌纹和声音。
9.根据权利要求1、2、3、4或5所述的系统,其特征在于,所述生物特征识别设备通过一生物特征识别设备驱动模块与所述TSP模块连接,并根据所述TSP模块的指令获取所述用户生物特征码。
10.一种利用可信赖平台模块的认证方法,其特征在于,生物特征识别设备获取用户生物特征,并根据用户生物特征形成用户生物特征码;TPM直接从所述生物特征识别设备获取所述用户生物特征码,并根据所述用户生物特征码决定是否执行TPM操作。
11.根据权利要求10所述的方法,其特征在于,在执行需要获取认证信息的指令时,所述生物特征识别设备获取第一用户生物特征码并根据所述第一用户生物特征码计算得到第一哈希值;所述TPM从所述生物特征识别设备获取第一用户生物特征码和第一哈希值后执行需要获取认证信息的指令。
12.根据权利要求11所述的方法,其特征在于,在执行需要验证认证信息的指令时,所述生物特征识别设备获取第二用户生物特征码,与内部维护的用户生物特征码列表进行比对,找到匹配的生物特征码后计算第二哈希值;所述TPM获取所述第二哈希值,并比较所述第一哈希值和第二哈希值,在二者一致时执行所述需要验证认证信息的指令。
13.根据权利要求10所述的方法,其特征在于,在执行需要获取认证信息的指令时,所述生物特征识别设备获取第一用户生物特征码;所述TPM从所述生物特征识别设备获取第一用户生物特征码,并根据所述第一用户生物特征码计算得到第一哈希值后执行需要获取认证信息的指令。
14.根据权利要求13所述的方法,其特征在于,在执行需要验证认证信息的指令时,所述生物特征识别设备获取第二用户生物特征码,与内部维护的用户生物特征码列表进行比对,找到匹配的生物特征码;所述TPM获取匹配的生物特征码后计算第二哈希值、比较所述第一哈希值和第二哈希值,并二者一致时执行所述需要验证认证信息的指令。
全文摘要
本发明公开了一种利用可信赖平台模块的认证系统和认证方法,其中该认证系统包括一应用程序模块、一TSP模块、一TCS模块、一TPM驱动模块和TPM,还包括一生物特征识别设备,与TPM和TSP模块连接,用于获取用户生物特征,并根据用户生物特征形成用户生物特征码,还用于根据用户生物特征寻找匹配的用户生物特征码;所述TPM,用于直接从生物特征识别设备获取用户生物特征码,并根据用户生物特征码验证结果决定是否执行TPM操作。本发明向TPM引入了生物特征识别,由于生物特征码的唯一性,且只有生物特征码验证通过,TPM才执行相应操作;本发明具有安全性高的特点,同时,用户无需记住所有者和密钥的secret信息,使用方便。
文档编号H04Q7/38GK101072100SQ200610080279
公开日2007年11月14日 申请日期2006年5月12日 优先权日2006年5月12日
发明者尹萍, 谢巍, 郭轶尊, 林洋 申请人:联想(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1