1.一种动态密码认证系统,包括客户端接口、数据库和管理服务器,其特征在于,所述系统还包括内置有用户个人信息的动态令牌和认证服务器;
所述动态令牌包括身份认证模块、存储模块和动态密码生成模块,所述身份认证模块用于认证动态令牌用户的身份,所述存储模块用于存储所述用户个人信息和密钥,所述密钥包括个人密钥和共享密钥,所述动态密码生成模块用于根据时间/事件因素和所述个人密钥生成动态密码1,根据所述动态密码1,并结合所述用户个人信息和共享密钥计算生成动态密码2;
所述认证服务器包括动态密码接收模块、计算模块和动态密码验证模块,所述动态密码接收模块用于接收由所述动态令牌生成的所述动态密码2,所述计算模块用于根据所述共享密钥对所述动态密码2进行计算得到所述动态密码1和用户个人信息,所述动态密码验证模块用于根据所述用户个人信息从所述数据库中检索到对应的个人密钥,并采用与所述动态密码生成模块生成所述动态密码1或2时相同的算法计算得到当前的有效密码,将所述有效密码与所述动态密码1或2进行比对,以验证所述动态密码1或2。
2.如权利要求1所述的动态密码认证系统,其特征在于,所述认证服务器还包括存储模块,所述存储模块用于存储所述共享密钥。
3.如权利要求1所述的动态密码认证系统,其特征在于,所述存储模块中存储的所述用户个人信息和密钥在初始化所述动态令牌时被置入,所述密钥包括所述个人密钥和共享密钥。
4.如权利要求1所述的动态密码认证系统,其特征在于,所述数据库存储所述个人密钥,或者存储所述个人密钥和共享密钥。
5.如权利要求1所述的动态密码认证系统,其特征在于,所述动态密码1或2为字母、数字和汉字中的一种或几种形式的组合。
6.如权利要求1所述的动态密码认证系统,其特征在于,所述动态令牌为硬件动态令牌或软件动态令牌。
7.如权利要求1所述的动态密码认证系统,其特征在于,所述身份认证模块在用户使用所述动态令牌前对所述用户进行身份认证;所述身份认证的方式为PIN码认证方式或生物特征认证方式。
8.如权利要求1所述的动态密码认证系统,其特征在于,所述存储模块存储至少一个所述用户个人信息,所述用户个人信息与其对应的用户的PIN码或生物特征相匹配。
9.一种动态密码认证方法,其特征在于,所述方法包括:
动态令牌认证用户身份;
所述用户身份认证通过后,所述动态令牌根据时间/事件因素和个人密钥生成动态密码1,根据所述动态密码1,并结合用户个人信息和共享密钥计算生成动态密码2;
用户通过客户端接口将所述动态密码2传输至认证服务器;
所述认证服务器接收到所述动态密码2并根据所述共享密钥对其进行计算得到所述动态密码1和用户个人信息后,根据所述用户个人信息从数据库中检索到对应的个人密钥,并采用与所述动态令牌生成所述动态密码1或2时相同的算法计算得到当前的有效密码,将所述有效密码与所述动态密码1或2进行比对,以验证所述动态密码1或2。
10.如权利要求9所述的动态密码认证方法,其特征在于,所述采用与所述动态令牌生成所述动态密码1或2时相同的算法计算得到当前的有效密码,将所述有效密码与所述动态密码1或2进行比对,以验证所述动态密码1或2的步骤具体为:根据所述个人密钥和时间/事件因素计算得到当前的有效密码,将所述有效密码与生成的所述动态密码1进行比对,如果相同,则验证通过,否则,提示出错;
或,根据所述个人密钥、时间/事件因素、共享密钥和用户个人信息计算得到当前的有效密码,将所述有效密码与所述动态密码2进行比对,如果相同,则验证通过,否则,提示出错。
11.如权利要求9所述的动态密码认证方法,其特征在于,所述认证用户身份的方式为PIN码认证方式或生物特征认证方式。
12.如权利要求9所述的动态密码认证方法,其特征在于,所述动态令牌存储至少一个所述用户个人信息;当所述动态令牌存储两个以上所述用户个人信息时,所述动态令牌生成动态密码的步骤具体为:所述动态令牌根据时间/事件因素和内置的与当前用户的PIN码或生物特征相匹配的所述用户个人信息,并结合密钥计算生成动态密码,所述密钥包括个人密钥和共享密钥。
13.如权利要求9所述的动态密码认证方法,其特征在于,所述动态密码1或2为字母、数字和汉字中的一种或几种形式的组合。
14.如权利要求9所述的动态密码认证方法,其特征在于,所述动态令牌为硬件动态令牌或软件动态令牌。
动态密码认证系统及方法 \n技术领域\n[0001] 本发明涉及身份认证领域,特别涉及一种动态密码认证系统及方法。 背景技术\n[0002] 在身份认证领域,为了保证认证的有效和安全,经历了一个从静态密码认证到动态密码认证的过程。 \n[0003] 动态密码也称一次性密码(One-time Password),它指用户的密码按照时间或使用次数不断动态变化,每个密码只使用一次。动态密码认证方式一般采用一种称之为动态令牌的专用硬件(动态令牌也可以是软件形式的,如手机的java程序),大小相当于一张闪存盘,显示方式类似于电子手表,它内置电源、密码生成芯片和显示屏。密码生成芯片运行专门的密码算法,根据当前时间或使用次数生成当前密码并显示在显示屏上。认证服务器采用相同的算法计算当前的有效密码。由于每次使用的密码必须由动态令牌来产生,只有合法用户才持有该硬件,所以只要密码验证通过,系统就可以认为该用户的身份是可靠的。\n由于用户每次使用的密码都不相同,所以即使黑客截获了一次密码,也无法利用这个密码来仿冒合法用户的身份。因此,动态密码认证方式有效地提高了客户端用户的安全性,并迅速在国内的网上银行、电话银行、网络游戏等等许多行业获得了广泛的应用。 [0004] 采用动态密码认证方式认证用户身份时,用户首先要利用动态令牌生成当前的动态密码,根据现有技术,用户通常通过将自定义的静态密码、时间/事件等因素输入动态令牌,由动态令牌结合内置共享密钥来生成动态密码。生成动态密码后,用户在客户端通过网络将用户个人信息(包括用户帐户ID、用户的静态密码、手机号、qq号等)和当前动态密码传输至认证服务系统,如果认证服务系统密码验证通过,则用户即可登录。 [0005] 动态密码认证方式的优势是明显可见的,但我们应该注意到,在生成动态密码后,用户在客户端是通过网络将用户个人信息(包括用户帐户ID、用户的静态密码、手机号、qq号等)和当前动态密码传输至认证服务系统的,这样,用户的个人信息和当前动态密码就会很容易地被底层木马截取,暴露用户的个人信息,这对于大多数用户来说,也是非常不愿意发生的事情,因为这样会给他/她带来很多不必要的麻烦,比如骚扰电话、骚扰信息等,基于此用户甚至会怀疑动态密码认证方式的“安全性”,而且,由于用户传输至认证服务系统的信息比较多,包括用户个人信息(包括用户帐户ID、用户的静态密码、手机号、qq号等)和当前动态密码,用户需要记忆冗长的用户个人信息,这也给用户带来了不便,降低了动态密码认证方式的易用性。\n发明内容\n[0006] 为了解决采用现有的动态密码认证方式认证用户身份时易暴露用户个人信息,及其易用性不高的问题,本发明提供了一种动态密码认证系统及方法。 \n[0007] 本发明提供的动态密码认证系统包括客户端接口、数据库和管理服务器,所述系统还包括内置有用户个人信息的动态令牌和认证服务器; \n[0008] 所述动态令牌包括身份认证模块、存储模块和动态密码生成模块,所述身份认证模块用于认证动态令牌用户的身份,所述存储模块用于存储所述用户个人信息和密钥,所述密钥包括个人密钥和共享密钥,所述动态密码生成模块用于根据时间/事件因素和所述个人密钥生成动态密码1,根据所述动态密码1,并结合所述用户个人信息和共享密钥计算生成动态密码2; \n[0009] 所述认证服务器包括动态密码接收模块、计算模块和动态密码验证模块,所述动态密码接收模块用于接收由所述动态令牌生成的所述动态密码2,所述计算模块用于根据所述共享密钥对所述动态密码2进行计算得到所述动态密码1和用户个人信息,所述动态密码验证模块用于根据所述用户个人信息从所述数据库中检索到对应的个人密钥,并采用与所述动态密码生成模块生成所述动态密码1或2时相同的算法计算得到当前的有效密码,将所述有效密码与所述动态密码1或2进行比对,以验证所述动态密码1或2。 [0010] 所述认证服务器还包括存储模块,所述存储模块用于存储所述共享密钥。 [0011] 所述存储模块中存储的所述用户个人信息和密钥在初始化所述动态令牌时被置入,所述密钥包括所述个人密钥和共享密钥。 \n[0012] 所述数据库存储所述个人密钥,或者存储所述个人密钥和共享密钥。 [0013] 所述动态密码1或2为字母、数字和汉字中的一种或几种形式的组合。 [0014] 所述动态令牌为硬件动态令牌或软件动态令牌。 \n[0015] 所述身份认证模块在用户使用所述动态令牌前对所述用户进行身份认证;所述身份认证的方式为PIN码认证方式或生物特征认证方式。 \n[0016] 所述存储模块存储至少一个所述用户个人信息,所述用户个人信息与其对应的用户的PIN码或生物特征相匹配。 \n[0017] 本发明还提供了一种动态密码认证方法,所述方法包括: \n[0018] 动态令牌认证用户身份; \n[0019] 所述用户身份认证通过后,所述动态令牌根据时间/事件因素和个人密钥生成动态密码1,根据所述动态密码1,并结合用户个人信息和共享密钥计算生成动态密码2; [0020] 用户通过客户端接口将所述动态密码2传输至认证服务器; \n[0021] 所述认证服务器接收到所述动态密码2并根据所述共享密钥对其进行计算得到所述动态密码1和用户个人信息后,根据所述用户个人信息从数据库中检索到对应的个人密钥,并采用与所述动态令牌生成所述动态密码1或2时相同的算法计算得到当前的有效密码,将所述有效密码与所述动态密码1或2进行比对,以验证所述动态密码1或2。 [0022] 所述采用与所述动态令牌生成所述动态密码1或2时相同的算法计算得到当前的有效密码,将所述有效密码与所述动态密码1或2进行比对,以验证所述动态密码1或2的步骤具体为:根据所述个人密钥和时间/事件因素计算得到当前的有效密码,将所述有效密码与生成的所述动态密码1进行比对,如果相同,则验证通过,否则,提示出错; [0023] 或,根据所述个人密钥、时间/事件因素、共享密钥和用户个人信息计算得到当前的有效密码,将所述有效密码与所述动态密码2进行比对,如果相同,则验证通过,否则,提示出错。 \n[0024] 所述认证用户身份的方式为PIN码认证方式或生物特征认证方式。 [0025] 所述动态令牌存储至少一个所述用户个人信息;当所述动态令牌存储两个以上所述用户个人信息时,所述动态令牌生成动态密码的步骤具体为:所述动态令牌根据时间/事件因素和内置的与当前用户的PIN码或生物特征相匹配的所述用户个人信息,并结合密钥计算生成动态密码,所述密钥包括个人密钥和共享密钥。 \n[0026] 所述动态密码1或2为字母、数字和汉字中的一种或几种形式的组合。 [0027] 所述动态令牌为硬件动态令牌或软件动态令牌。 \n[0028] 有益效果:本发明通过将用户个人信息内置在动态令牌中,用作生成动态密码的一个因素,并且用户只需输入动态密码来进行登录认证,省去了记忆和输入冗长用户个人信息的麻烦,提高了动态密码认证方式的易用性,同时防止了在网络传输中用户个人信息被底层木马所截取,保护了用户个人信息的私密性。另外,用户在使用动态令牌前需先通过身份认证,增加了一层保护,提高了动态密码认证方式的安全性。 \n[0029] 附图说明\n[0030] 图1是本发明实施例提供的动态密码认证系统的结构框图; \n[0031] 图2是本发明实施例提供的动态密码认证方法的流程图。 \n[0032] 具体实施方式\n[0033] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。 \n[0034] 图1是本发明实施例提供的动态密码认证系统,该系统包括动态令牌、客户端接口、认证服务器、数据库和管理服务器。其中,动态令牌包括用于认证动态令牌用户身份的身份认证模块,用于存储用户个人信息和密钥的存储模块和用于根据时间/事件因素和用户个人信息,并结合密钥计算生成动态密码的动态密码生成模块;客户端接口用于接收动态令牌生成的动态密码,并将动态密码通过网络传输至认证服务器;认证服务器包括动态密码接收模块、计算模块和动态密码验证模块,动态密码接收模块用于接收由动态令牌生成的动态密码,计算模块用于对动态密码接收模块收到的动态密码进行计算得到用户个人信息,动态密码验证模块用于根据用户个人信息在数据库中检索相关信息,以验证动态密码接收模块收到的动态密码;认证服务器还可以包括用于存储共享密钥的存储模块;数据库用于存储系统数据和认证数据,认证数据包括密钥等与用户个人信息相对应的用于验证动态密码的信息;管理服务器用于令牌管理、人员管理、身份管理、权限管理、系统参数管理等。动态令牌可以是硬件动态令牌或软件动态令牌。 \n[0035] 动态令牌中的用户个人信息和密钥是在动态令牌初始化时被置入的。动态令牌中的密钥包括个人密钥和共享密钥,个人密钥和共享密钥可以相同,也可以不相同,当动态令牌中存储多个用户个人信息时,多个用户的共享密钥是相同的,个人密钥可以相同,也可以不相同。动态密码包括动态密码1和动态密码2,动态密码生成模块在生成动态密码时先根据时间/事件因素和个人密钥生成动态密码1,然后再结合动态密码1、用户个人信息和共享密钥计算生成动态密码2;在认证服务器端,计算模块根据共享密钥对动态密码2进行计算,得到用户个人信息和动态密码1。动态密码可以为字母、数字和汉字中的一种或几种形式的组合。用户在使用动态令牌前需要先通过身份认证模块对其合法用户身份的认证,身份认证的方式包括PIN码认证方式和生物特征认证方式。动态令牌中的存储模块可以存储至少一个用户的个人信息,用户个人信息与其对应的PIN码或生物特征是相匹配的,用户通过身份认证后,动态令牌会自动调出与当前用户PIN码或生物特征相匹配的用户个人信息,并根据时间/事件因素和密钥计算生成动态密码。由于用户个人信息内置在动态令牌中,所以省去了用户记忆和 输入个人信息的麻烦。 \n[0036] 客户端接口将动态密码通过网络传输至认证服务器,不需要传输用户个人信息,从而防止了在网络传输中用户个人信息被底层木马所截取,保护了用户个人信息的私密性。 \n[0037] 基于上面实施例提供的动态密码认证系统,本发明实施例还提供了动态密码认证方法。本实施例中,动态令牌中内置一个用户的个人信息,如图2所示,动态密码认证方法具体包括以下步骤: \n[0038] 步骤201:初始化动态令牌,置入用户个人信息、个人密钥和共享密钥。 [0039] 动态令牌可以为硬件动态令牌或软件动态令牌。 \n[0040] 步骤202:动态令牌以PIN码认证方式认证用户身份,认证通过执行步骤204,否则执行步骤203。 \n[0041] 动态令牌还可以以生物特征认证方式来认证用户身份。 \n[0042] 步骤203:动态令牌提示出错。 \n[0043] 步骤204:动态令牌根据时间/事件因素和内置的个人密钥生成动态密码1,然后根据动态密码1,并结合用户个人信息和共享密钥计算生成动态密码2。 [0044] 动态密码为字母、数字和汉字中的一种或几种形式的组合,计算的方式包括加密、签名、打包等。 \n[0045] 步骤205:客户端接口接收用户输入的动态密码2,并通过网络将动态密码2传输至认证服务器。 \n[0046] 步骤206:认证服务器接收由客户端接口传输来的动态密码2。 [0047] 步骤207:认证服务器利用内部存储的共享密钥对接收到的动态密码2进行计算得到动态密码1和用户个人信息,根据用户个人信息从数据库中检索到对应的个人密钥,然后根据个人密钥和时间/事件因素计算得到当前的有效密码,将有效密码与动态密码1进行比对,如果相同,则执行步骤209,否则执行步骤208。 \n[0048] 共享密钥还可以存储在数据库中,认证服务器可以直接调用。 [0049] 认证服务器还可以通过验证动态密码2来拒绝或允许用户登录,具体验证步骤为:认证服务器接收并保存动态密码2,根据共享密钥对动态密码2进行计算得到动态密码\n1和用户个人信息,根据用户个人信息从数据库中检索到对应的个人密钥,根据个人密钥、时间/事件因素、共享密钥和用户个人信息计算得到当前的有效密码,将有效密码与动态密码2进行比对,如果相同,则执行步骤209,否则执行步骤208。 \n[0050] 步骤208:提示出错,拒绝登录。 \n[0051] 步骤209:验证通过,允许用户登录。 \n[0052] 另外,动态令牌还可以内置两个以上用户的个人信息,用户通过动态令牌合法用户的身份认证后,动态令牌会自动调出与当前用户PIN码或生物特征相匹配的用户个人信息,并根据时间/事件因素、个人密钥和共享密钥计算生成动态密码;客户端接口将收到的动态密码通过网络传输至认证服务器进行验证。 \n[0053] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
法律信息
- 2011-09-14
专利权人的姓名或者名称、地址的变更
专利权人由北京飞天诚信科技有限公司变更为飞天诚信科技股份有限公司
地址由100083 北京市海淀区学院路40号研7楼5层变更为100085 北京市海淀区学清路9号汇智大厦B座17层
- 2011-05-18
- 2007-12-05
- 2007-10-10
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2006-02-08
|
2004-11-30
| | |
2
| |
2007-03-07
|
2006-09-15
| | |
3
| |
2007-03-28
|
2006-10-09
| | |
4
| |
2005-06-01
|
2004-12-28
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 1 | | 2013-09-02 | 2013-09-02 | | |
2 | | 2013-09-02 | 2013-09-02 | | |