无令牌动态口令身份认证方法 所属技术领域:本发明涉及一种身份认证方法,特别是无令牌动态口令身份认证方法。
背景技术:众所周知,身份认证是信息安全的6大目标之一,是一切信息安全系统的基础。当前流行的身份认证技术主要有4种,即静态口令、动态口令、PKI和数字证书以及生物特征识别。其中静态口令由于其简单易用,当前使用最为普遍,但其安全性极差,只能应用于一般无安全要求的场合。PKI和数字证书技术的安全性较高,并且除了身份认证以外还能提供数字签名功能以实现不可否认的特性,但是这种系统使用比较麻烦,管理比较复杂,成本较高,因此目前只适用于需要数字签名等场合,而不能普遍使用。生物特征识别技术的形式很多,虽然它们在安全性上有其特点,但是在实际使用中还存在一些问题,例如识别成功率不高、系统成本较高、远程识别困难、个人隐私难以保护等,所以迄今为止尚未在信息网络系统中大量采用。而动态口令技术由于与原来的静态口令操作类似,使用非常方便,加上口令动态变化,每次不同,所以极为安全。再加上系统成本较低,是目前信息网络系统中用来解决安全身份认证的一个极有前途的技术。动态口令技术有几种方案,目前较多使用的是采用一种叫做令牌的动态口令生成器,用户根据令牌产生的一次性口令来登录至系统或网络。这些令牌有的价格较贵,有的必须在客户机上具有硬件设备接口或专门的客户软件才能使用,因此不能很好地在有些场合使用,例如对于用户数量极多(例如几万至几十万,甚至到几百万用户的情况)的情况,大量令牌需要的费用太高;同时,对于用户需要流动因而使用不固定地客户机而且可能是非PC的客户机(如银行ATM取款机等)的情况,也难以实际使用。
发明内容:本发明的目的是给出一种无令牌动态口令身份认证方法,它安全性好,成本低,使用方便,以克服现有动态口令身份认证使用令牌价格较贵、使用不方便,不能很好地在有些场合使用的问题。
本发明的目的是这样实现的,无令牌动态口令身份认证方法,它至少包括以下步骤:
通过移动通信网络得到数字串信息,将所得到的数字串信息与个人私有的PIN码经算法得到完整密码信息输入到需要登录的网络;所述的网络中心验证输入密码,当确认为合法的用户时,允许进一步进入正在使用的网络;当输入密码不正确时,不允许进一步进入使用的网络。
所述的网络是ATM系统。
所述的网络是网站。
所述的算法是将所得到的数字串信息作为完整密码的前段密码,而将个人PIN码作为完整密码的后段经拼接形成完整密码。
所述的算法是将所得到的数字串信息作为完整密码的后段密码,而将个人PIN码作为完整密码的前段经拼接形成完整密码。
所述的确认合法用户过程可以是把完整密码分解成个人PIN码和数字串信息两部分;然后把它们分别与数据库中存贮的相应记录进行比较;当不符合时,给出提示信息;当比较符合时,进一步进入网络系统进行操作。
所述的确认合法用户过程可以是把完整密码与数据库中存贮的相应记录进行比较;当不符合时,给出提示信息;当比较符合时,进一步进入网络系统进行操作。
所述的每次发送的数字串信息与在此之前的数字串信息是不相同的。
所述的数字串信息是当接收到上述的装置发出的需求命令后给出的,并由上述装置手机接收。
所述的数字串信息是当每次登录成功后由网络中心向上述的装置发送下一次登录时需使用的数字串信息。
本发明的特点是:由于用户在登录网络时,首先得到一串数字信息,将这一数字串信息连同一个人密PIN通过算法一起输入到网络或网站的登录框中,要求登录。每一次的数字串信息是不相同的,所以即使被人偷看、窃取或截获到也无法用它来冒充该用户再次进行登录。完整的密码是由数字串信息连同一个人密PIN码通过算法一起产生的,这进一步提高了安全性,即使有人设法从某个用户处窃取了其手机或获知了这一数字串信息,但是由于他不知道该用户的私有PIN码,所以也无法冒充该用户进行登录。这就是一种双因素强力身份认证技术,攻击者必须同时具有用户的短信装置(例如手机)和动态口令系统中的PIN码这两个因素才能实现冒名顶替。它可以利用现有的通信工具手机,所以成本低使用方便。
下面结合实施例附图对本发明作进一步说明;
附图说明:图1是本发明实施例1结构示意图;
图2是实施例2结构示意图。
图中:1、手机;2、显示屏;3、网络输入设备;4、键盘;5、密码管理中心;6、通信电缆;7、网络。
具体实施例方式:实施例1如图1,它给出了银行ATM系统应用本发明的一个实施例,首先通过手机1向银行密码管理中心5索取一串数字串,由密码管理中心5以短消息的形式向手机1发送一串数字串“863”到手机1的显示屏2。如个人PIN码是“369”,然后将“863”和“369”拼接成“863369”,“863369”作为完整密码通过网络输入设备3的键盘4输入到银行ATM。
另一种方式是由密码管理中心5以短消息的形式向手机1发送一串数字串“863”到手机1的显示屏2,如个人PIN码是“369”,然后将“863”和“369”拼接成“369863”,“369863”作为完整密码通过网络输入设备3的键盘4输入到银行ATM。后一种方式与前一种方式不同之处是“863”和“369”进行倒置,当然也可以将二者交叉结合成“836639”。
密码管理中心5可以通过公共通信网7由通信电缆6与银行ATM系统电连接,银行ATM系统或网络输入设备3以不同的编码接入。
银行ATM的密码一般按6位,前面的例子中数字串三位,个人PIN码是三位,加起来是6位,刚好满足6位。但在以上算法中,安全性显然是有问题的。为了提高其安全性,例如,数字串可按6位,个人PIN码也是6位,将二者加起来取6位即可。
在上述交易过程中,每进行一次交易过程,都需要密码管理中心5向手机1发去新的密码,并进行认证。
下面是实施例1的一个完整交易过程流程:
进入手机1的短信功能,
通过手机键盘向手机1输入一个人身份码和密码管理中心ID码(可用手机号码);向密码管理中心发送一短信;
密码管理中心得到个人身份码;
根据个人身份码得到一串数据;
将一串数据以短信息方式发送到上述手机1内;
上述得到一串数据的手机显示这串数据;
将一串数据和另一个个人PIN码通过算法得到一组完整密码;
把信用卡插入ATM系统,并进入密码输入状态;
将一组完整密码通过键盘输入到ATM设备;
ATM设备通过信用卡和输入的完整密码一起进入密码管理中心进行认证;
上述认证后进入提款金额输入;
完成整个交易。
图2是用在电脑网络交易过程的实施例2,它与实施例1不同之处,涉及的算法可选取的安全性更高。同样,首先通过手机1向网络密码管理中心5索取一串数字串,由密码管理中心5以短消息的形式向手机1发送一串数字串“668563”到手机1的显示屏2。如个人密码是“369”,然后将“668563”与“369”拼接得到“668563369”,将“668563369”作为密码通过网络输入设备3的键盘4输入到计算机。当然“668563”和“369”可以采用更复杂的算法产生一组密码,这种方法可通过计算机内安装的支持软件完成。
实施例2的完整交易过程与实施例1基本相同;但也有所区别,具体如下,进入网络系统,并处于密码输入状态;
进入手机1的短信功能,
通过手机键盘向手机1输入一个人身份码和密码管理中心ID码;向密码管理中心发送短信;
密码管理中心得到个人身份码;
根据个人身份码得到一串数据;
将一串数据以短信息方式发送到上述手机1内;
上述得到一串数据的手机显示这串数据;
将一串数据和另一个个人PIN码通过算法得到一组完整密码;
将一组完整密码用户名和一起输入网络7到密码管理中心进行认证;
上述认证通过后进入相应系统;
如上述认证不能通过给出提示。