一种双因子动态密码认证的方法及系统的制作方法

文档序号:6556255阅读:546来源:国知局
专利名称:一种双因子动态密码认证的方法及系统的制作方法
技术领域
本发明涉及一种网上交易中用于确定客户身份的认证方法及系统,尤其是一种在网上交易时基于手机短信的双因子动态密码认证的方法及系统。
背景技术
目前,随着互联网技术飞速发展,网上交易已经深入到人们的日常生活与工作中,其中最具有代表性的就是“网上银行”与“网上证券”的应用。例如“网上银行”作为一种全新的银行客户服务提交渠道,客户无论在家里、办公室,还是在旅途中都可以通过网络办理包括查询、转账、缴费等各种银行业务,管理自己的资产。但网上银行的安全性问题,也日益突出地显现出来,对客户的用户识别码(例如帐号)和密码等资料在交易过程中极易被盗,被盗后不法分子利用盗取的用户识别码和密码进行非法操作,直接侵害了客户的利益,这不仅直接影响到网上交易的信誉,也对网上交易发展产生不利的负面影响。
目前计算机及网络系统中常用的身份认证方式主要有以下几种用户名/密码方式用户名/密码是最简单也是最常用的身份认证方法,它是基于“whatyou know”的验证手段。每个用户的密码是由这个用户自己设定的,只有他自己才知道,因此只要能够正确输入密码,计算机就认为他就是这个用户。然而实际上,由于许多用户为了防止忘记密码,经常采用诸如自己或家人的生日、电话号码等容易被他人猜测到的有意义的字符串作为密码,或者把密码抄在一个自己认为安全的地方,这都存在着许多安全隐患,极易造成密码泄露。即使能保证用户密码不被泄漏,由于密码是静态的数据,并且在验证过程中需要在计算机内存和网络中传输,而每次验证过程使用的验证信息都是相同的,很容易被驻留在计算机内存中的木马等病毒程序或网络中的监听设备截获。因此用户名/密码方式一种是极不安全的身份认证方式。可以说基本上没有任何安全性可言。
IC卡认证IC卡是一种内置集成电路的卡片,卡片中存有与用户身份相关的数据,IC卡由专门的厂商通过专门的设备生产,可以认为是不可复制的硬件。IC卡由合法用户随身携带,登录时必须将IC卡插入专用的读卡器读取其中的信息,以验证用户的身份。IC卡认证是基于“what you have”的手段,通过IC卡硬件不可复制来保证用户身份不会被仿冒。然而由于每次从IC卡中读取的数据还是静态的,通过内存扫描或网络监听等技术还是很容易截取到用户的身份验证信息。因此,静态验证的方式还是存在根本的安全隐患。
USB Key认证基于USB Key的身份认证方式是近几年发展起来的一种身份认证技术。USB Key是一种USB接口的硬件设备,它内置单片机或智能卡芯片,可以存储用户的基于PKI(Public Key Infrastructure公钥基础设施)构架的数字证书。而这种数字证书认证方式可以有效保证用户的身份安全和数据安全。数字证书是由可信任的第三方认证机构颁发的一组包含用户身份信息(密钥)的数据结构,PKI体系通过采用密码学算法构建了一套完善的流程和保证了数字证书的持有人的身份和数据安全。然而,数字证书本身也是一种数字身份,还是存在被复制的危险,于是,USB Key作为数字证书存储介质增加了很多自毁措施,在受到破解的时候自动毁灭所存储的数字证书。而且PKI体系的一些安全措施,使得USB Key可以保证用户数字证书无法被复制。这种方式的最大缺点就是中心端PKI的部署成本非常巨大,而且在用户端需要每人配置一个USB KEY,成本较高;另外,每次使用需要把USB KEY插入到微机的USB接口中,如果微机没有USB接口或者接口坏了或者USB KEY坏了就无法使用。
生物特征认证生物特征认证是指采用每个人独一无二的生物特征来验证用户身份的技术。常见的有指纹识别、虹膜识别等。从理论上说,生物特征认证是最可靠的身份认证方式,因为它直接使用人的物理特征来表示每一个人的数字身份,不同的人具有相同生物特征的可能性可以忽略不计,因此几乎不可能被仿冒。生物特征认证基于生物特征识别技术,受到现在的生物特征识别技术成熟度的影响,采用生物特征认证还具有较大的局限性。首先,生物特征识别的准确性和稳定性还有待提高,特别是如果用户身体受到伤病或污渍的影响,往往导致无法正常识别,造成合法用户无法登陆的情况。其次,由于研发投入较大和产量较小的原因,生物特征认证系统的成本非常高,目前只适合于一些安全性要求非常高的场合如部队等使用,还无法做到大面积推广。
动态密码动态密码技术是一种让用户的密码按照时间或使用次数不断动态变化,每个密码只使用一次的技术。它采用一种称之为动态令牌的专用硬件,内置电源、密码生成芯片和显示屏,密码生成芯片运行专门的密码算法,根据当前时间或使用次数生成当前密码并显示在显示屏上。认证服务器采用相同的算法计算当前的有效密码。用户使用时只需要将动态令牌上显示的当前密码输入客户端计算机,即可实现身份的确认。由于每次使用的密码必须由动态令牌来产生,只有合法用户才持有该硬件,所以只要密码验证通过就可以认为该用户的身份是可靠的。而用户每次使用的密码都不相同,即使黑客截获了一次密码,也无法利用这个密码来仿冒合法用户的身份。由于动态密码技术采用一次一密的方法,有效地保证了用户身份的安全性,且成本与IC卡认证、USB Key认证、生物特征认证的开发成本较低,相对而言具有明显的优势。
目前的动态密码方式大多采用的是硬件方式的、基于时间同步的认证令牌。但是这种基于时间同步的动态密码系统有2个非常明显的缺点1、由于要求用户端的认证令牌与中心端认证服务器保持严格的时间同步,但是在现实情况中,这种同步很难做到十分精确,总会发生时间漂移,使得用户端的认证令牌与中心端认证服务器时间不一致,从而使得双方在某个时刻产生的密码不一致。对于这种情况,系统需要额外的方法来不断对时间进行修正,从而对用户使用造成的不便;2、认证令牌的价格问题,例如目前应用最广的RSA认证令牌,平均要1000元/只,单位使用成本较高,无法大面积推广使用。当然有些金融机构就采用一些变通的方法来给用户提供动态密码。例如中国建设银行就一次性给用户提供20个动态密码,每个密码都封装成刮刮卡的形式,刮开一张,用过一次后就作废。下次使用就刮另外一张。全部用完后到银行再次申请20张卡。这种方式从使用角度来说也十分不方便,成本也较高。
在黄金富于2000年7月10日申请的名称为“采用动态密码的认证付款的方法和相应的电子装置”的发明专利(申请号为00109820.9)中,虽然也采用了随机码(天码),但是,他的动态密码就是心码和天码的简单合并(心码在前,天码在后),这种动态密码一旦被他人截获,非常容易得到用户的心码,如果再通过其他方法截获用户的卡号后,黑客就可以伪造出完全可以使用的银行卡;另外,在该发明专利中,天码存在的时间过长,一旦黑客截获到用户的动态密码,就可以在一天的时间内非法使用;此外,正是由于存在上述缺陷,该专利涉及的技术方案只能用在向商家付款这种环境中,存在一定的局限性。

发明内容
本发明的目的在于针对目前网上交易时用于确定客户身份的几种方法存在的不足和问题,尤其动态密码方式存在的用户端的认证令牌与中心端认证服务器之间容易产生时间漂移,必须经常校正,以及RSA认证令牌因成本问题难于推广,一次性提供有限个动态密码使用不方便的诸多实际问题,提供了一种在网上交易时用于确定客户身份的新的双因子动态密码认证的方法及系统。
本发明的目的是这样实现的一种双因子动态密码认证的方法,其特征在于使用前,用户应该在相应的网络业务机构申请备案,并将用户识别码、用户的短信接收号码和客户密码存储在网络业务机构的网络客户资料数据库中;
使用中a)用户通过用户计算机输入用户识别码,登录认证服务器经过网络客户资料数据库服务器调取用户的短信接收号码和客户密码,由登录认证服务器产生一个随机密码,并将它通过用户的短信接收号码发送给用户;b)用户将客户密码和获得的随机密码及时输入用户计算机,用户计算机将客户密码和随机密码进行单向加密运算,并将运算结果经过网络服务器传输到登录认证服务器;c)登录认证服务器也将调取的客户密码和已发送给用户的随机密码进行单向加密运算,并与从网络服务器收到的结果进行比较;d)如果两者的计算结果一致,用户身份被确认,登录认证服务器将使网络服务器开通,终端接受用户的操作指令;如果两者的计算结果不一致,用户被拒绝,登录认证服务器将使网络服务器阻断,终端不能接受用户的操作指令。
在双因子动态密码认证的方法中所述的用户识别码为身份证号码,或专用卡号,或手机号码,或特定的字符;所述的有效短信接收号码为手机或小灵通号码;用户获得的随机密码的方式为通过手机或小灵通方式获得的短信,所述的终端是与该用户相关的网上银行业务系统,或网上证券交易系统。
在双因子动态密码认证的方法中用户将客户密码和获得的随机密码及时输入用户计算机,是指手机或小灵通方式接收到随机密码10分钟内,用户必须将客户密码和获得的随机密码输入用户计算机。
一种实现上述双因子动态密码认证方法的系统,包括用户计算机、网络服务器、网络客户资料数据库服务器和终端,其特征在于还包括登录认证服务器、基站和用户手机,其中网络服务器串接在用户计算机和终端之间,网络服务器通过登录认证服务器由数据线与网络客户资料数据库连接,基站将登录认证服务器产生的含有随机密码的短信数据发送给用户手机或小灵通。
在实现双因子动态密码认证方法的系统中网络服务器的输入端设有防火墙,登录认证服务器通过短信网关向基站传输含有随机密码的短信数据,所述的终端是与该用户相关的网上银行业务系统,或网上购物交易系统,或网上证券交易系统。
在实现双因子动态密码认证方法的系统中所述的登录认证服务器为一台DELL的工业机架服务器,核心配置为1.86G主频的CPU,512M的内存,80G的硬盘,运行LUNUX操作系统,并配有以下软件模块核心模块、通信模块、数据查询模块、随机码模块、加密模块、定时器模块、短信模块。
本发明的优点在于由于存在客户密码和随机密码双因子,而随机密码是不确定的,只有在输入用户识别码才能产生,产生的随机密码是通过用户的有效通讯方式以短信的形式发送给用户,又要求用户必须在获得随机密码后及时输入用户计算机,每个环节环环相套,这些都确保在网上交易时能有效地验证客户真实身份,提高了识别的准确性;同时,每个环节保密性很强,尤其是对客户密码和随机密码这对因子采用单向加密运算(拒绝反向推算),使破译更加困难;另外,作为双因子之一的“客户密码”通过计算机网络传输,而作为另外一个因子的“随机密码”通过短信方式传输,这种采用两种不同的物理信道来传输不同因子的方法的安全性更高;最后,本方法的实现成本低,用户不需要配备额外的硬件设备,使得该方法的大面积推广成为可能。


图1是实现双因子动态密码认证方法的系统示意图;图2是登录认证服务器的结构原理框图。
图中1、用户计算机;2、防火墙;3、网络服务器;4、终端;5、网络客户资料数据库服务器;6、登录认证服务器;7、短信网关;8、基站。
具体实施例方式
附图非限制性地公开了一种实现双因子动态密码认证方法的具体系统,以及登录认证服务器的结构原理框图,下面结合附图对本发明作进一步的描述。
由图1可见,实现双因子动态密码认证方法的具体系统与传统的网上交易系统一样,都包括用户计算机1、网络服务器3、网络客户资料数据库服务器5和终端4,其区别在于还包括登录认证服务器6、基站8和用户手机,网络服务器3通过登录认证服务器6由数据线与网络客户资料数据库服务器5连接,基站8将登录认证服务器6产生的含有随机密码的短信数据发送给用户手机。具体实施时,网络服务器3的输入端设有防火墙2,登录认证服务器6通过短信网关7向基站8传输含有随机密码的短信数据,所述的终端4可以是与该用户相关的网上银行业务系统,或网上证券交易系统。在本实施例中,终端4为网上银行业务系统,其配置为用户计算机1具体配置为1.4G主频的CPU,256M的内存,60G的硬盘,15寸液晶显示器,运行Windows 2000系统;防火墙2选用了安氏公司的100兆防火墙;网络服务器3(WEB服务器)为1.7G主频的CPU,512M的内存,60G的硬盘,15寸液晶显示器,运行Windows 2000 SERVER系统,运行TOMCAT4.0;终端4为网上银行AAA(认证、授权、审计)系统,具体配置为一台RADIUS服务器;网络客户资料数据库服务器5选用了运行在LINUX平台上的ORACLE 8数据库系统;登录认证服务器6也叫做WEB登录认证服务器,我们选用了一台DELL的工业机架服务器,运行LINUX操作系统。短信网关7选用了一台普通计算机,运行Windows2000系统,用于转发含有随机密码的短信数据,基站8则借用目前营业的移动、联通、小灵通的基站。
由图2可见,登录认证服务器6为一台DELL的工业机架服务器,其核心配置为1.86G主频的CPU,512M的内存,80G的硬盘,运行LUNUX操作系统;并配有以下软件模块核心模块、通信模块、数据查询模块、随机码模块、加密模块、定时器模块、短信模块,其中核心模块负责对其他模块的调度,同时保存所有的中间数据;通信模块主要负责与WEB服务器进行通信,获得所有用户的登录信息及加密后的验证信息;数据查询模块负责从后台数据库查询和调取核心模块所要求的数据;随机码模块负责产生随机码,提供一个动态计算因子;加密模块负责把核心模块提交的数据进行MD5或SHA1运算,并把结果回送给核心模块;定时器模块根据核心模块的要求产生定时器,并当定时结束时通知核心模块;短信模块负责与图1中的短信网关的通信。
下面以网上银行为例,进一步描述双因子动态密码认证的具体方法使用前,用户应该在相应的网上银行的业务机构申请备案,并将用户识别码、用户的短信接收号码和客户密码存储在网络业务机构的网络客户资料数据库中。所述的用户识别码为身份证号码,或专用卡号,或手机号码,或特定的字符;所述的有效短信接收号码为手机或小灵通号码。
使用中a)用户通过用户计算机1输入用户识别码,登录认证服务器6经过网络客户资料数据库服务器5调取用户的短信接收号码和客户密码,由登录认证服务器6产生一个随机密码,并将它通过用户的短信接收号码发送给用户;b)用户在手机或小灵通方式接收到随机密码10分钟内必须将客户密码和获得的随机密码输入用户计算机1,用户计算机1将客户密码和随机密码进行单向加密运算,并将运算结果经过网络服务器3传输到登录认证服务器6;c)登录认证服务器6也将调取的客户密码和产生的随机密码进行单向加密运算,并与网络服务器3传输的结果进行比较;d)如果两者的计算结果一致,用户身份被确认,登录认证服务器6将使网络服务器3开通,网上银行接受用户的操作指令;如果两者的计算结果不一致,用户被拒绝,登录认证服务器将使网络服务器3阻断,网上银行不能接受用户的操作指令。
如果10分钟内用户不能将客户密码和获得的随机密码输入用户计算机1,导致登录认证服务器6不能在规定的时间内收到网络服务器3传输的用户计算机1进行单向加密运算的结果,登录认证服务器6的单向加密运算的结果将消失,用户身份将被认为非法,网络服务器3将被阻断,网上银行不能接受用户的操作指令,用户只能重新操作,获得新的随机密码,再次重复上述过程。
权利要求
1.一种双因子动态密码认证的方法,其特征在于使用前,用户应该在相应的网络业务机构申请备案,并将用户识别码、用户的短信接收号码和客户密码存储在网络业务机构的网络客户资料数据库中;使用中a)用户通过用户计算机输入用户识别码,登录认证服务器从网络客户资料数据库服务器调取用户的短信接收号码和客户密码,由登录认证服务器产生一个随机密码,并将它通过用户的短信接收号码发送给用户;b)用户将客户密码和获得的随机密码及时输入用户计算机,用户计算机将客户密码和随机密码进行单向加密运算(MD5或SHA1),并将运算结果经过网络服务器传输到登录认证服务器;c)登录认证服务器也将调取的客户密码和已发送给用户的随机密码进行单向加密运算(MD5或SHA1),并与从网络服务器收到的结果进行比较;d)如果两者的计算结果一致,用户身份被确认,登录认证服务器将使网络服务器开通,终端接受用户的操作指令;如果两者的计算结果不一致,用户被拒绝,登录认证服务器将使网络服务器阻断,终端不能接受用户的操作指令。
2.根据权利要求1所述的双因子动态密码认证的方法,其特征在于所述的用户识别码为身份证号码,或专用卡号,或手机号码,或特定的字符;所述的有效短信接收号码为手机或小灵通号码;用户获得的随机密码的方式为通过手机或小灵通方式获得的短信,所述的终端是与该用户相关的网上银行业务系统,或网上证券交易系统。
3.根据权利要求1所述的双因子动态密码认证的方法,其特征在于用户将客户密码和获得的随机密码及时输入用户计算机,是指手机或小灵通方式接收到随机密码10分钟内,用户必须将客户密码和获得的随机密码输入用户计算机。
4.一种实现权利要求1所述双因子动态密码认证方法的系统,包括用户计算机、网络服务器、网络客户资料数据库服务器和终端,其特征在于还包括登录认证服务器、基站和用户手机,其中网络服务器串接在用户计算机和终端之间,网络服务器通过登录认证服务器由数据线与网络客户资料数据库服务器连接,基站将登录认证服务器产生的含有随机密码的短信数据发送给用户手机或小灵通。
5.根据权利要求4所述的实现双因子动态密码认证方法的系统,其特征在于网络服务器的输入端设有防火墙,登录认证服务器通过短信网关向基站传输含有随机密码的短信数据,所述的终端是与该用户相关的网上银行业务系统,或网上证券交易系统。
6.根据权利要求4或5所述的实现双因子动态密码认证方法的系统,其特征在于所述的登录认证服务器为一台DELL的工业机架服务器,核心配置为1.86G主频的CPU,512M的内存,80G的硬盘,运行LUNUX操作系统;并配有以下软件模块核心模块、通信模块、数据查询模块、随机码模块、加密模块、定时器模块、短信模块。
全文摘要
本发明涉及一种双因子动态密码认证的方法及系统。其方法是使用前,用户应在网络业务机构申请备案,在网络客户资料数据库中存储用户识别码、用户的短信接收号码和客户密码;使用中先通过用户计算机输入用户识别码,通过短信获得随机密码;用户再将客户密码和随机密码输入用户计算机,由用户计算机进行单向加密运算,将结果传输到登录认证服务器;登录认证服务器也将调取的客户密码和随机密码进行单向加密运算,并将两个结果进行比较;结果一致,用户身份将被确认,终端则接受用户的操作指令。实现上述方法的系统除了包括用户计算机、网络服务器、网络客户资料数据库服务器和终端外,还包括登录认证服务器、基站和用户手机。
文档编号G06Q30/00GK1811813SQ20061003857
公开日2006年8月2日 申请日期2006年3月2日 优先权日2006年3月2日
发明者韩林, 徐哲, 彭韬, 彭博 申请人:韩林, 徐哲, 彭韬, 彭博
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1