一种登录方法及终端设备及通信系统

阅读: 评论:0

著录项
  • CN201510966911.4
  • 20151218
  • CN105516163A
  • 20160420
  • 网易(杭州)网络有限公司
  • 陈轩;林育宇
  • 浙江省杭州市滨江区长河街道网商路599号4幢7层
  • 浙江(33)
  • 广州三环专利代理有限公司
  • 麦小婵;郝传鑫
摘要
本发明公开了一种登录方法及终端设备及通信系统,该方法包括:软件客户端向软件服务器建立长连接,并申请安全启动参数;软件客户端通过系统客户端向系统服务器申请临时凭证,该申请包含安全启动参数;系统服务器生成临时凭证;软件服务器接收到临时凭证后,根据长连接的连接信息,查询第一数据库获取第一安全启动参数,并将临时凭证和第一安全启动参数发送给系统服务器;系统服务器根据临时凭证查询第二数据库,获取第二安全启动参数和登录凭证,在确认两个参数相一致时,返回登录凭证;软件服务器将登录凭证发送给账户服务器进行验证,验证成功后接受软件客户端的登录。本发明为用户提供安全的自动登录功能,增强用户体验,保证了安全性。
权利要求

1.一种登录方法,其特征在于,包括:

软件客户端与系统客户端建立本地连接通道,并通过所述本地连接通道接 收所述系统客户端提供的账户信息;其中,所述软件客户端和所述系统客户端 配置在同一个终端设备中,且所述系统客户端已使用所述账户信息成功登录到 系统服务器,所述系统服务器中存储有与所述账户信息对应的登录凭证;

所述软件客户端向软件服务器发送登录请求,与所述软件服务器建立长连 接通道;其中,所述登录请求包含所述账户信息;

所述软件客户端通过所述长连接通道接收所述软件服务器发送的安全启动 参数;其中,所述软件服务器中配置有第一数据库,用于存储所述安全启动参 数、所述账户信息和所述长连接通道的连接信息三者的关联信息;

所述软件客户端向所述系统客户端发送临时凭证申请请求;其中,所述临 时凭证申请请求包含所述安全启动参数;

所述系统客户端将所述临时凭证申请请求转发给所述系统服务器,以请求 所述系统服务器生成临时凭证,并将所述临时凭证返回给所述系统客户端;其 中,所述系统服务器中配置有第二数据库,用于存储所述临时凭证、所述安全 启动参数和所述登录凭证三者的关联信息;

所述软件客户端接收所述系统客户端转发的所述临时凭证,并通过所述长 连接通道将所述临时凭证发送给所述软件服务器,以使所述软件服务器根据所 述长连接通道的连接信息,查询所述第一数据库,获取第一安全启动参数,并 向所述系统服务器发送登录凭证申请请求;其中,所述登录凭证申请请求包含 所述第一安全启动参数和所述临时凭证,从而使所述系统服务器根据所述临时 凭证查询所述第二数据库,获取第二安全启动参数,并在确认所述第一安全启 动参数和所述第二安全启动参数相一致时,将所述临时凭证所关联的登录凭证 发送给所述软件服务器,以使所述软件服务器能够使用所述关联的登录凭证向 账户服务器请求登录认证;

所述软件客户端在所述关联的登录凭证通过认证后,使用所述账户信息登 录到所述软件服务器。

2.根据权利要求1所述的登录方法,其特征在于,所述软件客户端与系统 客户端建立本地连接通道,并通过所述本地连接通道接收所述系统客户端提供 的账户信息,具体包括:

所述软件客户端接收所述系统客户端发送的本地连接通道的连接信息;

所述软件客户端根据所述本地连接通道的连接信息,向所述系统客户端发 送握手认证信息,以请求所述系统客户端进行握手认证;

所述软件客户端在被所述系统客户端认证合法后,与所述系统客户端建立 所述本地连接通道,并通过所述本地连接通道接收所述系统客户端提供的账户 信息。

3.根据权利要求1或2所述的登录方法,其特征在于,所述本地连接通道 为本地端口通道、管道命名连接通道、消息对列连接通道或内存共享连接通道。

4.根据权利要求1所述的登录方法,其特征在于,在所述软件客户端与系 统客户端建立本地连接通道之前,还包括:

所述系统客户端将所述账户信息发送给账户服务器,以请求所述账户服务 器验证所述账户信息,并在验证成功后生成与所述账户信息对应的登录凭证;

所述系统客户端接收所述登录凭证,并保存到内存中;

所述系统客户端将所述登录凭证转发给所述系统服务器,以使所述系统服 务器向所述账户服务器请求验证所述登录凭证的合法性,并在所述登录凭证验 证通过后,存储所述登录凭证;

所述系统客户端接收所述系统服务器返回的登录凭证验证合法的信息后, 从内存中删除所述登录凭证,并使用所述账户信息登录到所述系统服务器。

5.根据权利要求4所述的登录方法,其特征在于,在所述系统客户端使用 所述账户信息登录到所述系统服务器之后,还包括:

所述系统客户端还接收所述系统服务器发送的登录信息,并使用本系统客 户端的硬件特征信息对所述登录信息进行加密并存储;

所述系统客户端需要进行自动登录认证时,将所述登录信息发送给所述系 统服务器,以使所述系统服务器在验证所述登录信息合法后,接受所述系统客 户端使用所述用户账户进行自动登录。

6.根据权利要求1所述的登录方法,其特征在于,所述安全启动参数由所 述软件服务器根据本软件服务器的标识和本软件服务器的一个自增变量,按照 预设的生成规则生成。

7.根据权利要求1所述的登录方法,其特征在于,所述临时凭证为32位 可读随机字符串,且在有效时间内仅能认证一次;

其中,所述有效时间短于所述长连接通道的连接时间。

8.一种终端设备,其特征在于,所述终端设备中配置有软件客户端和系统 客户端;

所述软件客户端包括:

本地连接构建单元,用于与所述系统客户端建立本地连接通道,并通过所 述本地连接通道接收所述系统客户端提供的账户信息;其中,所述系统客户端 已使用所述账户信息成功登录到系统服务器,所述系统服务器中存储有与所述 账户信息对应的登录凭证;

长连接构建单元,用于向软件服务器发送登录请求,与所述软件服务器建 立长连接通道;其中,所述登录请求包含所述账户信息;

第一接收单元,用于通过所述长连接通道接收所述软件服务器发送的安全 启动参数;其中,所述软件服务器中配置有第一数据库,用于存储所述安全启 动参数、所述账户信息和所述长连接通道的连接信息三者的关联信息;

和,第一发送单元,用于向所述系统客户端发送临时凭证申请请求;其中, 所述临时凭证申请请求包含所述安全启动参数;

所述系统客户端包括:第二发送单元;

所述第二发送单元用于将所述临时凭证申请请求转发给所述系统服务器, 以请求所述系统服务器生成临时凭证,并将所述临时凭证返回给所述系统客户 端;其中,所述系统服务器中配置有第二数据库,用于存储所述临时凭证、所 述安全启动参数和所述登录凭证三者的关联信息;

所述软件客户端还包括:

第二接收单元,用于接收所述系统客户端转发的所述临时凭证,并通过所 述长连接通道将所述临时凭证发送给所述软件服务器,以使所述软件服务器根 据所述长连接通道的连接信息,查询所述第一数据库,获取第一安全启动参数, 并向所述系统服务器发送登录凭证申请请求;其中,所述登录凭证申请请求包 含所述第一安全启动参数和所述临时凭证,从而使所述系统服务器根据所述临 时凭证查询所述第二数据库,获取第二安全启动参数,并在确认所述第一安全 启动参数和所述第二安全启动参数相一致时,将所述临时凭证所关联的登录凭 证发送给所述软件服务器,以使所述软件服务器能够使用所述关联的登录凭证 向账户服务器请求登录认证;

和,第一登录单元,用于在所述关联的登录凭证通过认证后,使用所述账 户信息登录到所述软件服务器。

9.根据权利要求8所述的终端设备,其特征在于,所述本地连接构建单元 包括:

第一接收子单元,用于接收所述系统客户端发送的本地连接通道的连接信 息;

第一发送子单元,用于根据所述本地连接通道的连接信息,向所述系统客 户端发送握手认证信息,以请求所述系统客户端进行握手认证;

和,本地连接构建子单元,用于在被所述系统客户端认证合法后,与所述 系统客户端建立所述本地连接通道,并通过所述本地连接通道接收所述系统客 户端提供的账户信息。

10.根据权利要求8或9所述的终端设备,其特征在于,所述本地连接通 道为本地端口通道、管道命名连接通道、消息对列连接通道或内存共享连接通 道。

11.根据权利要求8所述的终端设备,其特征在于,所述系统客户端还包 括:

第三发送单元,用于在所述本地连接通道建立之前,将所述账户信息发送 给账户服务器,以请求所述账户服务器验证所述账户信息,并在验证成功后生 成与所述账户信息对应的登录凭证;

第三接收单元,用于接收所述登录凭证,并保存到内存中;

第四发送单元,用于将所述登录凭证转发给所述系统服务器,以使所述系 统服务器向所述账户服务器请求验证所述登录凭证的合法性,并在所述登录凭 证验证通过后,存储所述登录凭证;

和,第二登录单元,用于接收所述系统服务器返回的登录凭证验证合法的 信息后,从内存中删除所述登录凭证,并使用所述账户信息登录到所述系统服 务器。

12.根据权利要求11所述终端设备,其特征在于,所述系统客户端还包括:

第四接收单元,用于在所述第二登录单元使用所述账户信息登录到所述系 统服务器之后,接收所述系统服务器发送的登录信息,并使用本系统客户端的 硬件特征信息对所述登录信息进行加密并存储;

和,第三登录单元,用于在需要进行自动登录认证时,将所述登录信息发 送给所述系统服务器,以使所述系统服务器在验证所述登录信息合法后,接受 所述系统客户端使用所述用户账户进行自动登录。

13.根据权利要求8所述的终端设备,其特征在于,所述安全启动参数由 所述软件服务器根据本软件服务器的标识和本软件服务器的一个自增变量,按 照预设的生成规则生成。

14.根据权利要求8所述的终端设备,其特征在于,所述临时凭证为32位 可读随机字符串,且在有效时间内仅能认证一次;

其中,所述有效时间短于所述长连接通道的连接时间。

15.一种通信系统,其特征在于,包括账户服务器、系统服务器、软件服 务器和如权利8至14任一项所述的终端设备。

说明书
技术领域

本发明涉及通信技术领域,尤其涉及一种登录方法终端设备及通信系统。

随着移动互联网技术的发展,一个互联网公司旗下可能有多种软件应用, 所有的软件应用共享同一套账号体系。但用户每登录应用软件应用都需要分别 输入一遍对应的用户密码,输入操作次数过多,流程过于繁琐,用户交互体验 差。

目前,部分软件应用提供了用户名密码的记忆功能,用户在第一次登录时 输入用户名和密码后,软件应用会将登录信息保存在本地,随后用户就不用再 次输入用户名和密码。另外,某些网站如新浪、腾讯,为解决类似问题提供了 第三方登录功能,通过回调url(统一资源定位符,UniformResourceLocator, 简称url)及相关参数传递其登录信息,使得用户在其他网站上也可以使用新浪 或腾讯的账号登录。

发明人在实施本发明的过程中,发现上述现有的登录方法存在如下缺点: 将登录信息保存在本地的方法容易被恶意软件应用窃取,从而导致账户信息可 以被非法使用,降低账户信息的安全性。而通过回调url及相关参数传递其登录 信息的方法依赖于浏览器,无法应用于非网站场景。可见,现有的同一账号系 统的登录方法使用户操作繁琐、账户安全性较低。

为了克服现有技术存在的缺点,本发明实施例提供一种登录方法及终端设 备及通信系统,为用户提供安全的自动登录功能,增强用户体验,保证了安全 性。

第一方面,本发明实施例提供一种登录方法,包括:

软件客户端与系统客户端建立本地连接通道,并通过所述本地连接通道接 收所述系统客户端提供的账户信息;其中,所述软件客户端和所述系统客户端 配置在同一个终端设备中,且所述系统客户端已使用所述账户信息成功登录到 系统服务器,所述系统服务器中存储有与所述账户信息对应的登录凭证;

所述软件客户端向软件服务器发送登录请求,与所述软件服务器建立长连 接通道;其中,所述登录请求包含所述账户信息;

所述软件客户端通过所述长连接通道接收所述软件服务器发送的安全启动 参数;其中,所述软件服务器中配置有第一数据库,用于存储所述安全启动参 数、所述账户信息和所述长连接通道的连接信息三者的关联信息;

所述软件客户端向所述系统客户端发送临时凭证申请请求;其中,所述临 时凭证申请请求包含所述安全启动参数;

所述系统客户端将所述临时凭证申请请求转发给所述系统服务器,以请求 所述系统服务器生成临时凭证,并将所述临时凭证返回给所述系统客户端;其 中,所述系统服务器中配置有第二数据库,用于存储所述临时凭证、所述安全 启动参数和所述登录凭证三者的关联信息;

所述软件客户端接收所述系统客户端转发的所述临时凭证,并通过所述长 连接通道将所述临时凭证发送给所述软件服务器,以使所述软件服务器根据所 述长连接通道的连接信息,查询所述第一数据库,获取第一安全启动参数,并 向所述系统服务器发送登录凭证申请请求;其中,所述登录凭证申请请求包含 所述第一安全启动参数和所述临时凭证,从而使所述系统服务器根据所述临时 凭证查询所述第二数据库,获取第二安全启动参数,并在确认所述第一安全启 动参数和所述第二安全启动参数相一致时,将所述临时凭证所关联的登录凭证 发送给所述软件服务器,以使所述软件服务器能够使用所述关联的登录凭证向 账户服务器请求登录认证;

所述软件客户端在所述关联的登录凭证通过认证后,使用所述账户信息登 录到所述软件服务器。

进一步的,所述软件客户端与系统客户端建立本地连接通道,并通过所述 本地连接通道接收所述系统客户端提供的账户信息,具体包括:

所述软件客户端接收所述系统客户端发送的本地连接通道的连接信息;

所述软件客户端根据所述本地连接通道的连接信息,向所述系统客户端发 送握手认证信息,以请求所述系统客户端进行握手认证;

所述软件客户端在被所述系统客户端认证合法后,与所述系统客户端建立 所述本地连接通道,并通过所述本地连接通道接收所述系统客户端提供的账户 信息。

进一步的,所述本地连接通道为本地端口通道、管道命名连接通道、消息 对列连接通道或内存共享连接通道。

进一步的,在所述软件客户端与系统客户端建立本地连接通道之前,还包 括:

所述系统客户端将所述账户信息发送给账户服务器,以请求所述账户服务 器验证所述账户信息,并在验证成功后生成与所述账户信息对应的登录凭证;

所述系统客户端接收所述登录凭证,并保存到内存中;

所述系统客户端将所述登录凭证转发给所述系统服务器,以使所述系统服 务器向所述账户服务器请求验证所述登录凭证的合法性,并在所述登录凭证验 证通过后,存储所述登录凭证;

所述系统客户端接收所述系统服务器返回的登录凭证验证合法的信息后, 从内存中删除所述登录凭证,并使用所述账户信息登录到所述系统服务器。

进一步的,在所述系统客户端使用所述账户信息登录到所述系统服务器之 后,还包括:

所述系统客户端还接收所述系统服务器发送的登录信息,并使用本系统客 户端的硬件特征信息对所述登录信息进行加密并存储;

所述系统客户端需要进行自动登录认证时,将所述登录信息发送给所述系 统服务器,以使所述系统服务器在验证所述登录信息合法后,接受所述系统客 户端使用所述用户账户进行自动登录。

进一步的,所述安全启动参数由所述软件服务器根据本软件服务器的标识 和本软件服务器的一个自增变量,按照预设的生成规则生成。

进一步的,所述临时凭证为32位可读随机字符串,且在有效时间内仅能认 证一次;

其中,所述有效时间短于所述长连接通道的连接时间。

第二方面,本发明实施例提供了一种终端设备,所述终端设备中配置有软 件客户端和系统客户端;

所述软件客户端包括:

本地连接构建单元,用于与所述系统客户端建立本地连接通道,并通过所 述本地连接通道接收所述系统客户端提供的账户信息;其中,所述系统客户端 已使用所述账户信息成功登录到系统服务器,所述系统服务器中存储有与所述 账户信息对应的登录凭证;

长连接构建单元,用于向软件服务器发送登录请求,与所述软件服务器建 立长连接通道;其中,所述登录请求包含所述账户信息;

第一接收单元,用于通过所述长连接通道接收所述软件服务器发送的安全 启动参数;其中,所述软件服务器中配置有第一数据库,用于存储所述安全启 动参数、所述账户信息和所述长连接通道的连接信息三者的关联信息;

和,第一发送单元,用于向所述系统客户端发送临时凭证申请请求;其中, 所述临时凭证申请请求包含所述安全启动参数;

所述系统客户端包括:第二发送单元;

所述第二发送单元用于将所述临时凭证申请请求转发给所述系统服务器, 以请求所述系统服务器生成临时凭证,并将所述临时凭证返回给所述系统客户 端;其中,所述系统服务器中配置有第二数据库,用于存储所述临时凭证、所 述安全启动参数和所述登录凭证三者的关联信息;

所述软件客户端还包括:

第二接收单元,用于接收所述系统客户端转发的所述临时凭证,并通过所 述长连接通道将所述临时凭证发送给所述软件服务器,以使所述软件服务器根 据所述长连接通道的连接信息,查询所述第一数据库,获取第一安全启动参数, 并向所述系统服务器发送登录凭证申请请求;其中,所述登录凭证申请请求包 含所述第一安全启动参数和所述临时凭证,从而使所述系统服务器根据所述临 时凭证查询所述第二数据库,获取第二安全启动参数,并在确认所述第一安全 启动参数和所述第二安全启动参数相一致时,将所述临时凭证所关联的登录凭 证发送给所述软件服务器,以使所述软件服务器能够使用所述关联的登录凭证 向账户服务器请求登录认证;

和,第一登录单元,用于在所述关联的登录凭证通过认证后,使用所述账 户信息登录到所述软件服务器。

进一步的,所述本地连接构建单元包括:

第一接收子单元,用于接收所述系统客户端发送的本地连接通道的连接信 息;

第一发送子单元,用于根据所述本地连接通道的连接信息,向所述系统客 户端发送握手认证信息,以请求所述系统客户端进行握手认证;

和,本地连接构建子单元,用于在被所述系统客户端认证合法后,与所述 系统客户端建立所述本地连接通道,并通过所述本地连接通道接收所述系统客 户端提供的账户信息。

进一步的,所述本地连接通道为本地端口通道、管道命名连接通道、消息 对列连接通道或内存共享连接通道。

进一步的,所述系统客户端还包括:

第三发送单元,用于在所述本地连接通道建立之前,将所述账户信息发送 给账户服务器,以请求所述账户服务器验证所述账户信息,并在验证成功后生 成与所述账户信息对应的登录凭证;

第三接收单元,用于接收所述登录凭证,并保存到内存中;

第四发送单元,用于将所述登录凭证转发给所述系统服务器,以使所述系 统服务器向所述账户服务器请求验证所述登录凭证的合法性,并在所述登录凭 证验证通过后,存储所述登录凭证;

和,第二登录单元,用于接收所述系统服务器返回的登录凭证验证合法的 信息后,从内存中删除所述登录凭证,并使用所述账户信息登录到所述系统服 务器。

进一步的,所述系统客户端还包括:

第四接收单元,用于在所述第二登录单元使用所述账户信息登录到所述系 统服务器之后,接收所述系统服务器发送的登录信息,并使用本系统客户端的 硬件特征信息对所述登录信息进行加密并存储;

和,第三登录单元,用于在需要进行自动登录认证时,将所述登录信息发 送给所述系统服务器,以使所述系统服务器在验证所述登录信息合法后,接受 所述系统客户端使用所述用户账户进行自动登录。

进一步的,所述安全启动参数由所述软件服务器根据本软件服务器的标识 和本软件服务器的一个自增变量,按照预设的生成规则生成。

进一步的,所述临时凭证为32位可读随机字符串,且在有效时间内仅能认 证一次;

其中,所述有效时间短于所述长连接通道的连接时间。

第三方面,本发明实施例提供了一种通信系统,包括账户服务器、系统服 务器、软件服务器和如第二方面任一项所述的终端设备。

可见,实施本发明实施例,具有如下有益效果:

本发明实施例提供的登录方法及终端设备及通信系统,在系统客户端使用 账户信息成功登录到系统器后,软件客户端与系统客户端建立本地连接通道, 获取该账户信息并开始登录流程。软件客户端与软件服务器建立长连接通道, 并请求软件服务器生成安全启动参数。软件服务器配置第一数据库以存储安全 启动参数、账户信息和长连接通道的连接信息三者的关联信息,并返回生成的 安全启动参数。软件客户端通过系统客户端的转发,将该安全启动参数发送给 系统服务器,并请求系统服务器生成临时凭证。系统服务器配置第二数据库以 存储临时凭证、安全启动参数和该账户信息对应的登录凭证三者的关联关系。 软件客户端接收返回的临时凭证后,通过长连接通道发送给软件服务器,软件 服务器根据长连接通信的连接信息,查询第一数据库,获取第一安全启动参数, 并将第一安全启动参数和临时凭证发送给系统服务器。系统服务器确认该临时 凭证和第一安全启动参数与第二数据库存储的数据相一致后,将登录凭证发送 给软件服务器,以使软件服务器能够使用登录凭证向账户服务器请求登录认证。 软件客户端在登录凭证通过认证后,使用该账户信息登录到软件服务器。相比 于现有技术需要依赖浏览器或需要多次输入账号密码,本发明为同一账户体系 的多客户端登录提供安全的自动登录,减少了用户操作,提高了安全性。

进一步的,本发明的软件客户端与系统客户端在建立本地连接通道时,先 进行握手认证,握手认证成功后才开始登录流程,保证了软件客户端的合法性, 防止恶意程序伪装成合法客户端,进一步提高登录的安全性。

进一步的,本发明的系统客户端第一次登录到系统服务器时,由账户服务 器验证账户信息的合法性,并发送登录凭证给系统客户端,由系统客户端转发 给系统服务器存储。然后系统客户端删除该登录凭证,在后续的登录流程中, 系统客户端和软件客户端均不会接收到该登录凭证,防止登录凭证在客户端上 被盗用。而且系统客户端存储由系统服务器生成并返回的登录信息,使用本机 的硬件特征信息进行加密,在以后的登录过程通过该登录信息完成自动登录, 不仅保证了自动登录的便捷性,而且提高了登录的安全性。

图1是本发明提供的登录方法的一种实施例的流程示意图;

图2是本发明提供的登录方法的另一种实施例的流程示意图;

图3是本发明提供的登录方法的又一种实施例的流程示意图;

图4是本发明提供的终端设备的一种实施例的结构示意图;

图5是本发明提供的终端设备的另一种实施例的结构示意图;

图6是本发明提供的终端设备的又一种实施例的结构示意图;

图7是本发明提供的通信系统的一种实施例的结构示意图;

图8是本发明提供的通信系统进行信息交互的步骤S1至步骤S2的流程示 意图;

图9是本发明提供的通信系统进行信息交互的步骤S3至步骤S4的流程示 意图;

图10是本发明提供的通信系统进行信息交互的步骤S5至步骤S6的流程示 意图。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造 性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例1

参见图1,是本发明提供的登录方法的一种实施例的流程示意图。该登录方 法适用于终端设备,该终端设备配置有软件客户端和系统客户端,其主要包括 步骤101至步骤107,具体如下:

步骤101:软件客户端与系统客户端建立本地连接通道,并通过本地连接通 道接收系统客户端提供的账户信息;其中,软件客户端和系统客户端配置在同 一个终端设备中,且系统客户端已使用该账户信息成功登录到系统服务器,系 统服务器中存储有与该账户信息对应的登录凭证。

在本实施例中,各客户端同享同一套账户体系,并通过账户服务器管理各 个账户。账户服务器可验证各账户的账户信息是否有效,并为各账户生成相应 的登录凭证。登录凭证可以是用户密码、令牌等任何可以用于登录的数据。

在本实施例中,软件客户端与系统客户端建立本连接通道,并通过本地连 接通道接收系统客户端提供的账户信息,具体为:软件客户端接收系统客户端 发送的本地连接通道的连接信息;软件客户端根据本地连接通道的连接信息, 向系统客户端发送握手认证信息,以请求系统客户端进行握手认证;软件客户 端在被系统客户端认证合法后,与系统客户端建立本地连接通道,并通过本地 连接通道接收系统客户端提供的账户信息。

在本实施例中,本地连接通道为本地端口通道、管道命名连接通道、消息 对列连接通道或内存共享连接通道。本实施例以本地端口通道进行举例说明本 地连接通道的建立流程。系统客户端将随机选择的本地端口号发送给软件客户 端,以通知软件客户端所需要连接端口,从而保障恶意程序无法通过固定端口 连接到系统客户端。软件客户端连接到该本地端口,通过加密方式向系统客户 端发送握手认证信息,以请求系统客户端验证其合法身份,防止恶意程序在知 道本地端口时伪装成软件客户端。如果握手失败,则系统客户端会自动断开连 接,终止登录流程。在握手认证通过后,软件客户端与系统客户端建立起本地 端口连接,两个客户端的所有通信数据均在加密后,通过该本地端口进行通信, 从而保障软件客户端的进程即使在连接过程被恶意替换也不能伪装成合法客户 端接收系统客户端发送的命令和数据。

步骤102:软件客户端向软件服务器发送登录请求,与软件服务器建立长连 接通道;其中,登录请求包含该账户信息。

在本实施例中,软件客户端与软件服务之间的长连接通道建立成功后,软 件服务器将锁定该账户信息,该账户信息的后续登录过程的数据交互需通过该 长连接通道传输才为合法数据,保证了登录的安全性。

步骤103:软件客户端通过长连接通道接收软件服务器发送的安全启动参 数;其中,软件服务器中配置有第一数据库,用于存储安全启动参数、账户信 息和长连接通道的连接信息三者的关联信息。

在本实施例中,长连接通道建立后,软件客户端向软件服务器发送安全启 动参数的生成请求。软件服务器在接收该生成请求后,根据本软件服务器的标 识和本软件服务器的一个自增变量,按照预设的生成规则生成安全启动参数, 以保证该安全启动参数的全局唯一性。譬如软件服务器的标识为A,自增变量 为1001,可将安全启动参数设定为A1001,由于自增变量会不断增加,因此能 保证安全启动参数的全局唯一性。

在本实施例中,软件服务器中配置有第一数据库,用于存储安全启动参数、 账户信息和长连接通道的连接信息三者的关联信息。其中,账户信息与长连接 通道的连接信息一一关联映射,长连接通道的连接信息与该安全启动参数一一 关联映射。

步骤104:软件客户端向系统客户端发送临时凭证申请请求;其中,临时凭 证申请请求包含安全启动参数。

在本实施例中,软件客户端接收到安全启动参数后,将其作为参数向系统 客户端发送临时凭证申请请求。该临时凭证申请请求可以但不限于还包括软件 客户端的软件标识。

步骤105:系统客户端将临时凭证申请请求转发给系统服务器,以请求系统 服务器生成临时凭证,并将临时凭证返回给系统客户端;其中,系统服务器中 配置有第二数据库,用于存储临时凭证、安全启动参数和登录凭证三者的关联 信息。

在本实施例中,生成的临时凭证为一个32位可读随机字符串,且在有效时 间内仅能认证一次。该临时凭证设置有有效时间,该有效时间短于长连接通道 的连接时间。当长连接通道断开或不再使用这一长连接通道时,临时凭证也将 失效。另外,其他软件客户端使用该临时凭证也会使其失效。

在本实施中,系统服务器配置有第二数据库,用于存储临时凭证、安全启 动参数和登录凭证三者的关联信息。临时凭证分别与安全启动参数、登录凭证 一一映射关联,确保临时凭证的安全性。

步骤106:软件客户端接收系统客户端转发的临时凭证,并通过长连接通道 将该临时凭证发送给软件服务器,以使软件服务器根据长连接通道的连接信息, 查询第一数据库,获取第一安全启动参数,并向系统服务器发送登录凭证申请 请求;其中,登录凭证申请请求包含第一安全启动参数和临时凭证,从而使系 统服务器根据该临时凭证查询第二数据库,获取第二安全启动参数,并在确认 第一安全启动参数和第二安全启动参数相一致时,将该临时凭证所关联的登录 凭证发送给软件服务器,以使软件服务器能够使用关联的登录凭证向账户服务 器请求登录认证。

在本实施例中,软件客户端通过本地连接通道获取该临时凭证,并存储在 内存中,然后将该临时凭证转发给软件服务器。软件服务器通过长连接通道接 收该临时凭证,并根据长连接通道的连接信息查询第一数据库,获取第一安全 启动参数。因此,只有保持该长连接通道,软件服务器才能获取正确的安全启 动参数,其他非法的连接通道并不能完成登录流程。

在本实施例中,软件服务器将获取的第一安全启动参数和临时凭证作为参 数向系统服务器发送登录凭证申请请求。系统服务器会同时检验临时凭证以及 第一安全启动参数的有效性,该临时凭证只能被申请的软件客户端所使用,即 使被恶意拦截也将失效。系统服务器根据临时凭证查询第二数据库,获取第二 安全启动参数和关联的登录凭证,在比较并确认第一安全启动参数和第二安全 启动参数相一致时,将登录凭证返回给软件服务器。

在本实施例中,系统服务器对软件服务器的通讯接口进行限制,只有可信 的软件服务器才能访问,保证了用户信息不会泄露给恶意的第三方。而且服务 器的通讯环境均掌握在服务商手上,可通过防火墙或加密隧道等技术进一步保 证用户凭证的传输安全性。

步骤107:软件客户端在关联的登录凭证通过认证后,使用账户信息登录到 软件服务器。

在本实施例中,软件服务器获取登录凭证后,与账户服务器进行通信,以 请求验证该登录凭证的有效性。由于账户系统存储各个账户的登录凭证,查询 并比对后将验证结果返回给软件服务器。如果验证通过,则软件服务器接受软 件客户端使用该账户信息进行登录,否则,结束登录流程。

另外,在本发明中软件客户端可支持回退兼容登录模式。如果上述步骤执 行失败或在有效重试失败后,软件客户端可自行回退到原有的登录界面,由用 户手动输入账户信息来进行登录,从而保证了系统客户端或系统服务器出现问 题时也不会影响到软件客户端的正常登录。

作为本实施例的一种举例,参见图2,图2是本发明提供的登录方法的另一 种实施例的流程示意图。图2与图1的区别在于,在步骤101之前还包括步骤 201~204,其具体步骤如下:

步骤201:系统客户端将账户信息发送给账户服务器,以请求账户服务器验 证账户信息,并在验证成功后生成与该账户信息对应的登录凭证。

步骤202:系统客户端接收该登录凭证,并保存到内存中。

步骤203:系统客户端将登录凭证转发给系统服务器,以使系统服务器向账 户服务器请求验证登录凭证的合法性,并在登录凭证验证通过后,存储该登录 凭证。

步骤204:系统客户端接收系统服务器返回的登录凭证验证合法的信息后, 从内存中删除该登录凭证,并使用账户信息登录到系统服务器。

在本举例中,系统客户端通过https方式与系统服务器、账户服务器进行通 讯。系统服务器将系统客户端发送的登录凭证发送给账户服务器,以请求账户 服务器验证其合法性,并在验证通过后存储该登录凭证。系统客户端在系统服 务器返回登录凭证验证合法的消息后,删除该登录凭证,并使用账户信息登录 到系统服务器。登录凭证只保存在系统服务器和账户服务器上,保证登录凭证 不会由于软件客户端或系统客户端的环境问题导致泄露,提高了登录的安全性。

在本举例中,系统服务器与账户服务器将通过安全的传输通道进行通信, 如https方式或限制访问ip方式,从而保障系统服务器与账户服务器对登录凭证 认证的安全性。

在本举例中,登录凭证的有效期可以是永不过期或者有过期限制,如30天 后失效等。对于永不过期的情况,并不影响登录认证过程,而对于有期限的登 录凭证,系统服务器会一直保存登录凭证,直到被新的凭证替换,一旦登录凭 证过期,系统服务器将自动检查到此情况,然后通知系统客户端登录凭证过期, 让用户再次手动进行登录认证操作,即返回步骤201。

作为本实施例的一种举例,参见图3,图3是本发明提供的登录方法的又一 种实施例的流程示意图。图3与图2的区别在于,在步骤204之后,还包括步 骤301~302,其步骤具体如下:

步骤301:系统客户端还接收系统服务器发送的登录信息,并使用本系统客 户端的硬件特征信息对登录信息进行加密并存储;

步骤302系统客户端需要进行自动登录认证时,将登录信息发送给系统服 务器,以使系统服务器在验证登录信息合法后,接受系统客户端使用用户账户 进行自动登录。

在本举例中,系统服务器将随机生成一个登录信息并返回给系统客户端, 系统客户端使用本客户端的硬件特征信息对登录信息进行加密并存储。在系统 客户端以后的自动登录过程中,通过该登录信息来进行认证,无需用户再次输 入用户账号密码,减少用户的操作。而且在系统客户端执行自动登录时,硬件 特征信息不符合将导致系统客户端拒绝进行登录,只有硬件特征信息符合时, 对应系统客户端才能正确读取登录信息,并将登录信息放入内存。在完成自动 登录后立即消除该登录信息,保障本地存储的登录信息即使被恶意软件窃取也 不能在其他设备上进行账户登录,有效防止登录信息被窃取而使得用户账户被 窃取的问题。

由上可见,本发明实施例提供的登录方法,在系统客户端使用账户信息成 功登录到系统器后,软件客户端与系统客户端建立本地连接通道,获取该账户 信息并开始登录流程。软件客户端与软件服务器建立长连接通道,并请求软件 服务器生成安全启动参数。软件服务器配置第一数据库以存储安全启动参数、 账户信息和长连接通道的连接信息三者的关联信息,并返回生成的安全启动参 数。软件客户端通过系统客户端的转发,将该安全启动参数发送给系统服务器, 并请求系统服务器生成临时凭证。系统服务器配置第二数据库以存储临时凭证、 安全启动参数和该账户信息对应的登录凭证三者的关联关系。软件客户端接收 返回的临时凭证后,通过长连接通道发送给软件服务器,软件服务器根据长连 接通信的连接信息,查询第一数据库,获取第一安全启动参数,并将第一安全 启动参数和临时凭证发送给系统服务器。系统服务器确认该临时凭证和第一安 全启动参数与第二数据库存储的数据相一致后,将登录凭证发送给软件服务器, 以使软件服务器能够使用登录凭证向账户服务器请求登录认证。软件客户端在 登录凭证通过认证后,使用该账户信息登录到软件服务器。相比于现有技术需 要依赖浏览器或需要多次输入账号密码,本发明为同一账户体系的多客户端登 录提供安全的自动登录,减少了用户操作,提高了安全性。

进一步的,本发明的软件客户端与系统客户端在建立本地连接通道时,先 进行握手认证,握手认证成功后才开始登录流程,保证了软件客户端的合法性, 防止恶意程序伪装成合法客户端,进一步提高登录的安全性。

进一步的,本发明的系统客户端第一次登录到系统服务器时,由账户服务 器验证账户信息的合法性,并发送登录凭证给系统客户端,由系统客户端转发 给系统服务器存储。然后系统客户端删除该登录凭证,在后续的登录流程中, 系统客户端和软件客户端均不会接收到该登录凭证,防止登录凭证在客户端上 被盗用。而且系统客户端存储由系统服务器生成并返回的登录信息,使用本机 的硬件特征信息进行加密,在以后的登录过程通过该登录信息完成自动登录, 不仅保证了自动登录的便捷性,而且提高了登录的安全性。

实施例2

参见图4,图4是本发明提供的终端设备的一种实施例的结构示意图,如图 4所示,该终端设备中配置有软件客户端1和系统客户端2。软件客户端1包括: 本地连接构建单元11、长连接构建单元12、第一接收单元13、第一发送单元 14、第二接收单元15、第一登录单元16。系统客户端2包括:第二发送单元21。

本地连接构建单元11,用于与系统客户端2建立本地连接通道,并通过本 地连接通道接收系统客户端2提供的账户信息;其中,系统客户端2已使用该 账户信息成功登录到系统服务器,系统服务器中存储有与账户信息对应的登录 凭证。

长连接构建单元12,用于向软件服务器发送登录请求,与软件服务器建立 长连接通道;其中,登录请求包含该账户信息。

第一接收单元13,用于通过长连接通道接收软件服务器发送的安全启动参 数;其中,软件服务器中配置有第一数据库,用于存储安全启动参数、账户信 息和长连接通道的连接信息三者的关联信息。

第一发送单元14,用于向系统客户端2发送临时凭证申请请求;其中,临 时凭证申请请求包含该安全启动参数。

第二发送单元21,用于将临时凭证申请请求转发给系统服务器,以请求系 统服务器生成临时凭证,并将临时凭证返回给系统客户端2;其中,系统服务器 中配置有第二数据库,用于存储临时凭证、安全启动参数和登录凭证三者的关 联信息。

第二接收单元15,用于接收系统客户端2转发的临时凭证,并通过长连接 通道将临时凭证发送给软件服务器,以使软件服务器根据长连接通道的连接信 息,查询第一数据库,获取第一安全启动参数,并向系统服务器发送登录凭证 申请请求;其中,登录凭证申请请求包含第一安全启动参数和临时凭证,从而 使系统服务器根据临时凭证查询第二数据库,获取第二安全启动参数,并在确 认第一安全启动参数和第二安全启动参数相一致时,将临时凭证所关联的登录 凭证发送给软件服务器,以使软件服务器能够使用关联的登录凭证向账户服务 器请求登录认证;

第一登录单元16,用于在关联的登录凭证通过认证后,使用账户信息登录 到软件服务器。

在本实施例中,本地连接构建单元11包括:第一接收子单元、第一发送子 单元和本地连接构建子单元。其中,第一接收子单元用于接收系统客户端2发 送的本地连接通道的连接信息。第一发送子单元用于根据本地连接通道的连接 信息,向系统客户端2发送握手认证信息,以请求系统客户端2进行握手认证。 本地连接构建子单元,用于在被系统客户端2认证合法后,与系统客户端2建 立本地连接通道,并通过本地连接通道接收系统客户端2提供的账户信息。

在本实施例中,本地连接通道为本地端口通道、管道命名连接通道、消息 对列连接通道或内存共享连接通道。

作为本实施例的一种举例,参见图5,图5是本发明提供的终端设备的另一 种实施例的结构示意图。图5与图4的区别在于,系统客户端2还包括:第三 发送单元22、第三接收单元23、第四发送单元24和第二登录单元25。其中, 第三发送单元22用于在本地连接通道建立之前,将账户信息发送给账户服务器, 以请求账户服务器验证账户信息,并在验证成功后生成与账户信息对应的登录 凭证。第三接收单元23用于接收登录凭证,并保存到内存中。第四发送单元24 用于将登录凭证转发给系统服务器,以使系统服务器向账户服务器请求验证登 录凭证的合法性,并在登录凭证验证通过后,存储该登录凭证。第二登录单元 25用于接收系统服务器返回的登录凭证验证合法的信息后,从内存中删除该登 录凭证,并使用该账户信息登录到系统服务器。

作为本发明的一种举例,参见图6,图6是本发明提供的终端设备的又一种 实施例的结构示意图。图6与图5的区别在于,系统客户端2还包括:第四接 收单元26和第三登录单元27。其中,第四接收单元26用于在第二登录单元25 使用账户信息登录到系统服务器之后,接收系统服务器发送的登录信息,并使 用本系统客户端的硬件特征信息对登录信息进行加密并存储。第三登录单元27 用于在需要进行自动登录认证时,将该登录信息发送给系统服务器,以使系统 服务器在验证登录信息合法后,接受系统客户端使用该用户账户进行自动登录。

本实施例更详细的步骤流程和工作原理可以但不限于参见实施例1的相关 记载。

由上可见,本发明实施例提供的终端设备,在系统客户端使用账户信息成 功登录到系统器后,软件客户端与系统客户端建立本地连接通道,获取该账户 信息并开始登录流程。软件客户端与软件服务器建立长连接通道,并请求软件 服务器生成安全启动参数。软件服务器配置第一数据库以存储安全启动参数、 账户信息和长连接通道的连接信息三者的关联信息,并返回生成的安全启动参 数。软件客户端通过系统客户端的转发,将该安全启动参数发送给系统服务器, 并请求系统服务器生成临时凭证。系统服务器配置第二数据库以存储临时凭证、 安全启动参数和该账户信息对应的登录凭证三者的关联关系。软件客户端接收 返回的临时凭证后,通过长连接通道发送给软件服务器,软件服务器根据长连 接通信的连接信息,查询第一数据库,获取第一安全启动参数,并将第一安全 启动参数和临时凭证发送给系统服务器。系统服务器确认该临时凭证和第一安 全启动参数与第二数据库存储的数据相一致后,将登录凭证发送给软件服务器, 以使软件服务器能够使用登录凭证向账户服务器请求登录认证。软件客户端在 登录凭证通过认证后,使用该账户信息登录到软件服务器。相比于现有技术需 要依赖浏览器或需要多次输入账号密码,本发明为同一账户体系的多客户端登 录提供安全的自动登录,减少了用户操作,提高了安全性。

实施例3

参见图7,图7是本发明提供的通信系统的一种实施例的结构示意图。如图 7所示,该通信系统包括:账户服务器701、系统服务器702、软件服务器703 和终端设备704。其中,终端设备704的详细结构和工作原理可以但不限于参见 于实施例1和实施例2的相关记载。

下面结合图8至图10,对本实施例提供通信系统进行信息交互的流程进行 详细说明。本通信系统进行信息交互的流程主要包括步骤S1至步骤S6,具体如 下:

S1,系统客户端使用账户信息成功登录到系统服务器,系统服务器存储登 录凭证。

S2,软件客户端与系统客户端进行握手协议认证,在认证成功后建立本地 连接通道。

S3,软件客户端与软件服务器建立长连接通道,并向软件服务器申请安全 启动参数。

S4,软件客户端通过系统客户端向系统服务器申请临时凭证,并将临时凭 证转发给软件服务器。

S5,软件服务器向系统服务器申请登录凭证,在系统服务器验证通过后接 收登录凭证。

S6,软件服务器与账户服务器通讯,请求验证登录凭证,在登录凭证验证 通过后,接受软件客户端的登录。

为了更好的说明本通信系统的信息交互流程,下面对步骤的详细流程进行 描述。

参见图8,是本发明提供的通信系统进行信息交互的步骤S1至步骤S2的流 程示意图。

步骤S1,系统客户端使用账户信息成功登录到系统服务器,系统服务器存 储登录凭证,具体包括步骤S11至步骤S19,如下:

S11,系统客户端与账户服务器通信,请求验证用户名密码。

S12,账户服务器验证通过后,生成并保存登录凭证,并将登录凭证发送给 系统客户端。

S13,系统客户端将登录凭证保存到内存中。

S14,系统客户端将登录凭证发送给系统服务器。

S15,系统服务器与账户服务器通信,请求验证登录凭证。

S16,账户服务器向系统服务器返回验证结果。

S17,系统服务器在登录凭证验证通过后,保存登录凭证。

S18,系统服务器向系统客户端发送登录成功消息,该消息包含登录信息, 登录信息用于系统客户端以后的自动登录流程。

S19,系统客户端删除内存中的登录凭证,并使用本系统客户端的硬件特征 信息对登录信息进行加密并保存。

步骤S2,软件客户端与系统客户端进行握手协议认证,在认证成功后建立 本地连接通道,具体包括步骤S21至步骤S24,如下:

S21,系统客户端向软件客户端发送本地连接的连接信息。

S22,软件客户端根据该连接信息,向系统客户端发送握手认证信息。

S23,系统客户端检测软件客户端的合法性。

S24,系统客户端在通过握手认证后,与软件客户端建立本地连接,并向软 件客户端返回账户信息。

参见图9,是本发明提供的通信系统进行信息交互的步骤S3至步骤S4的流 程示意图。

步骤S3,软件客户端与软件服务器建立长连接通道,并向软件服务器申请 安全启动参数,具体包括步骤S31至步骤S35,如下:

S31,软件客户端向软件服务器发送登录请求,该登录请求包含账户信息。

S32,软件客户端与软件服务器建立长连接通道,软件服务器将账户信息与 长连接通道的连接信息存储并关联在第一数据库中。

S33,软件客户端向软件服务器申请安全启动参数。

S34,软件服务器生成并保存安全启动参数,并在第一数据库中将安全启动 参数与长连接通道的连接信息相关联。

S35,软件服务器向软件客户端返回安全启动参数。

步骤S4软件客户端通过系统客户端向系统服务器申请临时凭证,并将临时 凭证转发给软件服务器,具体包括步骤S41至步骤S45,如下:

S41,软件客户端向系统客户端发送临时凭证的申请请求,该申请请求包含 软件客户端的标识信息和安全启动参数。

S42,系统客户端将临时凭证的申请请求转发给系统服务器。

S43,系统服务器生成临时凭证,并在第二数据库中,将临时凭证分别与安 全启动参数和登录凭证相关联。

S44,系统服务器向系统客户端返回生成的临时凭证。

S45,系统客户端将临时凭证转发给软件客户端。

参见图10,是本发明提供的通信系统进行信息交互的步骤S5至步骤S6的 流程示意图。

步骤S5,软件服务器向系统服务器申请登录凭证,在系统服务器验证通过 后接收登录凭证,具体包括步骤S51至步骤S55,如下:

S51,软件客户端通过长连接通道向软件服务器发送临时凭证。

S52,软件服务器根据长连接通道的连接信息,查询第一数据库,获取对应 的第一安全启动参数。

S53,软件服务器向系统服务器发送登录凭证的申请请求,该申请请求包含 第一安全启动参数和临时凭证。

S54,系统服务器根据临时凭证,查询第二数据库,获取所关联的第二安全 启动参数和登录凭证,并验证第二安全启动参数是否与第一安全启动参数相一 致。

S55,如果是,则系统服务器向软件服务器发送该临时凭证所关联的登录凭 证,否则,终止登录流程。

步骤S6,软件服务器与账户服务器通讯,请求验证登录凭证,在登录凭证 验证通过后,接受软件客户端的登录,具体包括步骤S61至步骤S64,如下:

S61,软件服务器向账户服务器请求验证登录凭证。

S62,账户服务器验证登录凭证的合法性。

S63,账户服务器向软件服务器返回验证结果。

S64,如果验证通过,则软件服务器接受软件客户端的登录。

本实施例的更详细的步骤流程可以但不限于参见实施例1的相关记载。

由上可见,本发明实施例提供的通信系统,在系统客户端使用账户信息成 功登录到系统器后,软件客户端与系统客户端建立本地连接通道,获取该账户 信息并开始登录流程。软件客户端与软件服务器建立长连接通道,并请求软件 服务器生成安全启动参数。软件服务器配置第一数据库以存储安全启动参数、 账户信息和长连接通道的连接信息三者的关联信息,并返回生成的安全启动参 数。软件客户端通过系统客户端的转发,将该安全启动参数发送给系统服务器, 并请求系统服务器生成临时凭证。系统服务器配置第二数据库以存储临时凭证、 安全启动参数和该账户信息对应的登录凭证三者的关联关系。软件客户端接收 返回的临时凭证后,通过长连接通道发送给软件服务器,软件服务器根据长连 接通信的连接信息,查询第一数据库,获取第一安全启动参数,并将第一安全 启动参数和临时凭证发送给系统服务器。系统服务器确认该临时凭证和第一安 全启动参数与第二数据库存储的数据相一致后,将登录凭证发送给软件服务器, 以使软件服务器能够使用登录凭证向账户服务器请求登录认证。软件客户端在 登录凭证通过认证后,使用该账户信息登录到软件服务器。相比于现有技术需 要依赖浏览器或需要多次输入账号密码,本发明为同一账户体系的多客户端登 录提供安全的自动登录,减少了用户操作,提高了安全性。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程, 是可以通过计算机程序来指令相关的硬件来完成,所述程序可存储于一计算机 可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。 其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory, ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技 术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这 些改进和润饰也视为本发明的保护范围。

本文发布于:2023-04-13 22:05:40,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/3/86251.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图