账户登录方法、设备和服务器与流程

文档序号:11594175阅读:369来源:国知局

本申请涉及网络通信技术领域,特别涉及一种账户登录方法、设备和服务器。



背景技术:

随着互联网技术的发展,基于移动终端的应用被不断开发并广泛使用。很多应用在使用过程中都涉及到个人账户的登录,用户可在首次登录之后在后续操作中自动登录自己的账户。

现有的账户登录方法主要包括两种方式,一种方式是移动终端会将用户输入的用户名和密码发送并保存在服务器中,同时将与移动终端相应的设备标识(id)和用户名保存在移动终端中,这样,当用户再次启动应用时,客户端会将设备id与用户名发送到服务器进行校验,校验通过则自动登录。

另一种方式是当用户初次登录成功后,服务器会向移动终端发送与该移动终端对应的令牌(token),移动终端接收并存储该设备token。当用户再次启用应用时,移动终端向服务器发送该设备token,服务器验证该设备token,验证通过则自动登录。

可以看出,现有的两种方式均将设备id/token长久不变地保存在移动终端中,破解地可能性比较大,存在安全隐患。



技术实现要素:

本发明的主要目的在于解决以上所提到的问题。

根据本发明的一方面,提供一种账户登录方法,所述账户登录方法应用于服务器,包括:接收来自移动终端的登录请求,所述登录请求包括设备可变标识;从用户账户数据库中查找与所述设备可变标识对应的用户账户信息;若找到,根据设备可变标识中的时间戳和服务器的当前时间,判断是否需要对所述设备可变标识进行更新;若需要更新,对所述设备可变标识进行更新;向移动终端发送账户登录许可指令和更新后的设备可变标识。

本发明的另一方面,提供一种账户登录方法,所述账户登录方法应用于服务器,包括:接收来自移动终端的登录请求,所述登录请求包括设备可变标识;从用户账户数据库中查找与所述设备可变标识对应的用户账户信息;若找到,对所述设备可变标识进行更新;向移动终端发送账户登录许可指令和更新后的设备可变标识。

根据本发明的另一方面,提供一种账户登录方法,所述账户登录方法应用于移动终端,包括:将登录请求发送到服务器,其中,所述登录请求包括设备可变标识;从服务器接收经由服务器处理后的设备可变标识和账户登录许可指令。

根据本发明的另一方面,提供一种服务器,包括:接收单元,接收来自移动终端的登录请求,所述登录请求包括设备可变标识;存储单元,存储用户账户数据库;查找单元,从用户账户数据库中查找与所述设备可变标识对应的用户账户信息;判断单元,根据设备可变标识中的时间戳和服务器的当前时间,判断是否需要对所述设备可变标识进行更新;更新单元,对所述设备可变标识进行更新。

根据本发明的另一方面,提供一种账户登录设备,包括:发送单元,将登录请求发送到服务器,其中,所述登录请求包括设备可变标识;接收单元,从服务器接收经由服务器处理后的设备可变标识和账户登录许可指令。

本申请实施例采用的上述至少一个技术方案通过利用设备可变标识替代唯一且不变的设备标识进行自动登录,从而提高了安全性。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1示出根据本发明的示例性实施例的账户登录系统的示图;

图2示出根据本发明的示例性实施例的由服务器执行的账户登录方法的流程图;

图3示出根据本发明的示例性实施例的由移动终端执行的账户登录方法的流程图;

图4示出根据本发明的示例性实施例的服务器的框图;

图5示出根据本发明的示例性实施例的移动终端的框图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

为了方便下文描述,首先介绍本申请的各个实施方式中所涉及的术语的解释。

移动终端:通常是指网络系统中由用户使用的并用于与服务器进行通信的设备,根据本发明的移动终端可包括但不限于是以下任意设备:个人计算机(pc)、移动装置(诸如,蜂窝电话、个人数字助理(pda)、数码相机、便携式游戏控制台、mp3播放器、便携式/个人多媒体播放器(pmp)、手持电子书、平板pc、便携式膝上型pc和全球定位系统(gps)导航仪)、智能tv等。

应用(app)是指是存储在移动终端的存储单元中的嵌入式应用或第三方应用。嵌入式应用是指预先安装在移动终端中的应用。例如,嵌入式应用可以是浏览器、电子邮件、即时信使等。第三方应用非常多样化,并且是指如下所述从线上市场下载以安装在移动终端上的应用,例如,支付应用、购物应用、娱乐应用等。

设备标识(id):根据移动终端的属性信息和特定算法模型而生成的长期有效且不会发生变化的标识码,其中,基于android操作系统的移动终端的属性信息可包括国际移动电话设备识别码(imei)、androidid、mac、序列号(serialnumber)等信息,而基于ios操作系统的移动终端的属性信息可包括广告标识符(idfa)、厂商标识码(vendorid)等信息,一般设备id无法逆向破解。一个移动终端通常具有唯一的设备id,因此,不同移动终端的设备id不同。

设备可变标识(例如,设备令牌(token)):移动终端基于设备id、app名称、随机数、时间戳(用于唯一地标识某一刻的时间)等信息生成的标识码。由此可以看出,一个设备可变标识与一个设备id相对应,而通过一个设备id可生成有效期不同的多个设备可变标识。在实际使用中,可通过特定的解析方法从设备可变标识中解析出时间戳,从而确定该设备可变标识是否有效,不同的app可以设定不同的有效期,因此在同一移动终端中的不同的app可对应于不同的设备可变标识。

根据本申请的实施例,提供一种自动登录系统。

参照图1,图1示出了根据本发明的示例性实施例的自动登录系统。如图1所示,所述系统包括移动终端100和服务器200。所述系统包括三个阶段:第一个阶段是初始化阶段,也被称为注册阶段;第二个阶段是初次登录阶段;第三个阶段是自动登录阶段。以下将参照图1对三个阶段进行详细描述。

在初始化阶段,移动终端100初次启动存储在移动终端中的应用,例如,响应于用户触摸显示在显示单元上的应用图标(诸如,支付宝应用、qq应用等),移动终端100将终端信息发送到服务器200,所述终端信息包括硬件信息和软件信息,随后,服务器200根据终端信息生成唯一的设备id,例如,服务器200可根据移动终端的idfa或serialnumber来生成移动终端100的设备id,并根据设备id生成与该应用相对应的设备可变标识(例如,设备令牌(token)),具体来说,服务器200根据与该应用相对应的应用信息、预设的有效期和时间戳等信息来生成所述设备可变标识。服务器200将设备id与设备可变标识对应地存储在服务器200的用户账户数据库中,并将设备可变标识发送到移动终端100,移动终端100将设备可变标识保存在移动终端100的存储器中。随后,所述系统进入初次登录阶段。

在可替代的实施例中,可根据app的类型,为不同的app设置具有不同有效期的设备可变标识。例如,当app是支付、即时通信等需要更高安全级的应用时,可将设备可变标识的有效期设置为较短,当app是新闻、视频等应用时,可将设备可变标识的有效期设置为较长。

用户在移动终端中输入用户名和用户密码,移动终端基于用户输入的用户名和用户密码以及保存的设备可变标识,生成登录请求,并将所述登录请求发送到服务器200。服务器对用户名和用户密码进行验证,若验证不通过,则向移动终端返回重新输入的信息直至验证通过为止。若验证通过,则服务器200将设备id、设备可变标识和用户名两两对应地存储在服务器200的用户账户数据库中。随后,所述系统响应于用户再次登录该app,进入自动登录阶段。

当用户再次启动该app时,移动终端100仅基于设备可变标识来生成登录请求,并将该登录请求发送到服务器200。服务器200基于登录请求中的设备可变标识,查找与该设备可变标识相应的设备id,若找到,则向移动终端100发送验证通过的信息,移动终端100在接收到该信息后,自动登录到相应账户。若没有找到,则向移动终端100发送验证未通过的信息,移动终端100在接收到该信息后,返回第二阶段(即,初次登录阶段)。

在可替代的实施例中,当用户再次启动该app时,移动终端100基于设备可变标识和用户名,生成登录请求,并将该登录请求发送到服务器200。服务器200基于登录请求中的设备可变标识,确定与该设备可变标识相应的设备id,同时确定登录请求中的用户名是否为该设备id相对应的用户名,如果服务器200的用户账户数据库中不存在与登录请求中的设备可变标识相对应的装置id,则退出自动登录阶段,所述系统进入初次登录阶段,如果服务器200的用户账户数据库中存在与登录请求中的设备可变标识相对应的装置id,但是所述装置id对应的用户名与存储的用户名不一致,则说明用户在利用移动终端100登录另一账户,此时,所述系统进入初次登录阶段,需要用户输入用户名和密码,随后移动终端100基于用户名、密码和设备可变标识生成更新后的登录请求,发送到服务器200,服务器200验证通过后,将该用户名与装置id对应起来,由此可知,一个装置id可对应多个用户名。因此,为了登录到期望账户,可基于用户名与设备可变标识生成登录请求。

如果服务器200的用户账户数据库中存在与登录请求中的设备可变标识相对应的装置id并且所述装置id对应的用户名与存储的用户名一致,则使移动终端登录到所述账户中。

接下来,服务器200可根据设备可变标识中的时间戳和服务器的当前时间,判断是否需要对所述设备可变标识符进行更新,具体来说,服务器200可从设备可变标识中解析出时间戳,并根据时间戳来确定该设备可变标识是否在有效期内,例如,服务器200可根据时间戳和服务器的当前时间计算出该设备可变标识已经创建了多长时间,然后再判断是否在有效期内。如果在有效期外则生成更新后的设备可变标识,其中,服务器200可根据服务器的当前时间来生成更新后的设备可变标识。随后服务器200将更新后的设备可变标识和账户登录许可指令发送到移动终端100,移动终端100将更新后的设备可变标识保存在移动终端100的存储器中,供下次自动登录使用。

在可替换地实施例中,服务器200可在查找到与所述设备可变标识对应的用户账户信息时,基于接收到的设备可变标识来生成更新后的设备可变标识,并使用更新后的设备可变标识来更新存储在服务器200中的设备可变标识,同时将更新后的设备可变标识发送到移动终端100。

在可替换的实施例中,移动终端100可将初始化阶段与登录阶段合并在一起。具体来说,响应于用户在移动终端中输入用户名和用户密码,移动终端100基于用户输入的用户名和用户密码,生成登录请求,然后,移动终端100将终端信息和登录请求一起发送到服务器200,所述终端信息包括硬件信息和软件信息,服务器对用户名和用户密码进行验证,若验证不通过,则向移动终端返回重新输入的信息直至验证通过为止。若验证通过,则服务器基于终端信息生成设备id,随后根据生成的设备id生成设备可变标识,然后,服务器200将设备id与设备可变标识以及设备可变标识与用户名对应地存储在存储器中。

当用户再次启动该app时,所述系统进入如上所述的第三阶段(即,自动登录阶段),为了简洁起见,在此将不进行重复地描述。

以下将参照图2和图3,分别描述由服务器和移动终端执行的账户登录方法,其中,图2示出根据本发明的示例性实施例的由服务器执行的账户登录方法的流程图;图3示出根据本发明的示例性实施例的由移动终端执行的账户登录方法的流程图。

参照图2,在s210,服务器接收来自移动终端的登录请求,该登录请求包括设备可变标识(例如,设备token)。所述设备可变标识是服务器在用户初次登录账户时根据设备id所生成的,而设备id是服务终端根据从移动终端接收到的终端信息而生成的唯一标识码。具体来说,所述设备可变标识根据已生成的设备id,根据做出登录请求的时间、所期望登录的应用以及预设的时间戳等信息来生成设备可变标识符。因此,所述设备可变标识符可包括与用户期望登录的应用相对应的应用信息、有效期和时间戳。在可选的实施例中,登录请求包括设备可变标识和用户名。

随后,在s220,服务器从用户账户数据库中查找与所述设备可变标识对应的用户账户信息。所述用户账户数据库中存储有与设备可变标识相对应存储的用户id。具体来说,在用户初次登录应用中的账户时,移动终端会将账户信息(即,用户名和密码)和终端信息发送到服务器,服务器对账户信息进行验证,并在验证通过之后,根据终端信息生成设备id,并根据设备id生成与该应用相应的设备可变标识,随后,服务器将设备可变标识、设备id和用户名两两相对应地存储在用户账户数据库中。在可选实施例中,服务器可在移动终端初次启用应用时,将终端信息发送到服务器,然后,服务器根据终端信息生成终端id,同时根据终端id生成设备可变标识,并在用户初次登录账户并通过服务器的验证之后,由服务器将账户信息、设备可变标识和终端id两两相对应地存储在用户账户数据库中。

在登录请求仅包括设备可变标识的情况下,服务器从用户账户数据库中查找与所述设备可变标识对应的设备id。在登录请求包括设备可变标识和用户名的情况下,服务器可从用户账户数据库中查找与所述设备可变id对应的设备标识,同时确定用户名是否为与所述设备标识相对应的用户名。

若找到,则进入s230,服务器根据设备可变标识中的时间戳和服务器的当前时间,判断是否需要对所述设备可变标识进行更新。服务器判断所述设备可变标识是否在有效期内,若在,则不做任何改变,若不在,则根据设备可变标识生成更新后的设备可变标识。具体来说,服务器可根据设备可变标识中的时间戳和服务器的当前时间,确定设备可变标识的存活时间,将该存活时间与有效期进行比较。若在有效期内,则不进行任何改变,若不在有效期内,则生成更新后的设备可变标识。

在可替换地实施例中,服务器可在查找到与所述设备可变标识对应的用户账户信息时,基于接收到的设备可变标识来生成更新后的设备可变标识,并使用更新后的设备可变标识来更新存储在服务器中的设备可变标识,同时将更新后的设备可变标识发送到移动终端。

若没找到,则验证不通过。服务器向移动终端发送验证未通过的指令,移动终端在接收到该指令后,进入登录界面并提示用户再次输入账户信息。

若服务器在s230判断出需要对所述设备可变标识进行更新,则在s240,对所述设备可变标识进行更新。最后,在s250,服务器向移动终端发送账户登录许可指令和更新后的设备可变标识。移动终端在接收到更新后的设备可变标识之后,删除存储存储器中的设备可变标识,并将更新后的设备可变标识存储在存储器中。若判断不需要对所述设备可变标识进行更新,则向移动终端发送账户登录许可指令和所述设备可变标识。

以上已经描述了在服务器上执行的账户登录方法,随后,将参照图3对在移动终端上执行的账户登录方法进行描述。

参照图3,当再次启动安装在移动终端中的应用时,在s310,移动终端将登录请求发送到服务器,其中,所述登录请求包括设备可变标识,所述设备可变标识具有预设有效期并且可对移动终端进行有效标识。移动终端在初始化阶段或初次登录阶段将移动终端的终端信息发送到服务器,所述终端信息包括硬件信息和软件信息,随后,服务器根据终端信息生成唯一的设备id以及与该设备id对应的设备可变标识(例如,设备可变标识),接下来,服务器可根据与该应用相对应的应用信息、预设的有效期和时间戳来生成具有有效期的设备可变标识。在可替代的实施例中,移动终端将设备可变标识和用户名发送到服务器。

在服务器执行如图2所示的账户登录方法的过程中,服务器可确定是否对设备可变标识进行更新,若确定更新,则将更新后的设备可变标识发送到移动设备,若确定不更新,则将原本的设备可变标识发送到移动设备。在确定设备可变标识的有效期无效,对设备可变标识进行更新,或者确定从用户账户数据库中查找到相应的用户账户信息设备之后或同时,对设备可变标识进行更新。由此,在s320,在设备可变标识通过服务器的验证之后,移动终端从服务器接收经由服务器处理后的设备可变标识和账户登录许可指令。

以上已经参照图2和图3分别描述了由服务器和移动终端执行的账户登录方法,以下将参照图4和图5,对根据本发明的示例性实施例的移动终端和服务器的框图进行详细描述。

参照图4,图4示出了根据本发明的示例性实施例的服务器的框图。根据示例性实施例的服务器可包括接收单元410、存储单元420、查找单元430、判断单元440、更新单元450和发送单元460。

接收单元410接收来自移动终端的登录请求,所述登录请求包括设备可变标识。其中,所述设备可变标识具有有效期并且能够对移动终端进行标识。存储单元420存储用户账户数据库,其中,设备标识、设备可变标识和用户名两两对应地存储在用户账户数据库中。

查找单元430从用户账户数据库中查找与所述设备可变标识对应的用户账户信息。具体来说,查找单元410从用户账户数据库中查找与所述设备可变标识对应的设备标识符。在可替代实施例中,所述登录请求包括设备可变标识和用户名,则查找单元410从用户账户数据库中查找与所述设备可变标识对应的设备标识,同时确定用户名是否为与所述设备标识相对应的用户名。判断单元440根据设备可变标识中的时间戳和服务器的当前时间,判断是否需要对所述设备可变标识进行更新。在判断单元440判断需要更新,更新单元450对所述设备可变标识进行更新,随后发送单元460向移动终端发送账户登录许可指令和更新后的设备可变标识。若判断单元440判断不需要进行更新,则发送单元460向移动终端发送账户登录许可指令和所述设备可变标识。

在可替换的实施例中,可在更新单元450对所述设备可变标识进行更新之后,存储单元420可利用更新后的设备可变标识来更新用户账户数据库。

在可替代的实施例中,服务器可不包括判断单元,也就是说,服务器仅包括接收单元、存储单元、查找单元、更新单元和发送单元。该服务器在查找单元从用户账户数据库中查找与所述设备可变标识对应的用户账户信息之后,无需判断直接通过更新单元对设备可变标识进行更新。

图5示出了根据本发明的示例性实施例的移动终端的框图。根据示例性实施例的账户登录设备(在前述中的“移动终端”)包括发送单元510和接收单元520。

发送单元510将登录请求发送到服务器,其中,所述登录请求包括设备可变标识。接收单元520从服务器接收经由服务器处理后的设备可变标识和账户登录许可指令。

根据示例性实施例,经由服务器处理后的设备可变标识是指服务器判断是否需要对所述设备可变标识进行更新,在需要更新的情况下的更新后的设备可变标识以及在不需要更新的情况下的所述设备可变标识。

本发明的账户登录方法、设备和服务器通过在自动登录过程中利用设备可变标识取代设备标识并根据条件对设备可变标识进行更新,从而避免了设备标识长期不变地暴露在移动终端,提高了安全性,在此基础上,还可在自动登录过程中同时利用设备可变标识和用户名两者,从而使得用户可使用同一移动终端登录到期望的账户中,提高用户体验。更进一步地,可根据登录帐号对应的应用的类型不同地设置设备可变标识的有效期,使得不同应用的设备可变标识的有效期不同,从而提供个性化的服务。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中特定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中特定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中特定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1