一种认证方法及装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种认证方法及装置。
背景技术
目前,终端的各种应用(Application,APP)得到了广泛的使用,用户可以基于针对应用预先注册的账号和密码,接受该应用的服务器的认证,在认证通过后可成功登录该应用。其中,所述终端包括但不限于:智能手机、平板电脑、智能手表、车载移动台,等等。
在现有技术中,很多应用的服务器也提供了基于终端标识和验证码对用户进行认证的方法,使得用户无需针对每个应用分别注册账号,其中,所述终端标识可以是手机号码等。需要说明的是,目前,手机号码并不限于手机使用,上述的其他终端也可以使用手机号码实现收发短信(Short Message Service,SMS)等功能。
以所述终端标识是手机号码为例,对现有技术中基于终端标识和验证码的认证方法进行说明,主要包括以下操作步骤:启动手机上的应用;用户在该应用的登录界面中输入该手机的手机号码,并通过点击该登录页面提供的特定按钮,向该应用的服务器发送携带该手机号码的验证码获取请求,该服务器接收到该验证码获取请求后,生成验证码(一般为4位数或6位数的随机数字串),并通过短信的方式,返回给该验证码获取请求携带的手机号码所属的手机(也即,该用户的手机),用户可以在手机接收到的短信中查看到该验证码,并将该验证码在登录页面输入,该手机则可以将用户输入的验证码发送给该服务器,以请求登录该应用,该服务器当确定接收到的该验证码与该服务器发送给该手机号码所属的手机的验证码相同时,确定对该用户认证通过,进而允许该手机用该手机号码登录该应用,相应的,手机上的登录界面跳转至登录成功页面。
但是,在上述认证过程中,手机在接收到验证码短信后,需要等待用户手动查看验证码短信,以及手动输入并发送验证码后,进而服务器才能对用户进行认证,因此,操作步骤繁琐,认证效率较低。
发明内容
本申请实施例提供一种认证方法及装置,用以解决现有技术中服务器对用户进行认证的效率较低的问题。
本申请实施例提供另一种认证方法及装置,用以解决现有技术中服务器对用户进行认证的效率较低的问题。
本申请实施例提供的一种认证方法,包括:
终端向目标应用的服务器发送携带终端标识和身份信息的操作请求;
接收所述服务器根据所述终端标识返回的开放链接(OpenURL),其中,所述OpenURL携带所述服务器加密后的身份信息;
根据所述OpenURL,通过所述目标应用获取所述身份信息,并将获取的所述身份信息以及所述加密后的身份信息发送给所述服务器,使所述服务器根据接收到的身份信息以及所述加密后的身份信息进行认证。
本申请实施例提供的另一种认证方法,包括:
目标应用的服务器接收终端发送的、携带终端标识和身份信息的操作请求;
根据所述身份信息,生成携带所述服务器加密后的身份信息的OpenURL;
根据所述终端标识,将所述OpenURL返回给所述终端;
接收所述终端根据所述OpenURL,通过所述目标应用获取并发送给所述服务器的所述身份信息以及所述加密后的身份信息;
根据接收到的身份信息以及所述加密后的身份信息进行认证。
本申请实施例提供的一种认证装置,包括:
发送模块,用于为终端向目标应用的服务器发送携带终端标识和身份信息的操作请求;
接收模块,用于接收所述服务器根据所述终端标识返回的OpenURL,其中,所述OpenURL携带所述服务器加密后的身份信息;
认证模块,用于根据所述OpenURL,通过所述目标应用获取所述身份信息,并将获取的所述身份信息以及所述加密后的身份信息发送给所述服务器,使所述服务器根据接收到的身份信息以及所述加密后的身份信息进行认证。
本申请实施例提供的另一种认证装置,包括:
第一接收模块,用于为目标应用的服务器接收终端发送的、携带终端标识和身份信息的操作请求;
生成模块,用于根据所述身份信息,生成携带所述服务器加密后的身份信息的OpenURL;
返回模块,用于根据所述终端标识,将所述OpenURL返回给所述终端;
第二接收模块,用于接收所述终端根据所述OpenURL,通过所述目标应用获取并发送给所述服务器的所述身份信息以及所述加密后的身份信息;
认证模块,用于根据接收到的身份信息以及所述加密后的身份信息进行认证。
本申请实施例通过上述至少一种技术方案,用户可以通过点击所述OpenURL触发服务器进行用户认证,操作步骤简单,认证效率较高。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的认证方法的过程;
图2为本申请实施例提供的另一种认证方法的过程;
图3为本申请实施例提供的、在实际应用场景下,一种认证登录的详细过程;
图4为本申请实施例提供的对应于图1的认证装置结构示意图;
图5为本申请实施例提供的对应于图2的认证装置结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的认证方法的过程,具体包括以下步骤:
S101:终端向目标应用的服务器发送携带终端标识和身份信息的操作请求。
在本申请实施例中,图1中的认证方法的执行主体可以是搭载有所述目标应用的终端,所述终端包括但不限于:手机、平板电脑、智能手表、车载移动台、个人计算机等。所述目标应用可以是搭载在所述终端上的任一应用。
在本申请实施例中,终端可以向服务器发送所述操作请求,以请求获得所述服务器提供的、与所述操作请求对应的服务。
在实际应用中,为了提高终端和服务器的交互安全性,可以在服务器对终端(使用该终端的用户)认证通过后,才准许终端从服务器获得所述对应的服务,所述认证的过程本身也属于所述对应的服务的一种。在这种情况下,所述操作请求可以是:认证请求,以及包含所述认证请求的其他请求(所述其他请求可以是登录请求、支付请求、用户信息变更请求等),等等。以上是对所述操作请求的举例说明,本申请对所述操作请求并不做限定。
在本申请实施例中,所述终端标识可以是所述终端与服务器进行交互时使用的通信地址(用于对所述终端寻址),如所述终端标识可以是所述终端的手机号码、所述终端当前使用的邮箱地址,等等。
所述身份信息可以唯一标识所述终端,由于在实际应用中,一个终端一般由一个用户固定使用,因此,可以认为所述身份信息不仅可以表示所述终端的身份,也可以表示使用所述终端的用户的身份。所述身份信息可以是所述终端的国际移动设备身份码(International Mobile Equipment Identity,IMEI)、国际移动用户识别码(International Mobile Subscriber Identification Number,IMSI)和介质访问控制(Media Access Control,MAC)地址,等等。
S102:接收所述服务器根据所述终端标识返回的开放链接OpenURL,其中,所述OpenURL携带所述服务器加密后的身份信息。
为了便于理解,对OpenURL进行说明。OpenURL是一种可以携带元数据和资源地址信息,可以运行的统一资源定位符(Uniform Resource Locator,URL),可以用于实现唤醒应用,以及在不同应用之间传递预定参数和预定数据等功能。可以利用OpenURL的上述特性,解决背景技术中提及的问题。
在本申请实施例中,所述加密后的身份信息是服务器对接收到的终端发送的所述身份信息进行加密后生成的。需要说明的是,服务器在对所述身份信息进行加密时,还可以一同加密当前时间戳以及接收到终端发送的所述终端标识,在这种情况下,所述加密后的身份信息中还可以包含有加密后的所述终端标识、加密后的所述当前时间戳等信息。
进一步的,由于服务器是根据所述终端标识返回OpenURL的,因此,假定有攻击者冒充使用该终端的用户,只要该攻击者未拿到该终端,则无法接收到服务器返回的所述OpenURL,进而也无法通过后续认证,因此,提高了本申请提高的认证方法的安全性。
S103:根据所述OpenURL,通过所述目标应用获取所述身份信息,并将获取的所述身份信息以及所述加密后的身份信息发送给所述服务器,使所述服务器根据接收到的身份信息以及所述加密后的身份信息进行认证。
在本申请实施例中,所述OpenURL是可运行的,用户可以通过点击所述OpenURL,触发终端和服务器自动执行后续认证过程,相比于现有技术用户手动查看、输入以及提交验证码的方式,操作简单,认证效率较高。
在本申请实施例中,在正常情况下,由于步骤S101和步骤S103是同一个终端执行的,因此,步骤S101中的身份信息与步骤S103中终端获取的身份信息是相同的,所述终端可以通过服务器的认证。而在异常情况下,例如,假定终端A通过执行步骤S101,获得OpenURL,而终端B从终端A上拷贝到该OpenURL,然后不由终端A而是由终端B执行步骤S103,这种情况下,步骤S101中的身份信息(由终端A获取)与步骤S103中终端B获取的身份信息不相同,终端B无法冒充终端A通过服务器的认证。
因此,本申请实施例提供的认证方法,可以防止攻击者盗用服务器为合法终端生成的OpenURL用于认证。
通过上述方法,由于用户可以通过点击所述OpenURL触发服务器进行用户认证,操作步骤简单,认证效率较高,因此,可以解决中服务器对用户进行认证的效率较低的问题。
在本申请实施例中,终端向服务器发送的操作请求中携带的终端标识和身份信息可以由用户手动输入,也可以由终端自动获取。
例如,对于步骤S101,终端向目标应用的服务器发送携带终端标识和身份信息的操作请求,具体可以包括:终端接收用户输入的终端标识;通过所述目标应用获取身份信息;向所述目标应用的服务器发送携带所述终端标识和所述身份信息的操作请求。
更具体的,终端上的所述目标应用可以为用户提供特定操作界面和操作控件,以便于用户可以通过在该操作界面中输入终端标识,以及点击该操作控件触发终端获取到终端标识和身份信息并执行步骤S101。
需要说明的是,以上只是举例说明了步骤S101的一种具体实施方式,在实际应用中,当采用不同的方法获取终端标识和身份信息时,步骤S101的具体实施方式相应地也可以不同。
在本申请实施例中,服务器可以通过所述终端标识对所述终端寻址,进而向所述终端发送OpenURL。为了使用户可以正常使用(包括但不限于:可以看见、可以点击运行、可以复制等操作中的至少一种)终端接收到的OpenURL,服务器可以将所述OpenURL携带在预定格式的消息中进行发送,所述预定格式可以根据所述终端标识确定。
以所述终端标识是手机号码为例进行说明,在这种情况下,对于步骤S102,接收所述服务器根据所述终端标识返回的开放链接OpenURL,具体包括:接收所述服务器采用所述终端标识对应的信息发送方式,向所述终端标识对应的终端返回的、包含有OpenURL的特定信息,其中,所述终端标识对应的信息发送方式包括短信服务SMS方式,所述特定信息包括短信。本申请实施例主要针对这种场景进行说明。
当然,在实际应用中,所述终端标识还可以是其他信息,如用户在所述终端上使用的邮箱地址,在这种情况下,所述终端标识对应的信息发送方式包括邮件服务方式,所述特定信息包括邮件。
另外,在使用短信或邮件作为服务器向终端发送OpenURL的情况下,由于短信服务和邮件服务已经是终端上很普及的应用服务,因此,在实施所述认证方法时,发送OpenURL的这一步骤的实施成本很小,而且可靠性较高。
在本申请实施例中,为了实现步骤S103中的认证过程,服务器并非是随意生成一个OpenURL返回给终端,而是要生成可以适用于该认证过程OpenURL,以使得终端可以基于该OpenURL唤醒目标应用,以及通过目标应用向服务器传递用于所述认证需要用到的相关信息,下面对服务器生成的OpenURL进行详细说明。
所述OpenURL不仅携带有所述服务器加密后的身份信息,还可以携带有所述目标应用的统一资源定位符方案(URL Schemes)字段信息、所述目标应用的对应于所述操作请求的处理标识。
在这种情况下,对于步骤S103,根据所述OpenURL,通过所述目标应用获取所述身份信息,并将获取的所述身份信息以及所述加密后的身份信息发送给所述服务器,具体可以包括:当接收到到针对所述OpenURL的解析请求时,根据所述OpenURL包含的所述URLSchemes字段信息,唤醒所述目标应用,其中,所述解析请求是由用户通过点击所述特定信息中的所述OpenURL发送的;将所述OpenURL包含的所述加密后的身份信息和所述处理标识发送给唤醒后的所述目标应用,以便于所述目标应用执行以下操作:根据所述处理标识获取所述身份信息,并将获取的所述身份信息以及所述加密后的身份信息发送给所述服务器。
可以看到,当所述特定信息是短信时,用户只需点击该短信中的OpenURL就可以出发步骤S103的执行,操作简单,用户体验较好。
为了便于理解,对URL Schemes字段信息和处理标识进行说明。
对于URL Schemes字段信息,每个应用都可以有一个URL Schemes字段信息,该URLSchemes字段信息可以由该应用的服务器或开发者自行定义,该URL Schemes字段信息可以唯一标识该应用。因此,在本申请实施例中,终端可以根据目标应用的URL Schemes字段信息,寻址到终端上的目标应用的位置,进而从终端上的其他位置,唤醒目标应用以及跳转至目标应用中。
对于处理标识,每个应用都可以有多个处理标识,每个处理标识可以分别对应于终端针对该应用的一种操作请求,可以由该应用的服务器或开发者自行定义针对每种操作请求进行相应处理的业务逻辑,目标应用或服务器可以根据操作请求对应的处理标识,确定该操作请求对应的业务逻辑的入口,进而执行该业务逻辑。对于在本申请实施例中,所述业务逻辑可以是用于实现认证、登录等过程的业务逻辑。
在本申请实施例中,前面已经提及,所述操作请求可以是包含认证请求的其他请求,在这种情况下,服务器在对终端认证通过后,还可以进一步地执行所述其他请求涉及的其他业务逻辑。
例如,当所述操作请求包括登录请求时,服务器在对终端认证通过后,还可以根据所述终端标识,生成登录成功页面并返回给所述终端,则终端可以从当前页面跳转至所述目标应用的登录成功页面,从而成功地完成登录过程。
以上对服务器生成的OpenURL进行了详细说明。为了便于理解,进一步地举例对在某实际应用场景下,服务器生成的OpenURL进行说明。假定所述操作请求时登录请求,目标应用是某电商应用,该电商应用的URL Schemes字段信息是“alipay”,该电商应用的对应于登录请求的处理标识是“phoneMsgLogin”,服务器加密后的身份信息表示为“sdasdqwe123213sadasdas”。则服务器可以生成OpenURL如下:
“alipay:phoneMsgLogin?token=sdasdqwe123213sadasdas”;
其中,“token”是用于保存服务器加密后的身份信息的参数的预定名称,在实际应用中,对该参数的预定名称并不做限定,也可以用其他字符串作为该参数的预定名称。
以上是以终端执行主体,本申请实施例提供的认证方法的过程。基于同样的思路,本申请实施例还提供了一种以目标应用的服务器为执行主体的认证方法,如图2所述。
图2为本申请实施例提供的另一种认证方法的过程,具体包括以下步骤:
S201:目标应用的服务器接收终端发送的、携带终端标识和身份信息的操作请求。
在本申请实施例中,图2中的认证方法的执行主体可以是所述目标应用的服务器,所述服务器包括但不限于:个人计算机、大中型计算机、计算机集群等。
202:根据所述身份信息,生成携带所述服务器加密后的身份信息的开放链接OpenURL。
203:根据所述终端标识,将所述OpenURL返回给所述终端。
204:接收所述终端根据所述OpenURL,通过所述目标应用获取并发送给所述服务器的所述身份信息以及所述加密后的身份信息。
205:根据接收到的身份信息以及所述加密后的身份信息进行认证。
通过上述方法,用户可以通过点击所述OpenURL触发服务器进行用户认证,操作步骤简单,认证效率较高。因此,可以解决中服务器对用户进行认证的效率较低的问题。
在本申请实施例中,对于步骤S202,根据所述身份信息,生成携带所述服务器加密后的身份信息的开放链接OpenURL,具体可以包括:将所述终端标识、所述身份信息和当前时间戳组合为字符串,并采用预定的可逆算法,对所述字符串进行加密,生成加密后的身份信息;根据所述目标应用和所述操作请求,获取所述目标应用的统一资源定位符方案URLSchemes字段信息和对应于所述操作请求的处理标识;生成携带所述加密后的身份信息、所述URL Schemes字段信息和所述处理标识的OpenURL。
对于所述当前时间戳,可以用于服务器后续验证所述OpenURL是否超时失效。在这种情况下,服务器在生成所述OpenURL时,可以设置所述OpenURL的最大生存时间(可以是1分钟、3分钟、5分钟等),在该OpenURL生成后经过该最大生存时间后,服务器可以判定该OpenURL失效,进而可以拒绝执行根据该OpenURL触发的认证过程,需要终端重新获取服务器重新生成的OpenURL用于认证。因此,所述当前时间戳有助于提高所述认证方法的安全性。
上述的加密过程可以防止终端的终端标识、身份信息和当前时间戳在传输过程中被攻击者篡改,可以提高所述认证方法的安全性。
本申请实施例对组合生成所述字符串所采用的组合方法,以及加密所述字符串所采用可逆算法并不做限定。下面举例说明在实际应用中的一种组合方法。
例如,假定所述终端标识是手机号码“186XXXXXXXX”,所述身份信息是所述终端的MAC地址、IMEI和IMSI,当前时间戳为2015年9月6日01:25(换算为毫秒数为:1441473914543)。将该终端标识、身份信息、当前时间戳通过串接的组合方式,生成字符串,可以将该字符串表示为“186XXXXXXXX+MAC+IMEI+IMSI+1441473914543”,进而可以对该字符串加密生成加密后的身份信息,可以看到,在这种情况下,所述加密后的身份信息不仅包含了加密的身份信息,也包含了加密的终端标识和加密的当前时间戳。需要说明的是,由于终端的MAC、IMEI、IMSI的位数较长,因此,未在上述的字符串中详细表示,仅直接用名称代替表示。
进一步的,在本申请实施例中,对于步骤S203,根据所述终端标识,将所述OpenURL返回给所述终端,具体可以包括:采用所述终端标识对应的信息发送方式,向所述终端标识对应的终端返回包含有OpenURL的特定信息,其中,所述终端标识对应的信息发送方式包括短信服务SMS方式,所述特定信息包括短信。
在本申请实施例中,对于步骤205,具体包括:
采用所述可逆算法,对接收到的所述加密后的身份信息进行解密,获得所述字符串;当确定接收到的身份信息与所述字符串中包含的身份信息相同、且所述字符串中包含的时间戳与当前时间之间的间隔不大于预设阈值时,确定认证通过;当确定接收到的身份信息与所述字符串中包含的身份信息不相同、或所述字符串中包含的时间戳与当前时间之间的间隔大于预设阈值时,确定认证不通过。
其中,所述预设阈值可以是上面提及的OpenURL的最大生存时间。
类似于图1中的认证过程,当所述操作请求包括登录请求时,在步骤S205之后,若服务器确定所述认证通过,则可以根据所述终端标识,生成登录成功页面并返回给所述终端。在这种情况下,服务器是将所述终端标识作为了用户成功登录目标应用后所使用的账号,因此,用户并不需要预先针对每个应用预分别注册账号,而是可以使用同一终端标识登录各应用,提高了用户登录的便利性。
以上分别从终端角度和服务器角度,对本申请提供的认证方法进行了说明。本申请实施例还结合图1和图2中的过程,提供了一个双端(终端、目标应用的服务器)交互流程图,以举例说明在实际应用中,本申请提供的认证方法的一种详细实施过程,如图3所示,假定所述终端标识是手机号码,所述操作请求是登录请求,所述身份信息包括IMEI、IMSI和MAC地址中的至少一种,所述详细实施过程具体可以包括以下步骤:
S301:用户在终端上的目标应用中输入该终端的手机号码,点击目标应用提供的登录按钮。
S302:目标应用检测到用户的点击登录按钮操作后,获取终端的身份信息,并向目标应用的服务器发送携带该身份信息和用户输入的手机号码的登录请求。
S303:服务器将接收到的终端标识、身份信息和确定的当前时间戳组合为字符串,并采用预定的可逆算法,对所述字符串进行加密,生成加密后的身份信息。
S304:服务器根据目标应用和该登录请求,获取目标应用的URL Schemes字段信息和对应于该登录请求的处理标识。
S305:服务器生成携带该加密后的身份信息、该URL Schemes字段信息和该处理标识的OpenURL。
S306:服务器通过短信方式,向该手机号码对应的终端发送包含该OpenURL的短信。
S307:终端通过短信应用接收到该短信,用户点击该短信中的OpenURL。
S308:终端从该OpenURL中解析出该加密后的身份信息、该URL Schemes字段信息和该处理标识。
S309:终端根据该URL Schemes字段信息,唤醒目标应用,并该加密后的身份信息和该处理标识发送给目标应用。
S310:目标应用根据该处理标识获取终端的身份信息,并将获取的身份信息以及该加密后的身份信息发送给服务器。
S311:服务器采用该可逆算法,对接收到的该加密后的身份信息进行解密,获得该字符串。
S312:服务器当确定接收到的身份信息与该字符串中包含的身份信息相同、且该字符串中包含的时间戳与当前时间之间的间隔不大于预设阈值时,确定认证通过。
S313:服务器在确定认证通过后,根据该字符串中包含的手机号码,生成登录成功页面并返回给终端。
S314:终端跳转至目标应用的登录成功页面。
需要说明的是,本申请实施例提供的认证方法同样也可以用于无线网站,将所述认证方法中的目标应用替换为无线网站即可。在这种情况下,用户可以基于所述认证方法,接收无线网站的服务器的认证,进而在认证通过后登录该无线网站,以及向所述网线网站的服务器请求获得其他服务。
以上为本申请实施例提供的认证方法,基于同样的思路,本申请实施例还提供相应的认证装置,如图4、图5所示。
图4为本申请实施例提供的对应于图1的认证装置结构示意图,具体包括:
发送模块401,用于为终端向目标应用的服务器发送携带终端标识和身份信息的操作请求;
接收模块402,用于接收所述服务器根据所述终端标识返回的OpenURL,其中,所述OpenURL携带所述服务器加密后的身份信息;
认证模块403,用于根据所述OpenURL,通过所述目标应用获取所述身份信息,并将获取的所述身份信息以及所述加密后的身份信息发送给所述服务器,使所述服务器根据接收到的身份信息以及所述加密后的身份信息进行认证。
所述发送模块401具体用于:为终端接收用户输入的终端标识;通过所述目标应用获取身份信息;向所述目标应用的服务器发送携带所述终端标识和所述身份信息的操作请求。
所述接收模块402具体用于:接收所述服务器采用所述终端标识对应的信息发送方式,向所述终端标识对应的终端返回的、包含有OpenURL的特定信息,其中,所述终端标识对应的信息发送方式包括短信服务SMS方式,所述特定信息包括短信。
所述OpenURL还携带有所述目标应用的URL Schemes字段信息、所述目标应用的对应于所述操作请求的处理标识;
所述认证模块403具体用于:当接收到到针对所述OpenURL的解析请求时,根据所述OpenURL包含的所述URL Schemes字段信息,唤醒所述目标应用,其中,所述解析请求是由用户通过点击所述特定信息中的所述OpenURL发送的;将所述OpenURL包含的所述加密后的身份信息和所述处理标识发送给唤醒后的所述目标应用,以便于所述目标应用执行以下操作:根据所述处理标识获取所述身份信息,并将获取的所述身份信息以及所述加密后的身份信息发送给所述服务器。
所述操作请求包括登录请求;
所述装置还包括:
登录模块404,用于在通过所述认证后,跳转至所述目标应用的登录成功页面;其中,所述登录成功页面是所述服务器根据所述终端标识,生成并返回给所述终端的。
所述终端标识包括手机号码,所述身份信息包括国际移动设备身份码IMEI、国际移动用户识别码IMSI和介质访问控制MAC地址中的至少一种;
所述终端标识对应的信息发送方式包括短信服务SMS方式,所述特定信息包括短信。
具体的上述如图4所示的装置可以位于终端上。
图5为本申请实施例提供的对应于图2的认证装置结构示意图,具体包括:
第一接收模块501,用于为目标应用的服务器接收终端发送的、携带终端标识和身份信息的操作请求;
生成模块502,用于根据所述身份信息,生成携带所述服务器加密后的身份信息的OpenURL;
返回模块503,用于根据所述终端标识,将所述OpenURL返回给所述终端;
第二接收模块504,用于接收所述终端根据所述OpenURL,通过所述目标应用获取并发送给所述服务器的所述身份信息以及所述加密后的身份信息;
认证模块505,用于根据接收到的身份信息以及所述加密后的身份信息进行认证。
所述生成模块502具体用于:将所述终端标识、所述身份信息和当前时间戳组合为字符串,并采用预定的可逆算法,对所述字符串进行加密,生成加密后的身份信息;根据所述目标应用和所述操作请求,获取所述目标应用的URL Schemes字段信息和对应于所述操作请求的处理标识;生成携带所述加密后的身份信息、所述URL Schemes字段信息和所述处理标识的OpenURL。
所述返回模块503具体用于:采用所述终端标识对应的信息发送方式,向所述终端标识对应的终端返回包含有OpenURL的特定信息,其中,所述终端标识对应的信息发送方式包括短信服务SMS方式,所述特定信息包括短信。
所述认证模块505具体用于:采用所述可逆算法,对接收到的所述加密后的身份信息进行解密,获得所述字符串;当确定接收到的身份信息与所述字符串中包含的身份信息相同、且所述字符串中包含的时间戳与当前时间之间的间隔不大于预设阈值时,确定认证通过;当确定接收到的身份信息与所述字符串中包含的身份信息不相同、或所述字符串中包含的时间戳与当前时间之间的间隔大于预设阈值时,确定认证不通过。
所述操作请求包括登录请求;
所述装置还包括:
登录模块506,用于在确定所述认证通过后,根据所述终端标识,生成登录成功页面并返回给所述终端。
所述终端标识包括手机号码,所述身份信息包括国际移动设备身份码IMEI、国际移动用户识别码IMSI和介质访问控制MAC地址中的至少一种;
所述终端标识对应的信息发送方式包括短信服务SMS方式,所述特定信息包括短信。
具体的上述如图5所示的装置可以位于服务器上。
本申请实施例提供一种应用登录方法及装置,该方法包括:终端向目标应勇的服务器发送携带终端标识和身份信息的操作请求;接收所述服务器根据所述终端标识返回的OpenURL,其中,所述OpenURL携带所述服务器加密后的身份信息;根据所述OpenURL,通过所述目标应用获取所述身份信息,并将获取的所述身份信息以及所述加密后的身份信息发送给所述服务器,使所述服务器根据接收到的身份信息以及所述加密后的身份信息进行认证。通过上述方法,用户可以通过点击所述OpenURL触发服务器进行用户认证,操作步骤简单,认证效率较高。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。