一种一次性密码认证系统及认证方法

文档序号:7820419阅读:925来源:国知局
一种一次性密码认证系统及认证方法
【专利摘要】本发明属于网络信息安全【技术领域】,具体为一种一次性密码认证系统及认证方法。本发明系统包括:OTP认证管理平台、OTP认证系统管理API服务端、OTP认证API服务端、OTP系统用户数据库、待接入敏感系统、敏感系统用户访问终端、用户移动设备;其中,OTP认证系统管理API服务端和OTP认证API服务端部署运行在核心层,提供用户管理和认证服务功能;OTP认证管理平台和待接入敏感系统运行在业务层;OTP认证系统管理API服务端、OTP认证管理平台、以及OTP认证平台管理员的工作电脑由防火墙策略控制在一个安全网络内。本发明可在敏感系统中实现一次性密码认证,并且具有高的易用性、通用性和安全性。
【专利说明】—种一次性密码认证系统及认证方法

【技术领域】
[0001]本发明属于网络信息安全【技术领域】,具体涉及一种一次性密码认证系统及认证方法。

【背景技术】
[0002]在日益信息化的社会中,信息技术的应用已经渗透到生产与生活的方方面面。人们会使用电子设备终端通过网络访问各种各样的信息系统,这些信息系统有可能关系到企业的生产经营或者个人的交易钱款,为了保障这些信息系统的安全,常用的手段是为系统的每个用户设置私有的用户名和密码。但是系统用户的用户名和密码通常在相当长的一段时间内是不会变的,考虑到用户名和密码会在网络上传输,存在被第三方截获的可能,并且在系统的服务端和用户电子设备访问终端都存在被第三方植入收集用户密码的木马程序的可能,所以常见的用户名和密码保障系统用户安全的技术手段还存在着相当大的风险。
[0003]为了减小风险,就需要引入一种更安全的密码验证手段。这种密码验证手段能避免常见的用户名和密码方式中密码在相当长的一段时间内不会变的缺陷。一次性密码(OneTime Password,以下简称为OTP)就是这种更安全的密码验证手段。一次性密码的密码有效期相当短,并且密码只是一次性的,到期后会重新生成新的密码,这样就保证了就算一次性密码在网络上传输被第三方截获了,或者被木马程序收集了,留给系统入侵方的反应时间窗口也是非常的短的,采用一次性密码这种技术能有效的提高敏感系统的安全性。
[0004]但如何在敏感系统中整合实现一次性密码,怎么进一步提高一次性密码认证方法及认证系统的易用性、通用性和安全性,是一个亟待解决的问题。


【发明内容】

[0005]本发明的目的在于提供一种一次性密码认证系统及认证方法,以便在敏感系统中整合实现一次性密码,并且具有高的易用性、通用性和安全性。
[0006]本发明提供的一次性密码认证系统,其总体结构如图3所示,系统包括:0ΤΡ认证管理平台、OTP认证系统管理API服务端、OTP认证API服务端、OTP系统用户数据库、待接入敏感系统、敏感系统用户访问终端、用户移动设备;其中,OTP认证系统管理API服务端和OTP认证API服务端部署运行在核心层,提供用户管理和认证服务功能,所有对OTP系统用户数据库持久化的访问只能在核心层访问;敏感系统是指其访问数据和内容需要被保护的系统,防止未经授权的访问;0ΤΡ认证管理平台和待接入敏感系统运行在业务层,待接入敏感系统只能访问OTP认证API服务端,OTP认证系统管理API服务端只能让OTP认证管理平台访问,OTP认证系统管理API服务端、OTP认证管理平台、以及OTP认证平台管理员的工作电脑都由防火墙策略控制在一个安全网络内;敏感系统用户访问终端访问敏感系统,除了需要PC机外,还有一个用户端的移动设备(通常是手机,运行着Android或1S或WindowsPhone系统)作为OTP动态口令的生成工具。
[0007]其中,OTP认证系统管理API服务端只提供远程服务接口(包括HTTP服务接口或Dubbo服务接口)给OTP认证管理平台,用于实现敏感系统注册和敏感系统用户注册以及敏感系统、敏感系统用户、操作日志的增删改查功能;0TP认证API服务端可提供HTTP服务或Dubbo服务给各种待接入的敏感系统以及OTP认证管理平台,用于实现对敏感系统用户授权的创建和验证功能;0TP认证管理平台是基于B/S结构实现的信息管理系统,只能由OTP认证平台管理员访问。这里,HTTP服务接口是指基于HTTP的远程服务调用接口,而HTTP为超文本传送协议;Dubbo服务接口是指基于Dubbo的远程服务调用接口,而Dubbo是指分布式服务框架,服务接口以高性能的远程服务调用协议(RPC)。
[0008]本发明的一次性密码认证系统的组件结构如图4所示。其中,设置有公用基础模块,该公用基础模块包括OTP基础认证模块和数据访问模块,公用基础模块以Java类库发行包(例如:jar包)的形式包含在OTP认证系统管理API服务端和OTP认证API服务端的部署包中,公用基础模块jar包会随着OTP认证系统管理API服务端和OTP认证API服务端的启动运行而被加载到OTP认证系统管理API服务端和OTP认证API服务端的Java程序执行环境中。
[0009]OTP认证系统管理API服务端包括远程调用的接收模块(例如=Dubbo接入模块)和OTP认证系统管理服务模块;0ΤΡ认证API服务端包括Dubbo接入模块和HTTP接入模块和OTP认证服务模块;0ΤΡ认证管理平台包括WEB前端展示页面、WEB后端服务模块和二维码生成模块。
[0010]OTP认证管理平台、OTP认证系统管理API服务端、OTP认证API服务端都以软件发布包(如war包)的形式发布,在软件开发阶段,这三个软件发布包(如war包)对应三个Java Web项目,基于分层架构设计原则,其层次结构和调用顺序为如图4所示的从左到右的次序。
[0011 ] 公用基础模块中的OTP基础认证模块封装OTP授权密钥的生成和验证操作。公用基础模块中的数据访问模块封装数据库中的各种表(包括敏感系统注册表、敏感系统用户密钥表、操作历史表)的增删改查操作。
[0012]OTP认证系统管理API服务端中的OTP认证系统管理服务模块把读取敏感系统用户密钥、操作敏感系统及其用户、记录操作历史的功能封装成服务,它基于调用公用基础模块中的OTP基础认证模块和数据访问模块实现这些功能。OTP认证系统管理API服务端中的敏感系统接入模块(包括Dubbo接入模块和http接入模块)用于接收OTP认证系统管理服务的接入请求(如Dubbo请求)并解析其参数,然后调用OTP认证系统管理服务模块的服务处理请求并返回结果。
[0013]OTP认证API服务端中的OTP认证服务模块把重置生成密钥、验证密钥的功能封装成服务,它基于调用公用基础模块中的OTP基础认证模块和数据访问模块实现这些功能。OTP认证API服务端中的敏感系统接入模块(如Dubbo接入模块)用于接收OTP认证服务的接入请求(如Dubbo请求)并解析其参数,然后调用OTP认证服务模块的服务处理请求并返回结果。
[0014]OTP认证管理平台中的二维码生成模块提供二维码图像生成服务,OTP认证管理平台中的WEB后端服务模块会以远程调用(通过Dubbo)的方式调用OTP认证系统管理API服务端中的Dubbo接入模块来实现读取敏感系统用户密钥、操作敏感系统及其用户、记录操作历史的功能,并把读到的密钥传给二维码生成模块,由二维码生成模块生成相应敏感系统的用户的OTP 口令密钥二维码图像。OTP认证管理平台中的WEB前端展示页面即为在OTP认证管理平台管理员电脑浏览器中显示的页面,它通过超文本传输协议与OTP认证管理平台中的WEB后端服务模块交互。
[0015]待接入敏感系统可以通过各种远程调用方式接入到OTP认证API服务端,比如通过Dubbo方式和OTP认证API服务端中的Dubbo接入模块交互、通过HTTP方式和OTP认证API服务端中的HTTP接入模块交互。
[0016]由于OTP认证系统管理API服务端只为OTP认证管理平台服务,而OTP认证管理平台只能由OTP认证管理平台管理员使用,所以会和外部交互的只有OTP认证管理平台管理员和OTP认证API服务端,OTP认证管理平台管理员负责为新接入的敏感系统注册接入信息,为敏感系统的用户维护用户资料(比如更新手机号,重置OTP 口令)。OTP认证API月艮务端提供远程调用服务,接受敏感系统以DubbO方式接入或者HTTP方式接入,同时也要接受OTP认证管理平台的Dubbo方式接入为OTP认证管理平台提供对某些敏感系统用户的授权信息的创建和验证操作。
[0017]OTP认证API服务端对外提供的远程调用服务,一个是为敏感系统创建用户授权的服务,另一个是为敏感系统验证用户授权的服务。其流程图分别如图5和如图6所示。
[0018]为敏感系统创建用户授权的流程如图5所示,OTP认证API服务端在接收到创建用户授权的HTTP请求或Dubbo请求后,先解析HTTP请求或Dubbo请求中的敏感系统、用户名、手机号码参数,然后检查要授权的敏感系统是否已经由OTP认证管理平台管理员配置好加入到OTP认证系统,如果没有,就会为此请求返回敏感系统未预先加入到OTP认证系统的错误信息,如果已经配置好,那么还会检查是否已经存在该敏感系统的用户的OTP授权,如果是,则返回该敏感系统的用户的OTP授权已存在信息,没有的话,创建该敏感系统的用户的OTP授权并持久化到数据库,然后返回创建成功信息。
[0019]为敏感系统验证用户授权的流程如图6所示,OTP认证API服务端在接收到验证用户授权的HTTP请求或Dubbo请求后,先解析HTTP请求或Dubbo请求中的敏感系统、用户名、OTP 口令参数,然后检查该敏感系统的该用户授权信息是否存在OTP认证系统数据库中,如果不存在,则返回该敏感系统的该用户授权信息不存在的错误信息,如果存在,就验证请求参数中的OTP 口令是否和OTP认证系统数据库中的授权口令一致,如果不一致,则返回此次用户授权验证未通过的信息,如果一致,则返回此次用户授权验证成功通过的信息。
[0020]基于上述一次性密码认证系统,一次性密码认证方法的具体步骤为:
步骤一:为待接入敏感系统注册到OTP认证平台,其中敏感系统是指其访问数据和内容需要被保护的系统,防止未经授权的访问。
[0021]步骤二:敏感系统通过远程OTP认证服务接口接入到OTP认证系统。
[0022]步骤三:用户安装扫码软件。
[0023]步骤四:用户去OTP系统管理平台扫码。
[0024]步骤五:扫码操作能触发提示短信。
[0025]步骤六:手机扫码生成OTP动态口令。
[0026]步骤七:0ΤΡ 口令每隔一段时间变化一次。
[0027]步骤八:用户读出OTP 口令。
[0028]步骤九:敏感系统调用远程OTP认证服务接口验证口令是否有效。
[0029]步骤十:0ΤΡ认证完成。
[0030]本发明的一次性密码认证系统详细工作流程如图2所示,整个认证系统中主要的参与方为OTP系统管理平台(管理员)、敏感系统用户、敏感系统用户手机(移动设备)、敏感系统。
[0031]在敏感系统将要首次部署上线前,需要先去OTP系统管理平台注册此敏感系统的接入,敏感系统上线后,如果敏感系统需要把本系统的用户注册到OTP认证系统,那么敏感系统可以通过API的方式把本系统用户注册到OTP认证系统,这样就可以省去到时用户去找OTP系统管理平台的管理员扫码时,管理员再手动为该敏感系统的该用户注册的环节。
[0032]敏感系统的用户开始访问敏感系统的时候,敏感系统先在用户认证界面上提示需要OTP 口令,如果用户手机上已经为该敏感系统扫码生成过OTP 口令,那么该敏感系统的该用户的OTP 口令可以直接从手机上读出,该OTP 口令会每隔30秒变化一次,但只要没有在OTP系统管理平台重置过该敏感系统的该用户的OTP 口令密钥,那么手机上的这个动态OTP口令就一直是有效的。如果手机上没有该敏感系统的该用户的OTP 口令,那么就需要在手机上生成OTP 口令。
[0033]首先就是要检查手机上是否有OTP动态口令客户端,如果没有,就需要去手机应用市场下载安装OTP动态口令客户端,如果安装好了,那么就可以联系OTP系统管理平台扫该敏感系统的该用户的OTP 口令密钥的二维码。OTP系统管理平台的管理员首先会检查该用户是否已经注册过该敏感系统,如果没有,就为该敏感系统的该用户进行注册。确认OTP认证系统注册好该敏感系统的该用户的授权信息后,管理员就为该敏感系统的该用户重置生成OTP 口令二维码,然后OTP系统管理平台会检查该敏感系统安全级别是否应给用户发短信提醒,如果不是,接下来用户直接拿手机扫码生成OTP动态口令,如果是,则为该敏感系统该用户发出OTP 口令密钥已被重置的短信,用户手机收到OTP 口令被重置短信后,用户可以检查本次重置生成OTP 口令二维码是否是本人发起的操作,因为有可能被误操作,也有可能被不良企图的人通过技术手段之外的途径在OTP系统管理平台的管理员的工作电脑上重置生成OTP 口令二维码并扫码,如果出现这样的情况,敏感系统用户可以及时的知道OTP 口令已经被重置;如果确认不是本人发起的操作,则敏感系统用户可以去找OTP系统管理平台的管理员再重置生成OTP 口令二维码,如果是本人发起的操作,则用手机扫码生成OTP动态口令,OTP 口令每30秒变化一次,敏感系统用户读出OTP 口令后,则可以用此口令访问敏感系统,敏感系统通过调用OTP认证API验证口令是否有效,如果无效则提示需要OTP 口令,如果有效则OTP认证授权通过。
[0034]本发明的有益效果:
本发明将接受多个敏感系统的接入,为这些敏感系统提供一次性密码认证服务,使得这些敏感系统实现一次性密码认证功能,来保证这些敏感系统的用户安全。
[0035]本发明能充分的利用待接入敏感系统原有的服务资源,在不大幅度修改待接入敏感系统的情况下,待接入敏感系统通过调用应用程序编程接口(Applicat1n ProgrammingInterface,以下简称为API),可以轻易的把一次性密码认证功能加入到敏感系统中。待接入敏感系统的用户也能轻易的使用一次性密码认证功能,因为一次性密码的密码口令可以在各种移动设备平台(包括Android、1S和Windows Phone)上生成,无须专门的一次性密码认证硬件。本发明的一次性密码认证方法及认证系统,还具有对接入的敏感系统和敏感系统用户进行统一管理的一次性密码认证管理平台,管理员可以方便的在一次性密码认证管理平台对接入的敏感系统和敏感系统用户进行增加、删除、修改、查询的操作。从待接入敏感系统方和系统用户方以及一次性密码认证管理平台管理方来看,本发明的一次性密码认证方法及认证系统都具有良好的易用性。
[0036]本发明能让不同安全级别的各种待接入敏感系统通过常见的API服务形式接入一次性密码认证系统。具体来说,本发明的一次性密码认证系统是作为OTP认证服务的认证中心,待接入敏感系统只需要应用HTTP协议或者Dubbo协议与本发明的一次性密码认证方法及认证系统进行通讯,就能实现待接入敏感系统的跨编程语言、跨运行平台的OTP认证服务接入。对于不同安全级别的各种待接入敏感系统,只需要在API调用接口中指定相应安全参数,本发明的一次性密码认证系统就可以实现自动安全分级。因而本发明的一次性密码认证方法及认证系统具有多个系统接入、异构系统接入、自适应安全别级接入的通用性。
[0037]本发明用于保障待接入敏感系统的用户是安全的,但是一次性密码认证管理平台本身的安全也是非常重要的,本发明的一次性密码认证系统,通过采用网络防火墙的手段,在计算机网络OSI七层模型的传输层限制仅仅只有一次性密码认证管理平台管理员的计算机才能访问一次性密码认证管理平台。为了保障一次性密码认证管理平台的数据安全,本发明的一次性密码认证系统还能记录下系统管理员的操作历史记录。对于不同安全级别的各种待接入敏感系统,本发明的一次性密码认证系统能依据待接入敏感系统的安全级别高低,来决定在重新生成该敏感系统的用户的OTP密码密钥及其对应的二维码图片的时候是否向该敏感系统的用户发送手机短信提醒。因而本发明的一次性密码认证系统具有风险可控的网络层面安全性,并且还具有操作数据可追踪、密钥变更可预警的优点。

【专利附图】

【附图说明】
[0038]图1为本发明一次性密码认证方法流程图。
[0039]图2为本发明一次性密码认证系统工作流程图示。
[0040]图3为本发明一次性密码认证系统总体结构图示。
[0041]图4为本发明一次性密码认证系统组件构成图示。
[0042]图5为本发明中敏感系统创建用户授权的流程图。
[0043]图6为本发明中敏感系统验证用户授权的流程图。

【具体实施方式】
[0044]实施例1
公司现有决策分析系统是基于公司历来的营销数据、市场数据、业务数据和用户行为等数据为公司管理层提供决策分析支持。因为这个决策分析系统中包含公司各种商业机密,所以对它的数据访问和操作都需要严格的授权,这个决策分析系统就是一个典型的敏感系统。
[0045]公司CTO决定给决策分析系统在用户登录的时候增加OTP认证的环节,以提高决策分析系统的安全性。要实施这项决定,首先,OTP系统管理平台的管理员把决策分析系统注册(注册信息:系统代号是decis1n,系统全名是决策分析系统,系统安全级别是高,表示给决策分析系统的用户重置OTP密钥二维码的时候需要给用户发短信提醒)到OTP系统中去。决策分析系统是已有的系统,加OTP认证的环节是新时期的新需求,所以要对老的决策分析系统进行改造。决策分析系统中已有的用户,要导入到OTP认证系统中去,在改造决策分析系统的时候,就需要增加把决策分析系统的用户批量导入到OTP认证系统中去的功能,实现这个功能,就是通过调用“为敏感系统创建用户授权”的远程服务接口(决策分析系统没有使用DubbO服务框架,它与外部的信息交换通过基于HTTP协议通信的方式实现,所以它调用OTP认证API服务端的HTTP服务接口进行通信,OTP认证API服务端的HTTP服务接口的URL地址是http://10.48.170.200/otp-service,创建用户授权的HTTP请求形如:http://10.48.170.200/otp-service/api/creator?userName=xl&issuer=x2&name=x3&mobile=X4,其中xl指英文缩写用户名,x2指敏感系统代号,这个例子中就是决策分析系统的代号decis1n,x3指用户姓名中文全名,x4指用户手机号码。创建用户授权执行成功后,会返回形如:{ "message": 〃ok〃 }这样的结果。)来实现批量导入决策分析系统用户到OTP认证系统中去的。
[0046]决策分析系统改造好了,部署上线运行,用户(就是公司的高管,因为这个决策分析系统是给公司高管用的)访问决策分析系统,在登录的时候要求填写OTP 口令。由于这是决策分析系统改造后首次亮相,用户是第一次碰到OTP 口令这问题,用户会被告知需要拿手机去找OTP系统管理员扫OTP密钥二维码生成OTP 口令,用户找到OTP系统管理员后,OTP系统管理员帮用户安装好手机OTP扫码软件(如果用户手机上没装的话),在OTP系统中把用户注册(注册信息:用户真实姓名、用户手机号)到决策分析系统名下(如果决策分析系统漏了把这个用户导入到OTP系统的话),然后为决策分析系统的这位用户重置生成OTP密钥二维码,重置生成二维码的同时,一条OTP密钥二维码已被重置的提醒短信会发到用户的手机上,再拿用户的手机扫这个二维码,手机扫了这个二维码后,生成OTP 口令(6位数字的口令),0ΤΡ 口令每隔30秒变一次(用户在以后需要OTP 口令的时候,就不用再来找OTP系统管理员了,只要把手机上当时的口令读出来就行了)。用户读出OTP 口令后输入到决策分析系统的登录页面,决策分析系统通过调用“为敏感系统验证用户授权”的远程服务接口(决策分析系统没有使用Dubb0服务框架,它与外部的信息交换通过基于HTTP协议通信的方式实现,所以它调用OTP认证API服务端的HTTP服务接口进行通信,OTP认证API服务端的HTTP服务接口的URL地址是http://10.48.170.200/otp-service,验证用户授权的HTTP 请求形如:http://10.48.170.200/otp-service/api/verifier?userName=xl&issuer=x2&authCode=x3,其中xl指英文缩写用户名,x2指敏感系统代号,这个例子中就是决策分析系统的代号decis1n, x3指6位数字的OTP 口令。验证用户授权通过后,会返回形如:{"passed": true, "message": 〃ok〃 }这样的结果。)来验证该用户的OTP认证授权是否通过。
[0047]实施例2
公司决定为现有的业务开发一个运营支撑系统,提供备付金管理、对账处理、提现处理和客户服务等功能,由于这个运营支撑系统涉及到支付账款等,所以对它的数据访问和操作都需要严格的授权,这个运营支撑系统也是一个典型的敏感系统。
[0048]运营支撑系统在产品定义和需求分析阶段就明确提出了运营支撑系统在用户登录的时候需要采用OTP认证的技术手段来提高运营支撑系统的安全性。要实现运营支撑系统OTP认证的这项需求,首先,OTP系统管理平台的管理员把运营支撑系统注册(注册信息:系统代号是support,系统全名是运营支撑系统,系统安全级别是高,表示给运营支撑系统的用户重置OTP密钥二维码的时候需要给用户发短信提醒)到OTP系统中去。
[0049]因为运营支撑系统涉及到公司的各种业务子系统,出于软件设计的业务解耦原贝U,运营支撑系统采用的是面向服务的系统架构(S0A),技术选型采用的是Dubbo作为服务框架,并基于其提供的高性能的远程服务调用协议(RPC)进行通信。所以运营支撑系统以Dubbo服务接口的方式接入到OTP认证系统,OTP认证API服务端的Dubbo服务接口的参数和OTP认证API服务端的HTTP服务接口的参数是一样的,只是通信协议不同,HTTP服务接口的通信协议是HTTP,Dubbo服务接口的通信协议是Dubbo内置的高性能的远程服务调用协议(RPC)。
[0050]除了接入方式不同,运营支撑系统与OTP认证系统以及用户的整个交互过程与例一的决策分析系统的整个交互过程是一样的。技术细节方面,除了接入方式一个是基于Dubbo服务接口、一个是基于HTTP服务接口,其它的都一样。
【权利要求】
1.一种一次性密码认证系统,其特征在于系统包括:OTP认证管理平台、OTP认证系统管理API服务端、OTP认证API服务端、OTP系统用户数据库、待接入敏感系统、敏感系统用户访问终端、用户移动设备;其中,OTP认证系统管理API服务端和OTP认证API服务端部署运行在核心层,提供用户管理和认证服务功能,所有对OTP系统用户数据库持久化的访问只能在核心层访问;敏感系统是指其访问数据和内容需要被保护的系统,防止未经授权的访问;0ΤΡ认证管理平台和待接入敏感系统运行在业务层,待接入敏感系统只能访问OTP认证API服务端,OTP认证系统管理API服务端只能让OTP认证管理平台访问,OTP认证系统管理API服务端、OTP认证管理平台、以及OTP认证平台管理员的工作电脑都由防火墙策略控制在一个安全网络内;敏感系统用户访问终端访问敏感系统,除了有PC机外,还有一个用户端的移动设备作为OTP动态口令的生成工具; 其中,OTP认证系统管理API服务端提供远程服务接口给OTP认证管理平台,用于实现敏感系统注册和敏感系统用户注册以及敏感系统、敏感系统用户、操作日志的增删改查功能;0ΤΡ认证API服务端提供远程服务接口给各种待接入的敏感系统以及OTP认证管理平台,用于实现对敏感系统用户授权的创建和验证功能;0ΤΡ认证管理平台是基于B/S结构实现的信息管理系统,仅由OTP认证平台管理员访问;所述远程服务接口包括HTTP服务接口或Dubbo服务接口 ; 其中,OTP是指一次性密码,API是指应用程序编程接口,HTTP服务接口是指基于HTTP的远程服务调用接口,Dubbo服务接口是指基于Dubbo的远程服务调用接口。
2.根据权利要求1所述的一次性密码认证系统,其特征在于还包括公用基础模块,该公用基础模块包括OTP基础认证模块和数据访问模块,公用基础模块以Java类库jar包的形式包含在OTP认证系统管理API服务端和OTP认证API服务端的部署包中,公用基础模块jar包随着OTP认证系统管理API服务端和OTP认证API服务端的启动运行而被加载到OTP认证系统管理API服务端和OTP认证API服务端的Java程序执行环境中; OTP认证系统管理API服务端包括远程调用的Dubbo接入模块和OTP认证系统管理服务模块;0ΤΡ认证API服务端包括Dubbo接入模块、HTTP接入模块和OTP认证服务模块;0ΤΡ认证管理平台包括WEB前端展示页面、WEB后端服务模块和二维码生成模块; OTP认证管理平台、OTP认证系统管理API服务端、OTP认证API服务端都以软件发布包的形式发布,在软件开发阶段,这三个以软件发布包对应三个Java Web项目,基于分层架构设计原则,其层次结构和调用顺序为从左到右的次序; 公用基础模块中的OTP基础认证模块封装OTP授权密钥的生成和验证操作;公用基础模块中的数据访问模块封装数据库中的各种表包括敏感系统注册表、敏感系统用户密钥表、操作历史表的增删改查操作; OTP认证系统管理API服务端中的OTP认证系统管理服务模块把读取敏感系统用户密钥、操作敏感系统及其用户、记录操作历史的功能封装成服务,它基于调用公用基础模块中的OTP基础认证模块和数据访问模块实现这些功能;0ΤΡ认证系统管理API服务端中的敏感系统接入模块用于接收OTP认证系统管理服务模块的接入请求并解析其参数,然后调用OTP认证系统管理服务模块的服务处理请求并返回结果;所述敏感系统接入模块包括Dubbo接入模块或http接入模块; OTP认证API服务端中的OTP认证服务模块把重置生成密钥、验证密钥的功能封装成服务,它基于调用公用基础模块中的OTP基础认证模块和数据访问模块实现这些功能;0ΤΡ认证API服务端中的敏感系统接入模块用于接收OTP认证服务模块的接入请求并解析其参数,然后调用OTP认证服务模块的服务处理请求并返回结果; OTP认证管理平台中的二维码生成模块提供二维码图像生成服务,OTP认证管理平台中的WEB后端服务模块以远程调用的方式调用OTP认证系统管理API服务端中的Dubbo接入模块来实现读取敏感系统用户密钥、操作敏感系统及其用户、记录操作历史的功能,并把读到的密钥传给二维码生成模块,由二维码生成模块生成相应敏感系统的用户的OTP 口令密钥二维码图像;0ΤΡ认证管理平台中的WEB前端展示页面即为在OTP认证管理平台管理员电脑浏览器中显示的页面,它通过超文本传输协议与OTP认证管理平台中的WEB后端服务模块交互; 待接入敏感系统通过各种远程调用方式接入到OTP认证API服务端,即通过Dubbo方式和OTP认证API服务端中的Dubbo接入模块交互、通过HTTP方式和OTP认证API服务端中的HTTP接入模块交互; 由于OTP认证系统管理API服务端只为OTP认证管理平台服务,而OTP认证管理平台只能由OTP认证管理平台管理员使用,所以和外部交互的只有OTP认证管理平台管理员和OTP认证API服务端,OTP认证管理平台管理员负责为新接入的敏感系统注册接入信息,为敏感系统的用户维护用户资料;0ΤΡ认证API服务端提供远程调用服务,接受敏感系统以Dubbo方式接入或者HTTP方式接入,同时也接受OTP认证管理平台的Dubbo方式接入为OTP认证管理平台提供对某些敏感系统用户的授权信息的创建和验证操作。
3.根据权利要求2所述的一次性密码认证系统,其特征在于所述OTP认证API服务端对外提供的远程调用服务:一个是为敏感系统创建用户授权的服务,另一个是为敏感系统验证用户授权的服务,其中: 为敏感系统创建用户授权的流程如下:0ΤΡ认证API服务端在接收到创建用户授权的HTTP请求或Dubbo请求后,先解析HTTP请求或Dubbo请求中的敏感系统、用户名、手机号码参数,然后检查要授权的敏感系统是否已经由OTP认证管理平台管理员配置好加入到OTP认证系统;如果没有配置好,则为此请求返回敏感系统未预先加入到OTP认证系统的错误信息;如果已经配置好,那么还检查是否已经存在该敏感系统的用户的OTP授权,如果是,则返回该敏感系统的用户的OTP授权已存在信息,如果不是,则创建该敏感系统的用户的OTP授权并持久化到数据库,然后返回创建成功信息; 为敏感系统验证用户授权的流程如下=OTP认证API服务端在接收到验证用户授权的HTTP请求或Dubbo请求后,先解析HTTP请求或Dubbo请求中的敏感系统、用户名、OTP 口令参数,然后检查该敏感系统的该用户授权信息是否存在OTP认证系统数据库中;如果不存在,则返回该敏感系统的该用户授权信息不存在的错误信息;如果存在,就验证请求参数中的OTP 口令是否和OTP认证系统数据库中的授权口令一致,如果不一致,则返回此次用户授权验证未通过的信息,如果一致,则返回此次用户授权验证成功通过的信息。
4.基于权利要求1-3之一所述的一次性密码认证系统的一次性密码认证方法,其特征在于具体步骤为: 步骤一:为待接入敏感系统注册到OTP认证平台; 步骤二:敏感系统通过远程OTP认证服务接口接入到OTP认证系统; 步骤三:用户安装扫码软件; 步骤四:用户去OTP系统管理平台扫码; 步骤五:扫码操作能触发提示短信; 步骤六:手机扫码生成OTP动态口令; 步骤七:0ΤΡ 口令每隔一段时间变化一次; 步骤八:用户读出OTP 口令; 步骤九:敏感系统调用远程OTP认证服务接口验证口令是否有效; 步骤十:0ΤΡ认证完成。
5.根据权利要求4所述的一次性密码认证方法,其特征在于: 在敏感系统首次部署上线前,先去OTP系统管理平台注册此敏感系统的接入,敏感系统上线后,如果敏感系统需要把本系统的用户注册到OTP认证系统,那么敏感系统通过API的方式把本系统用户注册到OTP认证系统; 敏感系统的用户开始访问敏感系统的时候,敏感系统先在用户认证界面上提示需要OTP 口令,如果用户手机上已经为该敏感系统扫码生成过OTP 口令,那么该敏感系统的该用户的OTP 口令可以直接从手机上读出,该OTP 口令每隔30秒变化一次,但只要没有在OTP系统管理平台重置过该敏感系统的该用户的OTP 口令密钥,那么手机上的这个动态OTP 口令就一直有效;如果手机上没有该敏感系统的该用户的OTP 口令,那么就需要在手机上生成OTP 口令; 首先要检查手机上是否有OTP动态口令客户端,如果没有,就去手机应用市场下载安装OTP动态口令客户端,如果安装好了,那么就联系OTP系统管理平台扫该敏感系统的该用户的OTP 口令密钥的二维码;0ΤΡ系统管理平台的管理员首先检查该用户是否已经注册过该敏感系统,如果没有,就为该敏感系统的该用户进行注册;确认OTP认证系统注册好该敏感系统的该用户的授权信息后,管理员为该敏感系统的该用户重置生成OTP 口令二维码,然后OTP系统管理平台检查该敏感系统安全级别是否应给用户发短信提醒,如果不是,接下来用户直接拿手机扫码生成OTP动态口令,如果是,则为该敏感系统该用户发出OTP 口令密钥已被重置的短信; 用户手机收到OTP 口令被重置短信后,用户检查本次重置生成OTP 口令二维码是否是本人发起的操作;如果确认不是本人发起的操作,则敏感系统用户去找OTP系统管理平台的管理员再重置生成OTP 口令二维码;如果是本人发起的操作,则用手机扫码生成OTP动态口令,OTP 口令每30秒变化一次,敏感系统用户读出OTP 口令后,则用此口令访问敏感系统,敏感系统通过调用OTP认证API验证口令是否有效,如果无效则提示需要OTP 口令,如果有效则OTP认证授权通过。
【文档编号】H04L9/32GK104468119SQ201410673453
【公开日】2015年3月25日 申请日期:2014年11月21日 优先权日:2014年11月21日
【发明者】肖煌华 申请人:上海瀚之友信息技术服务有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1