一种基于移动终端的身份认证系统及方法

文档序号:7769263阅读:1025来源:国知局
专利名称:一种基于移动终端的身份认证系统及方法
技术领域
本发明涉及无线通信、网络通信、算法安全以及网络安全相结合的技术,具体讲的是在可信移动终端上生成动态密码并使用此密码实现强身份认证的安全体系及方法。
背景技术
随着互联网的快速发展,越来越多的应用系统在公网上运行,网络安全问题日益突出,对于敏感操作入口的身份认证也变的异常重要。目前大多数应用系统仍然采用的是 用户名加静态密码的身份认证方式,这种认证方式有诸多的安全隐患,例如静态密码容易被猜测和破解、静态密码被黑客截获、静态密码被管理员非法使用、被钓鱼网站骗取、众多的静态密码不便于记忆等。针对上述问题目前主要有以下几种解决方案(I)数字证书使用数字证书可实现安全链路和数字签名,能较好的保护网上传输的信息。数字证书的局限是只能在己安装证书的电脑上进行操作,使用不方便,并且基于PKI的证书体系成本较高。(2)USB移动证书将密钥或数字证书存储在USB Key硬件设备中,利用内置在USBKey中的算法实现对用户身份的认证。使用USB Key的局限在于需要设备上有USB插口、需要有与设备上的操作系统对应的驱动程序并安装、面临着木马病毒的威胁,存在安全隐患、成本相对较高。(3)请求应答式密码体系在系统需要验证身份时,用户需要先发送一个获取密码的请求,服务器端收到请求后会生成一个临时密码并记住,然后通过特定的渠道发送给用户,用户再输入此密码到服务器端进行身份认证。由于用户每次获取的临时密码都不一样,这种验证方式可以增强安全性,但在整个验证的过程中,服务器端需要通过特定的渠道将密码传送给用户,因此具有一定的局限,并且不能保证传送渠道的安全,比如使用短信,密码都是以明文传输的。(4)动态密码(OTP)认证体系用户手中会有一个硬件设备,硬件设备中内置一个唯一的密钥,并会通过特定的算法生成动态密码,用户进行认证时候,除输入静态密码之夕卜,必须要求输入动态密码,此动态密码最终会被送到认证服务器端,服务器端首先找到与用户对应的密钥通过相同的算法生成动态密码,然后进行对比实现认证。算法会采用事件、时间等作为动态因子,因此硬件设备中每次生成的密码都是不同的,并且整个体系可以实现一个动态密码只能使用一次,这种认证体系是目前能够有效解决用户身份认证的方式之一。不过,用户使用硬件设备获取动态密码具有一定的缺陷成本较高、不能进行通信、不能很好的解决与认证服务器间的动态因子的同步、不能为用户提供丰富的操作体验和业务功能。

发明内容
有鉴于此,为了克服现有技术的不足,本发明提供一种基于移动终端的身份认证方法,此方法采用动态密码认证体系,以软件客户端代替硬件设备,节约了硬件生产成本,同时灵活的软件客户端能够与认证服务器间的动态因子实现同步,并且结合软件客户端提供一种方便与第三方应用系统集成的强身份认证方法,解决了使用硬件设备给整个认证体系带来的局限和不足。本发明的另一目的是实现所述基于移动终端的身份认证方法的系统。本发明提供一种基于移动终端的身份认证方法,包括步骤(I)获取登录自助服务端的初始密码,(2)用户登录自助服务端获取移动客户端初始化的序列号,(3)移动客户端初始化,(4)身份认证用户向第三方应用服务器提出登陆申请的同时,移动终端向认证服务器提出认证请求,第三方应用服务器获得认证服务器对移动终端认证结果后,向用户返回认证结果,所述移动终端向认证服务器提出的认证请求包括动态密码认证和位置信息 认证。进一步,所述步骤(I)用户通过第三方应用服务器向认证服务器或通过管理员向管理服务器请求登录自助服务器的初始密码,所生成初始密码及用户名保存于认证信息库,并向用户返回登录自助服务器的初始密码。进一步,所述步骤(2)用户通过自助服务器端向认证服务器请求初始化客户端的序列号,认证服务器生成所述序列号及其密钥,并加密保存于认证信息库中,同时通过自助服务器向用户返回所述序列号,所述序列号及用户名缓存于自助服务器。进一步,所述步骤(3)用户向移动终端手动输入或扫描二维码获取请求初始化的序列号,然后移动终端向自助服务器提出初始化请求,自助服务器根据序列号检索有效缓存,并向认证服务器获取密钥信息,所述认证服务器通过自助服务器向移动终端返回密钥信息,移动终端验证并保存所述密钥信息,并向自助服务器提出绑定请求,自助服务器绑定序列号与移动终端的标示信息,然后绑定序列号与用户名,完成移动终端初始化。进一步,移动终端采用一键设置完成绑定与初始化。进一步,所述客户端的动态因子与认证服务器的动态因子采用一键同步单元实现同步。进一步,所述客户端的动态密码通过一键校验单元输送到认证服务器进行快速校验。认证服务器按照对称加密算法或者杂凑算法生成私有密钥,所述移动终端使用每个客户端的私有密钥作为客户身份要素之一、采用时间因子或事件因子作为同步因子生成动态密码。保证移动链路传输数据的随机性、一次性有效和时效性。时间因子是以当前时间作为动态因子计算出动态密码,动态密码30秒或60秒变化一次。事件因子是以次数作为动态因子计算出动态密码。例如如果初始次数设置的是100 (此初始次数用户可以在自助服务器端自行设置,客户端初始化完成后,客户端和认证服务器端都保存有此初始次数),客户端首先以100为因子计算出动态密码,然后将次数加I保存;认证服务器端首先也以100为因子计算出动态密码进行检验,然后将次数加I保存;下次,双方都以101计算动态密码。无论是时间因子还是事件因子,都涉及到客户端和认证服务器端双方因子的同步。本发明中采用一键同步,保证了动态密码能校验通过。所谓一键同步是指与认证服务器端进行无线通信的客户端获取到认证服务器端的动态因子后与自己的动态因子相比较,然后客户端计算出一个差值保存起来,客户端的动态因子通过此差值就能与认证服务器端的动态因子保持一致。本发明灵活的软件客户端,只需第三方应用服务器提供给用户获取登录自助服务器的初始化密码的入口,即可方便实现与第三方应用的集成,与第三方应用能实现无缝对接。在实际应用中,第三方应用后台代码的改动越小越好;管理员要做的初始化工作越少越好;用户要做的初始化工作越少越好。一般使用此类系统,都需要建立用户帐号与令牌序列号的对应关系,此对应关系会保存在数据库里。认证服务器端会先通过用户帐号找到令牌序列号,然后在通过令牌序列号找到对应的密钥计算动态密码。以硬件为客户端的话,此对应关系需要人为的建立,可以是管理员去建立,也可以是用户通过自助服务端建立。与本发明相比,其工作量要大得多。本发明中只需用户在客户端点一下就可以完成初始化和绑定,称为一键初始化。 而一般的基于软件客户端的认证系统需要做初始化和绑定两步,用户首先进行客户端的初始化,然后通过管理员或自己登录自助服务端进行帐号和序列号的绑定。本发明中认证服务器可以对客户端当前的动态密码进行快速校验。当第三方应用要求用户输入客户端的动态密码,此时用户可以不用手动输入,只需在客户端点一下,就可将动态密码通过第三方应用服务器输送给认证服务器进行检验,称为一键检验。本发明提供基于上述移动终端的身份认证方法的认证系统,所述系统包括移动终端、自助服务器端和认证服务器端,所述移动终端与自助服务器端、认证服务器端分别无线通讯连接,所述自助服务器端与认证服务器端之间以互联网通讯连接,所述认证服务器端含有认证信息库和认证代理包,所述移动终端含有初始化完成后生成动态密码的动态密码生成单元、一键初始化单元、实现客户端与认证服务器端动态因子同步的一键同步单元、一键校验单元、认证结果接收单元和获取终端位置信息并上传至服务器的位置服务单元。进一步,所述认证服务器端包括采用非对称算法解出移动终端请求数据的数据解密模块,计算出动态密码的密码校验模块,保证已经使用过的动态密码不会被再次使用的访问控制模块,位置比对模块,数据加密模块,动态因子同步模块,密钥生成模块,初始化密码生成模块和日志模块,所述自助服务器端包括序列号生成模块,自保护模块,日志模块,用户自主操作模块,以及客户端更新模块。进一步,还包括管理服务器端,所述管理服务器端包括第三方应用管理模块、密钥分发模块、角色权限模块、认证服务器监控模块、客户端版本发布管理模块、日志管理模块、行为分析模块和报表展现模块。本发明中移动客户端包括软件和智能卡两种实现形式。本发明的有益效果在于I.本发明提供的属于动态密码认证体系的基于移动终端的身份认证方法,采用软件客户端代替硬件设备,节约了生产硬件的成本。2.本发明的软件客户端比较灵活,能够进行通信、软件客户端与认证服务器间的动态因子能够很方便的实现同步,并且软件客户端能够给用户带来丰富的操作体验和业务功能(如一键完成客户端的初始化并绑定、通过扫描二维码完成初始化并绑定、一键校验动态密码、一键同步动态因子、认证结果接收单元、查询登录日志等)。
3.本发明结合软件客户端提供了一种非常方便与第三方应用系统集成的强身份认证解决方案,从而完全解决了使用硬件设备给整个认证体系带来的局限和不足。


图I.为本发明系统工作原理2.为本发明系统工作流程图(步骤(I))图3.为本发明系统工作流程图(步骤(2)) 图4.为本发明系统工作流程图(步骤(3))图5.为本发明系统工作流程图(步骤(4))
图6.为本发明系统工作流程图(步骤(4))
具体实施例方式本发明提供的一种基于移动终端的身份认证方法,是按照如下步骤实现的(I)用户可通过第三方应用系统(B/S)或向管理员获取登录自助服务端的初始密码(如图2所述)。(2)生成初始化移动客户端的序列号,(如图3所述)(3)移动客户端初始化,(如图4所述)(4)身份认证用户向第三方应用服务器提出登陆申请的同时,移动终端向认证服务器提出认证请求,第三方应用服务器获得认证服务器对移动终端认证结果后,向用户返回认证结果(如图5所述)。本发明用于实现上述身份认证方法的系统包括移动终端、自助服务器端和认证服务器端,所述认证服务器端含有认证信息库、以及认证代理包。(如图I所述,其中认证系统即指认证服务器。)所述移动终端(客户端)包括(I)动态密码生成单元初始化完成后,移动终端会得到一个密钥,此密钥加密保存在终端内,它是唯一的,每个用户得到的密钥都会不一样,它主要用于计算动态密码。password = OTP (密钥 + 动态因子)password为生成的动态密码;OTP为生成动态密码的算法我们采用的是单向散列算法或对称加密算法,目前本发明生成OTP的算法有私有的杂凑算法、OATH算法、SM3算法、SMS4算法、AES算法等。(2) 一键初始化单元用户在客户端可通过扫描二维码或直接输入序列号即可完成初始化,初始化完成后,用户就可使用客户端生成的动态密码了。客户端在初始化通信过程中采用非对称加密算法。(3) 一键同步单元用户在客户端只需点击一下就可完成客户端与认证服务器端的动态因子(时间因子或事件因子)同步。(4) 一键检验单元用户在客户端只需点击一下就可以通过认证服务器端对本次动态密码的校验,并且返回校验结果。(5)认证结果接收单元移动终端会获取并显示本次动态密码的校验结果。(6)客户端支持多个第三方应用的动态密码生成,客户端导航页上方是按行业分类,点击不同的行业会在下方显示此行业下的各个应用,点击每个应用就会进入对应的动态密码生成页。(7)位置服务单元是运行于移动终端设备上的应用程序,借助于运营商提供的通道与相关的API接口,获取终端所在位置,并且上传至服务器。所述认证服务器端包括(I)数据解密模块,采用非对称算法解密收到的通信数据;(2)密码校验模块根据服务器端所存储相应的密钥、动态因子,按照与客户端相 同的算法计算出动态密码,并采用一定窗口策略,校验客户端上行的动态密码。如果以时间为动态因子,就有时间窗口 当前时间_n<当前时间<当前时间+η,η为配置的时间窗口(分钟),只要窗口内生成的动态密码有一个与客户端的动态密码相同就认为校验通过。如果以事件为动态因子,就有事件窗口 η(次数),同时可以随机生成一个初始次数。(3)访问控制模块同一个密码只能使用一次,认证控制服务提供了识别已经使用过的动态密码的功能,保证已经使用过的动态密码不会被再次使用。(4)位置比对模块对用户登录IP信息以及相应的移动终端的位置信息进行存储和分析,对移动终端所提供位置信息以及应用服务器所登录的PC的IP地址,根据用户经常登录存储的位置与IP地址等信息进行比对,一旦捕获异常,采取相应的措施。(5)数据加密模块采用非对称算法加密要通信的数据。(6)动态因子同步模块提供认证服务器端的动态因子。(7)密钥生成模块用来生成唯一密钥,客户端所获得的密钥都是不一样的。(8)初始化密码生成模块为第三方应用的用户生成登陆自助服务端的初始化密码,并将用户名、初始密码保存在认证信息库。(9)日志模块记录认证日志、位置比对日志等,便于做行为分析。所述自助服务器端包括(I)序列号生成模块生成客户端初始化时需要用到的序列号或序列号二维码。(2)自保护模块一旦用户初始化了客户端,自助服务器端自动启用动态密码保护。(3)日志模块查看操作日志、账户异常操作信息等。(4)用户自助操作模块信息查询、解除绑定的序列号、冻结、解冻、注销等。(5)客户端更新模块下载最新的软件客户端。所述身份认证系统还包括管理服务器端,所述管理服务器端包括(I)第三方应用管理模块管理集成动态密码的第三方应用。(2)密钥分发模块生成客户端、认证系统、第三方应用之间通信的公私钥,并保存在相应的认证信息库。(3)角色权限模块不同的登录角色有着不同的操作权限。(4)认证服务器监控模块实时监控认证服务器集群的运行状态,若异常,则产生报警。(5)客户端版本发布管理模块客户端版本发布管理。(6)日志管理模块对认证日志、操作日志和异常信息进行管理。(7)行为分析模块对用户各种行为进行分析并记录相应的分析结果。一旦发现异常信息,采取相应安全措施。
(8)报表展现模块以图形化模式展现行为分析结果。所述认证信息库用来存储密钥、相关操作和行为日志等信息。所有的敏感数据加密后存储在数据库中,并且有完善的数据安全保护功能,以及具有完备的数据库管理、备份功能。丰富的集成接口 为第三方应用提供丰富的接口,以便于第三方应用与认证体系的集成。可通过多种方式访问接口 TCP/IP、webservice和http,并封装有对应的认证代理包。

尽管通过参照发明的某些优选实施例,已经对本发明进行了描述,但本领域的普通技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离所附权利要求书所限定的本发明的精神和范围。
权利要求
1.一种基于移动终端的身份认证方法,其特征在于,包括步骤(1)获取登录自助服务端的初始密码,(2)用户登录自助服务端获取移动客户端初始化的序列号,(3)移动客户端初始化,(4)身份认证用户向第三方应用服务器提出登陆申请的同时,移动终端向认证服务器提出认证请求,第三方应用服务器获得认证服务器对移动终端认证结果后,向用户返回认证结果,所述移动終端向认证服务器提出的认证请求包括动态密码认证和位置信息认证。
2.按照权利要求I所述基于移动终端的身份认证方法,其特征在于,所述步骤(I)用户通过第三方应用服务器向认证服务器或通过管理员向管理服务器请求登录自助服务器的初始密码,所生成初始密码及用户名保存于认证信息库,井向用户返回登录自助服务器的初始密码。
3.按照权利要求I所述基于移动终端的身份认证方法,其特征在于,所述步骤(2)用户通过自助服务器端向认证服务器请求初始化客户端的序列号,认证服务器生成所述序列号及其密钥,并加密保存于认证信息库中,同时通过自助服务器向用户返回所述序列号,所述序列号及用户名缓存于自助服务器。
4.按照权利要求I所述基于移动终端的身份认证方法,其特征在于,所述步骤(3)用户向移动终端手动输入或扫描ニ维码获取请求初始化的序列号,然后移动终端向自助服务器提出初始化请求,自助服务器根据序列号检索有效缓存,井向认证服务器获取密钥信息,所述认证服务器通过自助服务器向移动终端返回密钥信息,移动终端验证并保存所述密钥信息,井向自助服务器提出绑定请求,自助服务器绑定序列号与移动终端的标示信息,然后绑定序列号与用户名,完成移动终端初始化。
5.按照权利要求4所述基于移动终端的身份认证方法,其特征在干,移动终端采用ー键设置完成绑定与初始化。
6.按照权利要求I所述基于移动终端的身份认证方法,其特征在于,所述客户端的动态因子与认证服务器的动态因子采用ー键同步単元实现同歩。
7.按照权利要求I所述基于移动终端的身份认证方法,其特征在于,所述客户端的动态密码通过ー键校验单元输送到认证服务器进行快速校验。
8.ー种采用权利要求I所述基于移动终端的身份认证方法的认证系统,其特征在干,所述系统包括移动终端、自助服务器端和认证服务器端,所述移动終端与自助服务器端、认证服务器端分别无线通讯连接,所述自助服务器端与认证服务器端之间以互联网通讯连接,所述认证服务器端含有认证信息库和认证代理包,所述移动終端含有初始化完成后生成动态密码的动态密码生成単元、一键初始化単元、实现客户端与认证服务器端动态因子同步的ー键同步単元、一键校验単元、认证结果接收単元和获取终端位置信息并上传至服务器的位置服务单元。
9.按照权利要求8所述基于移动终端的身份认证系统,其特征在于,所述认证服务器端包括采用非対称算法解出移动终端请求数据的数据解密模块,计算出动态密码的密码校验模块,保证已经使用过的动态密码不会被再次使用的访问控制模块,位置比对模块,数据加密模块,动态因子同步模块,密钥生成模块,初始化密码生成模块和日志模块,所述自助服务器端包括序列号生成模块,自保护模块,日志模块,用户自主操作模块,以及客户端更新模块。
10.按照权利要求8所述基于移动终端的身份认证系统,其特征在于,还包括管理服务器端,所述管理服务器端包括第三方应用管理模块、密钥分发模块、角色权限模块、认证服务器监控模块、客户端版本发布管理模块、日志管理模块、行为分析模块和报表展现模块。
全文摘要
本发明提供一种基于移动终端的身份认证方法及系统,包括步骤(1)获取登录自助服务端的初始密码,(2)用户登录自助服务端获取移动客户端初始化的序列号,(3)移动客户端初始化,(4)身份认证用户向第三方应用服务器提出登陆申请的同时,移动终端向认证服务器提出认证请求,第三方应用服务器获得认证服务器对移动终端认证结果后,向用户返回认证结果,所述移动终端向认证服务器提出的认证请求包括动态密码认证和位置信息认证。本发明采用软件客户端代替硬件设备,节约了生产硬件的成本,软件客户端与认证服务器间的动态因子(时间因子或事件因子)能够很方便的实现同步,并方便与第三方应用系统集成,从而完全解决了使用硬件设备给整个认证体系带来的局限和不足。
文档编号H04L29/06GK102685093SQ201110406998
公开日2012年9月19日 申请日期2011年12月8日 优先权日2011年12月8日
发明者左飞, 李涛, 段克强, 王黎明, 陈易, 黄进 申请人:陈易
网友询问留言 已有1条留言
  • 访客 来自[江苏省南京市移动] 2018年03月09日 08:51
    妇产科
    0
1