认证方法、装置、系统、计算机设备和存储介质
技术领域
本申请涉及移动通信技术领域,特别是涉及一种认证方法、装置、系统、计算机设备和存储介质。
背景技术
随着移动通信技术的不断发展,用户登录应用时采用的免密认证技术也得到了逐步改善。
传统的免密认证技术,主要在用户使用业务流量时,通过在其业务流量所经过的移动核心网网元中加插用户信息的方式,来实现用户信息的插入,完成账号的免密认证。
然而,当用户通过无线局域网登录应用时,其业务流量不再经过移动核心网网元,免密认证无法继续,应用无法正常登录。
因此,传统的认证方法存在着在无线局域网无法正常进行免密登录的问题。
发明内容
基于此,有必要针对上述认证方法存在着网络接入受限的技术问题,提供一种能够合理解决上述技术问题的认证方法、装置、系统、计算机设备和存储介质。
一种认证方法,应用于用户终端,所述方法包括:
在所述用户终端的SIM卡中读取用户标识码;
根据所述用户标识码,生成随机挑战数;
根据所述随机挑战数,得到反馈响应串;
发送所述用户标识码、所述随机挑战数和所述反馈响应串至认证服务器,供所述认证服务器进行应用访问的免密认证。
在其中一个实施例中,在所述发送所述用户标识码、所述随机挑战数和所述反馈响应串至认证服务器之后,还包括:
接收应用服务器的连接请求;所述连接请求用于指示所述用户终端与所述应用服务器建立连接;
执行应用访问操作。
在其中一个实施例中,所述用户终端存储有随机函数,所述根据所述用户标识码,生成随机挑战数,包括:
调用所述随机函数;
通过所述随机函数,计算所述用户标识码的随机值,作为所述随机挑战数。
在其中一个实施例中,所述SIM卡存储有用户鉴权参数,所述根据所述随机挑战数,得到反馈响应串,包括:
调取所述用户鉴权参数;
根据所述用户鉴权参数和所述随机挑战数,生成所述反馈响应串。
一种认证方法,所述方法包括:
接收用户终端的用户标识码、随机挑战数和反馈响应串;
根据所述用户标识码、所述随机挑战数和所述反馈响应串,执行应用访问的免密认证操作;
当所述免密认证成功时,获取所述SIM卡的用户通讯码;
发送所述用户通讯码至应用服务器,供所述应用服务器在接收到所述用户通讯码之后,向所述用户终端发送连接请求。
一种认证装置,所述装置包括:
标识码读取模块,用于在用户终端的SIM卡中读取用户标识码;
挑战数生成模块,用于根据所述用户标识码,生成随机挑战数;
响应串生成模块,用于根据所述随机挑战数,得到反馈响应串;
信息发送模块,用于发送所述用户标识码、所述随机挑战数和所述反馈响应串至认证服务器,供所述认证服务器进行应用访问的免密认证。
一种认证装置,所述装置包括:
信息接收模块,用于接收用户终端的用户标识码、随机挑战数和反馈响应串;
认证执行模块,用于根据所述用户标识码、所述随机挑战数和所述反馈响应串,执行应用访问的免密认证操作;
号码发送模块,用于当所述免密认证成功时,获取所述SIM卡的用户通讯码,并发送所述用户通讯码至应用服务器,供所述应用服务器在接收到所述用户通讯码之后,向所述用户终端发送连接请求。
一种认证系统,所述系统包括:
用户终端、认证服务器和应用服务器;
所述用户终端,用于获取用户标识码、随机挑战数和反馈响应串,并发送所述用户标识码、所述随机挑战数和所述反馈响应串至认证服务器,供所述认证服务器进行应用访问的免密认证;
所述认证服务器,用于接收所述用户标识码、所述随机挑战数和所述反馈响应串,执行应用访问的免密认证操作,在所述免密认证成功后,获取所述SIM卡的用户通讯码,并发送所述用户通讯码至应用服务器;
所述应用服务器,用于在接收到所述用户通讯码之后,向所述用户终端发送连接请求。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
在所述用户终端的SIM卡中读取用户标识码;
根据所述用户标识码,生成随机挑战数;
根据所述随机挑战数,得到反馈响应串;
发送所述用户标识码、所述随机挑战数和所述反馈响应串至认证服务器,供所述认证服务器进行应用访问的免密认证。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
在所述用户终端的SIM卡中读取用户标识码;
根据所述用户标识码,生成随机挑战数;
根据所述随机挑战数,得到反馈响应串;
发送所述用户标识码、所述随机挑战数和所述反馈响应串至认证服务器,供所述认证服务器进行应用访问的免密认证。
上述认证方法、装置、系统、计算机设备和存储介质,用户终端将获取到的用户标识码、随机挑战数和反馈响应串发送至认证服务器,由认证服务器进行信息的认证操作,并在认证结果为成功之后,将用户通讯码发送至应用服务器,供应用服务器根据接收到的用户通讯码,与用户终端建立通信连接,从而实现用户终端进行应用访问的免密认证。因此,使用该方法无需实现用户信息的加插功能,从而无需升级移动核心网网元,节省了设计成本。同时,改善了传统认证方法中,在无线局域网无法正常进行免密登录的问题。
附图说明
图1为一个实施例中认证方法的应用场景图;
图2为一个实施例中认证方法的流程示意图;
图3为另一个实施例中认证方法的流程示意图;
图4为一个实施例中认证装置的结构框图;
图5为另一个实施例中认证装置的结构框图;
图6为一个实施例中认证系统的结构框图;
图7为一个实施例中认证方法的时序图;
图8为一个实施例中计算机设备的内部结构图;
图9为另一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本发明提供的认证方法,可以应用在如图1所示的应用环境中。如图1所述,包括有用户终端102、认证服务器104和应用服务器106,其中用户终端102具有接入互联网以及接入电话网络的功能,可以是智能手机或者平板电脑等。用户终端102包括有SIM卡,用户终端102上可运行有通信应用,SIM卡具有运算系统,可与通信应用实现数据交互。通信应用用于与认证服务器104实现数据交互,认证服务器104可用于与应用服务器106实现数据交互,还可用于对用户终端102储存的用户信息进行鉴权认证。应用服务器106用于通过网络与用户终端102的SIM卡进行通信。
在一个实施例中,如图2所示,提供了一种认证方法,以该方法应用于图1中的用户终端102为例进行说明,包括以下步骤:
步骤S210,在所述用户终端的SIM卡中读取用户标识码。
其中,SIM卡(Subscriber Identification Module,SIM)是用于储存数字信息的智能卡,可供GSM(全球移动通信系统)网络客户身份进行鉴别,并对客户通话时的语音信息进行加密。实际应用中,SIM卡可与用户终端兼容或集成,当用户终端向SIM卡发出命令时,SIM卡可根据标准规范来执行或拒绝,实现SIM卡与通信应用之间的信息交互,而非单纯的存储信息。
其中,用户标识码是指国际移动用户识别码(International Mobile SubscriberIdentification Number,IMSI),是区别移动用户的标志,其总长度不超过15位,使用0-9的数字组成,存储在SIM卡中,用于区别移动用户的有效信息,例如,10、100、1010等。
具体实现中,用户通过用户终端102登录通信应用时,用户终端102首先调用设备上的通信应用,由通信应用与SIM卡建立通信连接并实现信息交互。当通信应用向SIM卡发送查询请求,并得到SIM卡的响应后,通信应用将接收到SIM卡的用户标识码。
例如,用户通过用户终端102开启通信应用,通信应用开始运行,首先向SIM卡发起识别码查询请求,SIM卡响应该请求后,将查询到的用户识别码“10”反馈至通信应用,以便通信应用利用该用户识别码生成一个对应的随机挑战数。
步骤S220,根据所述用户标识码,生成随机挑战数。
其中,随机挑战数是由通信应用依据用户识别码作为随机种子生成的一个随机数,可以是数字,和/或字母组成的数值,例如,100、AB、10A。
具体实现中,当用户终端102的通信应用读取到SIM卡中的用户识别码之后,将用户识别码作为随机种子,根据设定的随机方法,生成一个随机数,作为随机挑战数,以便发送至SIM卡作进一步数据处理。
例如,通信应用读取到SIM卡中的用户识别码为“10”,按照设定的随机数生成原理,得到随机数为“100”的随机挑战数。
当然,本领域技术人员可以通过其他方式生成随机挑战数,例如,用户终端102的通信应用中存储有随机函数,当通信应用获取到SIM卡的用户识别码之后,将根据该随机函数生成一个随机挑战数。由此可见,生成随机挑战数的具体方式可以有多种,本申请实施例对生成随机挑战数的具体方式不作限制。
步骤S230,根据所述随机挑战数,得到反馈响应串。
其中,反馈响应串是由用户终端102的SIM卡依据随机挑战数生成的一串响应符,可以是由纯数字组成的一串字符,也可以是由纯字母组成的一串字符,还可以是数字和字母组合形成的一串字符,例如,123、ABC、123ABC。
具体实现中,当用户终端102的SIM卡获取到由通信应用发送的随机挑战数之后,将该随机挑战数作为随机函数生成反馈响应串,进而将该反馈响应串发送至通信应用,以便通信应用能够进一步获取SIM卡的数据信息,并进入下一步数据处理操作。
例如,SIM卡接收到通信应用发送的随机挑战数为“100”,将该数作为函数并通过MD5(Message Digest 5,MD5)等算法运算,生成一串字符“123ABC”,即为反馈响应串。
当然,本领域技术人员可以通过其他方式工具得到的随机挑战数,生成反馈响应串,例如,当SIM卡接收到随机挑战数后,首先对该随机挑战数进行加密运算,然后将加密后的随机挑战数作为源数据,利用SIM卡中存在的数据映射关系,通过对多个候选响应串的匹配,在SIM卡数据库中匹配出反馈响应串,最后将匹配到的反馈响应串发送至通信应用。由此可见,SIM卡根据随机挑战数得到反馈响应串的具体方式可以有多种,本申请实施例对反馈响应串的获取方式不作限制。
步骤S240,发送所述用户标识码、所述随机挑战数和所述反馈响应串至认证服务器,供所述认证服务器进行应用访问的免密认证。
其中,认证服务器104是由认证平台以及数据服务设备一(Home LocationRegister,HLR)和/或数据服务设备二(Home Subscriber Server,HSS)组成的,用于对用户终端102中SIM卡的用户参数作鉴权认证的服务设备。
其中,免密认证是指用户终端102可通过移动网络安全认证,使用户账号能够正常登录应用。
具体实现中,当用户终端102的通信应用获取到SIM卡的用户信息,如用户识别码、随机挑战数和反馈响应串之后,通信应用将用户信息发送至认证服务器104的认证平台,由认证平台将SIM卡的用户信息转发至数据服务设备。数据服务设备经过运算之后,可得到针对该SIM卡用户参数的鉴权认证结果,其运算过程包括:搜索与用户标识码匹配的存储标识码;根据存储标识码,生成挑战数当挑战数与随机挑战数匹配时,根据挑战数生成响应串;当响应串与反馈响应串匹配时,应用访问认证为成功。认证服务器104的数据服务设备得到认证成功的结果后,将获取SIM卡用户信息中包含的用户通讯码,并将该用户通讯码发送至认证平台,供认证平台转发至应用服务器106,进而实现用户终端102的免密认证。
例如,用户终端102获取到SIM卡的用户识别码“10”、随机挑战数“100”和反馈响应串“123ABC”之后,将发送至认证服务器104的认证平台,进而由认证平台转发至数据服务设备。其中,数据服务设备中存储有多个候选的用户识别码,当接收到SIM卡的用户识别码后,数据服务设备将在存储识别码中匹配出与SIM卡用户识别码相同的数字码,进而运算得到挑战数。当运算得到的挑战数与用户终端102的随机挑战数匹配时,数据服务设备进入响应串生成阶段,最终得到与反馈响应串一致的响应串后,方可认定SIM卡的用户信息认证为成功。此时的用户终端102可通过认证成功的SIM卡登陆通信应用,实现应用的正常访问。
当然,本领域技术人员可以通过其他方式处理SIM卡的用户信息,实现用户终端102的免密认证,例如,当认证服务器104的数据服务设备得到SIM卡的用户信息之后,首先匹配相同的用户识别码,然后通过固定算法匹配相同的响应串,忽略对随机挑战数的一致性判定。由此可见,要实现对用户终端102的免密认证,SIM卡用户信息处理具体方式可以有多种,本申请实施例对认证服务器处理SIM卡用户信息的方式不作限制。
需要说明的是,用户终端102通过认证服务器104的认证实现对应用访问的免密认证,通常依赖于用户终端102当前接入的网络是否支持免密认证,若用户终端102接入的是无线局域网,则采用用户信息加插方式的传统认证方法,会限制对应用访问的免密认证,导致在无线局域网下无法进行免密登录。
上述认证方法中,用户终端在SIM卡中读取到用户标识码之后,将依据读取到的用户标识码生成一个对应的随机挑战数,进而利用该对应的随机挑战数计算出一个反馈字符串,由此获取到关于SIM卡的用户标识码、随机挑战数以及反馈字符串。当用户终端获取到SIM卡的用户标识码、随机挑战数以及反馈字符串之后,将发送至认证服务器,供认证服务器对SIM卡实现应用访问的免密认证。因此,使用该方法无需实现用户信息的加插功能,从而无需升级移动核心网网元,节省了设计成本。同时,改善了传统认证方法中,在无线局域网无法正常进行免密登录的问题。
在一个实施例中,在所述步骤S240之后,所述方法还包括:
接收应用服务器的连接请求;所述连接请求用于指示所述用户终端与所述应用服务器建立连接;执行应用访问操作。
其中,应用服务器106是指通过互联网向用户提供各种应用的服务平台(Over TheTop,OTT),也可以是指移动互联网服务内容应用服务的直接提供者(Service Provider,SP),负者根据用户的要求开发和提供使用手机用户使用的服务。
具体实现中,用户终端102向认证服务器104发送SIM卡的用户信息之后,由认证服务器104对SIM卡进行信息鉴权认证,并在鉴权认证成功之后将SIM卡的用户通讯码发送至应用服务器106,由应用服务器106响应并执行下一步骤,即向用户终端102发送通信连接请求,以使用户终端102在接收该请求后能够实现正常登录应用。
例如,SIM卡的用户信息经过认证服务器104的认证得出认证成功的结果后,应用服务器106将接收到由认证平台发送的SIM卡用户通讯码,并根据该用户通讯码向对应的SIM卡发起连接请求,以使用户终端102能够接收请求,实现应用的免密登录。
当然,本领域技术人员可以通过其他方式接收应用服务器106的连接请求。例如,当应用服务器106向用户终端102发送连接请求后,用户终端102的通信应用首先接收到该连接请求的提示信息,并将该提示信息转发至SIM卡,由SIM卡传输至用户终端102,并在用户终端102的界面上显示该提示信息,提示用户接收并选择该请求的连接。又例如,当应用服务器106向用户终端102发送连接请求后,用户终端102的SIM卡直接接收到该连接请求,并响应该请求的连接,以实现用户终端102能够正常登录该应用。由此可见,接收应用服务器106的连接请求的具体方式可以有多种,本申请实施例对接收应用服务器106连接请求的具体方式不作限制。
在一个实施例中,所述用户终端存储有随机函数,所述步骤S220具体包括包括:
调用所述随机函数;通过所述随机函数,计算所述用户标识码的随机值,作为所述随机挑战数。
其中,随机函数是指产生随机数的函数,随机函数的设定方式以及函数类型可以有多种,例如,函数类型设定为RAND时,若要产生随机数为整数,则随机函数可以用“=int(rand()%10)”,来表示0-9之间的整数。
其中,随机值是专门的随机试验的结果,随机值可以是全为整数的随机值,也可以是全为字母的随机值,还可以是包含字母与数字随机值,例如,10、ab、1a。
具体实现中,用户终端102的通信应用中存储有随机函数,当通信应用获取到SIM卡的用户识别码之后,将根据该随机函数生成一个随机挑战数。
例如,用户终端102的通信应用接收到SIM卡的用户标识码为“9”,利用随机函数运算得到的一个随机数为“8”,则“8”为用户终端102的随机挑战数。
在一个实施例中,所述SIM卡存储有用户鉴权参数,所述步骤S230具体包括:
调取所述用户鉴权参数;根据所述用户鉴权参数和所述随机挑战数,生成所述反馈响应串。
其中,用户鉴权参数是指SIM卡中存储的,用于生成响应串的数字,和/或字母参数,例如,4、A、4A。
具体实现中,当用户终端102得到随机挑战数之后,首先调取存储在SIM卡中的用户鉴权参数,结合随机挑战数,生成一个反馈响应串,生成响应串的过程在SIM卡自带的运算系统中即可实现。
例如,SIM卡得到随机挑战数为“100”,读取到用户鉴权参数为“4A”,则生成的反馈响应串为“123A”。
根据本发明实施例提供的方案,用户终端向认证服务器发送用户识别码、随机挑战数以及反馈响应串等用户参数,供认证服务器对用户参数进行认证期间,用户终端采用了预先存储的随机函数以及用户鉴权参数,生成得到随机挑战数以及反馈响应串,并通过接收来自应用服务器的连接请求,实现应用访问的免密登录。因此,使用该方法无需实现用户信息的加插功能,从而无需升级移动核心网网元,节省了设计成本。同时,改善了传统认证方法中,在无线局域网无法正常进行免密登录的问题。
在一个实施例中,如图3所示,提供了另一种认证方法,以该方法应用于图1所示应用环境中的认证服务器104为例进行说明,包括以下步骤:
步骤S310,接收用户终端的用户标识码、随机挑战数和反馈响应串。
具体实现中,当用户终端102向认证服务器104发送了用户标识码、随机挑战数以及反馈响应串之后,认证服务器104的认证平台首先接收该用户信息,并将该用户信息转发至数据服务设备,以供数据服务设备进行下一步的信息处理,实现SIM卡用户信息登录应用的免密认证。
例如,用户终端102获取到SIM卡的用户信息包括有用户识别码“10”、随机挑战数“100”以及反馈响应串“123ABC”,进而将“10”、“100”和“123ABC”发送至认证服务器104的认证平台,由认证平台接收该用户信息。
步骤S320,根据所述用户标识码、所述随机挑战数和所述反馈响应串,执行应用访问的免密认证操作。
具体实现中,当认证服务器104的数据服务设备接收到用户终端102的用户信息之后,数据服务设备将执行包含以下步骤的免密认证操作:搜索与所述用户标识码匹配的存储标识码;根据所述存储标识码,生成挑战数;当所述挑战数与所述随机挑战数匹配时,根据所述挑战数生成响应串;当所述响应串与所述反馈响应串匹配时,所述应用访问认证为成功。
例如,数据服务设备接收到认证平台转发的用户识别码为“10”、随机挑战数为“100”、反馈响应串为“123ABC”,则首先利用用户识别码“10”在存储识别码在匹配出同为“10”的存储识别码,然后利用匹配到的存储识别码“10”进一步匹配出随机挑战数,得到与随机挑战数匹配的挑战数,并利用该挑战数生成了响应串“123ABC”,与接收到的反馈响应串结果一致,即判定认证成功。
步骤S330,当所述免密认证成功时,获取所述SIM卡的用户通讯码。
其中,用户通讯码是指SIM卡中存储的通讯码,例如,手机号码12345。
具体实现中,认证服务器104的数据服务设备得到认证的结果为成功后,即刻获取SIM卡的用户通讯码,可以当即生成一个用户通讯码的查询请求,并向用户终端102发送该查询请求,查询请求可由认证平台转发至用户终端102,在用户终端102获取到SIM卡的用户通讯码再反馈至数据服务设备。
例如,数据服务设备针对当前认证的用户信息,得到认证结果为成功后,首先生成一个用户通讯码的查询请求,并将查询请求转发至认证平台,由认证平台与用户终端102的通信应用实现信息交互,并由通信应用与SIM卡完成用户通讯码的查询与转发,以便数据服务设备获取到SIM卡的用户通讯码。
当然,本领域技术人员可以通过其他方式获取到用户通讯码,例如,数据服务设备在对SIM卡的用户信息完成认证操作,并得到认证结果为成功之后,可利用该用户信息通过某种算法解析出SIM卡的用户通讯码,以便将获取到的用户通讯码转发至认证平台。由此可见,获取用户通讯码的具体方式可以有多种,本申请实施例对获取用户通讯码的具体方式不作限制。
步骤S340,发送所述用户通讯码至应用服务器,供所述应用服务器在接收到所述用户通讯码之后,向所述用户终端发送连接请求。
具体实现中,当认证服务器104的认证平台接收到用户通讯码后,认证平台进而将用户通讯码转发至应用服务器106,由应用服务器106利用该用户通讯码向用户终端102发起连接请求。需要说明的是,当认证服务设备104获取到用户通讯码之后,还可获取到用户终端102的地址信息,供应用服务器结合用户通讯码及地址信息向用户终端102发起连接请求。地址信息的获取方式可以是数据服务设备获取到用户通讯码之后再次向用户终端102发起地址信息查询请求,也可以在数据服务设备向用户终端102发起查询请求时,请求用户终端102返回用户通讯码以及地址信息,本申请实施例对地址信息的获取具体方式不作限制。
例如,认证平台接收到数据服务设备转发的用户通讯码为“12345”后,将进一步转发至应用服务器106,使得应用服务器106在接收到用户通讯码“12345”之后,向用户终端102的通信应用发起连接请求,基于通信应用与SIM卡的信息交互,请求与SIM卡建立通信连接。在用户终端102响应该连接请求后,实现用户终端102进行应用访问的免密登录。
上述认证方法,认证服务器接收到用户终端的用户标识码、随机挑战数和反馈响应串之后,首先进行信息的认证,并在认证结果为成功后获取到用户终端SIM卡的用户通讯码,进而转发该用户通讯码至应用服务器,以便应用服务器根据接收到的用户通讯码向对应的用户终端102发起连接请求,请求与用户终端建立通信连接,从而完成应用访问的免密认证。
根据本发明实施例提供的方案,用户终端可在接收应用服务器的连接请求后,正常登录应用,使用此方法,不仅无需实现用户信息的加插功能,从而无需升级移动核心网网元,节省了设计成本。同时,还改善了传统认证方法中,在无线局域网无法正常进行免密登录的问题。
应该理解的是,虽然图2和图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2和图3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种认证装置,包括:标识码读取模块410、挑战数生成模块420、响应串生成模块430、信息发送模块440,其中:
标识码读取模块410,用于在所述用户终端的SIM卡中读取用户标识码;
挑战数生成模块420,用于根据所述用户标识码,生成随机挑战数;
响应串生成模块430,用于根据所述随机挑战数,得到反馈响应串;
信息发送模块440,用于发送所述用户标识码、所述随机挑战数和所述反馈响应串至认证服务器,供所述认证服务器进行应用访问的免密认证。
根据本发明实施例提供的方案,用户终端在SIM卡中读取到用户标识码之后,将依据读取到的用户标识码生成一个对应的随机挑战数,进而利用该对应的随机挑战数计算出一个反馈字符串,由此获取到关于SIM卡的用户标识码、随机挑战数以及反馈字符串。当用户终端获取到SIM卡的用户标识码、随机挑战数以及反馈字符串之后,将发送至认证服务器,供认证服务器对SIM卡实现应用访问的免密认证。因此,使用该方法无需实现用户信息的加插功能,从而无需升级移动核心网网元,节省了设计成本。同时,改善了传统认证方法中,在无线局域网无法正常进行免密登录的问题。
在一个实施例中,所述信息发送模块440包括:
信息接收子模块,接收应用服务器的连接请求;所述连接请求用于指示所述用户终端与所述应用服务器建立连接;操作执行子模块,用于执行应用访问操作。
在一个实施例中,所述用户终端存储有随机函数,所述挑战数生成模块420包括:
函数调用子模块,用于调用所述随机函数;随机值计算子模块,用于通过所述随机函数,计算所述用户标识码的随机值,作为所述随机挑战数。
在一个实施例中,所述SIM卡存储有用户鉴权参数,所述响应串生成模块430包括:
参数调取子模块,用于调取所述用户鉴权参数;反馈响应串生成子模块,用于根据所述用户鉴权参数和所述随机挑战数,生成所述反馈响应串。
根据本发明实施例提供的方案,用户终端向认证服务器发送用户识别码、随机挑战数以及反馈响应串等用户参数,供认证服务器对用户参数进行认证期间,用户终端采用了预先存储的随机函数以及用户鉴权参数,生成得到随机挑战数以及反馈响应串,并通过接收来自应用服务器的连接请求,实现应用访问的免密登录。因此,使用该方法无需实现用户信息的加插功能,从而无需升级移动核心网网元,节省了设计成本。同时,改善了传统认证方法中,在无线局域网无法正常进行免密登录的问题。
在一个实施例中,如图5所示,提供了另一种认证装置,包括:信息接收模块510、认证执行模块520、号码发送模块530,其中:
信息接收模块510,用于接收用户终端的用户标识码、随机挑战数和反馈响应串;
认证执行模块520,用于根据所述用户标识码、所述随机挑战数和所述反馈响应串,执行应用访问的免密认证操作;
号码发送模块530,用于当所述免密认证成功时,获取所述SIM卡的用户通讯码,并发送所述用户通讯码至应用服务器,供所述应用服务器在接收到所述用户通讯码之后,向所述用户终端发送连接请求。
根据本发明实施例提供的方案,认证服务器接收到用户终端的用户标识码、随机挑战数和反馈响应串之后,首先进行信息的认证,并在认证结果为成功后获取到用户终端SIM卡的用户通讯码,进而转发该用户通讯码至应用服务器,以便应用服务器根据接收到的用户通讯码向对应的用户终端102发起连接请求,请求与用户终端建立通信连接,从而完成应用访问的免密认证。
此外,用户终端可在接收应用服务器的连接请求后,正常登录应用,使用此方法,不仅无需实现用户信息的加插功能,从而无需升级移动核心网网元,节省了设计成本。同时,还改善了传统认证方法中,在无线局域网无法正常进行免密登录的问题。
关于认证装置的具体限定可以参见上文中对于认证方法的限定,在此不再赘述。上述认证装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,如图6所示,提供了一种认证系统,包括用户终端610、认证服务器620和应用服务器630,其中:
用户终端610,用于获取用户标识码、随机挑战数和反馈响应串,并发送所述用户标识码、所述随机挑战数和所述反馈响应串至认证服务器,供所述认证服务器进行应用访问的免密认证;
认证服务器620,用于接收所述用户标识码、所述随机挑战数和所述反馈响应串,执行应用访问的免密认证操作,在所述免密认证成功后,获取所述SIM卡的用户通讯码,并发送所述用户通讯码至应用服务器;
应用服务器630,用于在接收到所述用户通讯码之后,向所述用户终端发送连接请求。
根据本发明实施例,用户终端在SIM卡中读取到用户标识码之后,将依据读取到的用户标识码生成一个对应的随机挑战数,进而利用该对应的随机挑战数计算出一个反馈字符串,由此获取到关于SIM卡的用户标识码、随机挑战数以及反馈字符串。当用户终端获取到SIM卡的用户标识码、随机挑战数以及反馈字符串之后,将发送至认证服务器,供认证服务器对SIM卡实现应用访问的免密认证。因此,使用该方法无需实现用户信息的加插功能,从而无需升级移动核心网网元,节省了设计成本。同时,改善了传统认证方法中,在无线局域网无法正常进行免密登录的问题。
关于认证系统的具体限定可以参见上文中对于认证方法的限定,在此不再赘述。上述认证系统中的各个装置可全部或部分通过软件、硬件及其组合来实现。上述各装置可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个装置对应的操作。
在一个实施例中,提供了一种认证方法,本实施例以该方法应用于上述图6中的认证系统来举例说明。该方法具体包括查询步骤、认证步骤以及应用登录步骤,如图7所示,该方法具体包括如下步骤701至步骤712,其中步骤701至步骤704是查询步骤,步骤705至步骤708是认证步骤,步骤709至步骤712是应用登录步骤。
步骤701,通信应用向SIM卡发起用户识别码查询请求。
步骤702,SIM卡响应查询请求,并将查询到的用户识别码发送至通信应用。
步骤703,通信应用接收到SIM卡发送的用户识别码后,将利用该用户识别码作为函数种子,从而调用预先存储的随机函数生成随机挑战数,或是将该用户识别码作为随机函数,生成对应的随机挑战数,并将生成的随机挑战数发送至SIM卡。
步骤704,SIM卡接收到随机挑战数后,首先将该随机挑战数进行加密,然后将加密后的随机挑战数作为随机函数生成反馈响应串,并发送至通信应用。
步骤705,通信应用最终在接收到反馈响应串之后,将整合用户识别码、随机挑战数以及反馈响应串,发送至认证服务器的认证平台。
步骤706,当认证平台接收到用户终端发送的用户识别码、随机挑战数以及反馈响应串之后,进一步该用户识别码、随机挑战数以及反馈响应串转发至数据服务设备,由数据服务设备对用户信息作进一步认证处理。
步骤707,数据服务设备接收到用户识别码、随机挑战数以及反馈响应串之后,首先在数据库中查找与用户识别码匹配的存储识别码,然后以存储识别码作为源数据生成一个挑战数,并确定该挑战数与随机挑战数向匹配,最后利用匹配的挑战数生成一个响应串。当数据服务设备自生成的响应串与接收到的反馈响应串匹配时,即可判定该用户信息的认证结果为成功。如果鉴权认证结果为失败,则通过认证平台向用户终端反馈认证失败的信息,提示用户终端确认网络连接是否正常。
步骤708,当数据服务设备对用户信息的认证结果为成功后,将获取SIM卡的用户通讯码,并发送该用户通讯码至认证平台。用户通讯码的获取方式可以是在包括用户识别码、随机挑战数以及反馈响应串的用户信息中解析出来,也可以是通过认证平台与用户终端进行信息交互得到。
步骤709,认证平台获取到SIM卡的用户通讯码后,将发送该用户通讯码至应用服务器。
步骤710,当应用服务器获取到用户识别码之后,将向SIM卡发起连接请求,请求与SIM卡建立通信连接。
步骤711,SIM卡可以接收请求,并响应该请求,即可与应用服务器建立连接;也可以拒绝请求,即关闭应用访问。
步骤712,当SIM卡接收并响应应用服务器的连接请求后,即可成功登陆当前访问的应用,从而无需密码验证。
本实施例中,用户终端将获取到的用户标识码、随机挑战数和反馈响应串发送至认证服务器,由认证服务器进行信息的认证操作,并在认证结果为成功之后,将用户通讯码发送至应用服务器,供应用服务器根据接收到的用户通讯码,与用户终端建立通信连接,从而实现用户终端进行应用访问的免密认证。因此,使用该方法无需实现用户信息的加插功能,从而无需升级移动核心网网元,节省了设计成本。同时,改善了传统认证方法中,在无线局域网无法正常进行免密登录的问题。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储第三方通讯设备的账户信息。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种认证方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种认证方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图8和图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
在所述用户终端的SIM卡中读取用户标识码;
根据所述用户标识码,生成随机挑战数;
根据所述随机挑战数,得到反馈响应串;
发送所述用户标识码、所述随机挑战数和所述反馈响应串至认证服务器,供所述认证服务器进行应用访问的免密认证。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
接收应用服务器的连接请求;所述连接请求用于指示所述用户终端与所述应用服务器建立连接;执行应用访问操作。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
调用所述随机函数;通过所述随机函数,计算所述用户标识码的随机值,作为所述随机挑战数。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
调取所述用户鉴权参数;根据所述用户鉴权参数和所述随机挑战数,生成所述反馈响应串。
在另一个实施例中,处理器执行计算机程序时还实现以下步骤:
接收用户终端的用户标识码、随机挑战数和反馈响应串;
根据所述用户标识码、所述随机挑战数和所述反馈响应串,执行应用访问的免密认证操作;
当所述免密认证成功时,获取所述SIM卡的用户通讯码;
发送所述用户通讯码至应用服务器,供所述应用服务器在接收到所述用户通讯码之后,向所述用户终端发送连接请求。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
在所述用户终端的SIM卡中读取用户标识码;
根据所述用户标识码,生成随机挑战数;
根据所述随机挑战数,得到反馈响应串;
发送所述用户标识码、所述随机挑战数和所述反馈响应串至认证服务器,供所述认证服务器进行应用访问的免密认证。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
接收应用服务器的连接请求;所述连接请求用于指示所述用户终端与所述应用服务器建立连接;执行应用访问操作。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
调用所述随机函数;通过所述随机函数,计算所述用户标识码的随机值,作为所述随机挑战数。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
调取所述用户鉴权参数;根据所述用户鉴权参数和所述随机挑战数,生成所述反馈响应串。
在另一个实施例中,计算机程序被处理器执行时还实现以下步骤:
接收用户终端的用户标识码、随机挑战数和反馈响应串;
根据所述用户标识码、所述随机挑战数和所述反馈响应串,执行应用访问的免密认证操作;
当所述免密认证成功时,获取所述SIM卡的用户通讯码;
发送所述用户通讯码至应用服务器,供所述应用服务器在接收到所述用户通讯码之后,向所述用户终端发送连接请求。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。