CN111723889B - 扫码登录方法、图形码显示方法、装置、设备及存储介质 - Google Patents

扫码登录方法、图形码显示方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN111723889B
CN111723889B CN202010758401.9A CN202010758401A CN111723889B CN 111723889 B CN111723889 B CN 111723889B CN 202010758401 A CN202010758401 A CN 202010758401A CN 111723889 B CN111723889 B CN 111723889B
Authority
CN
China
Prior art keywords
state
identifier
graphic code
server
authorization
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010758401.9A
Other languages
English (en)
Other versions
CN111723889A (zh
Inventor
刘亚运
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010758401.9A priority Critical patent/CN111723889B/zh
Publication of CN111723889A publication Critical patent/CN111723889A/zh
Application granted granted Critical
Publication of CN111723889B publication Critical patent/CN111723889B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K17/00Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
    • G06K17/0022Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisious for transferring data to distant stations, e.g. from a sensing device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请实施例公开了一种扫码登录方法、图形码显示方法、装置、设备及存储介质,属于互联网技术领域。该方法包括:第一设备通过扫描第二设备显示的图形码,获取图形码对应的授权标识,根据第一设备对图形码的处理进度,确定与处理进度匹配的第一状态,向服务器发送授权登录请求,授权登录请求携带授权标识及第一状态,服务器用于查询与授权标识对应存储的第二状态,第二状态由服务器根据对图形码的处理进度确定,响应于第一状态为第二状态的下一个状态,将第一设备的用户账号授权给授权标识对应的第二设备登录,并将与授权标识对应存储的第二状态更新为第一状态,采用这种验证状态先后顺序的方式,充分保证了授权过程的安全性。

Description

扫码登录方法、图形码显示方法、装置、设备及存储介质
技术领域
本申请实施例涉及互联网技术领域,特别涉及一种扫码登录方法、图形码显示方法、装置、设备及存储介质。
背景技术
随着计算机技术的发展,图形码技术应用越来越广泛。而扫码登录是图形码的一种常见应用方式。通过扫码登录,能够实现同一账号在多个设备上的登录,而无需用户手动输入账号,非常便捷,因此受到了广大用户的喜爱。
相关技术中提供了一种扫码登录方法,第一设备扫描第二设备显示的图形码,得到图形码中包含的授权标识,将该授权标识发送至服务器,服务器确定该授权标识为该服务器分配的授权标识,将第一设备登录的账号授权给第二设备登录。
由于上述方法中,只需确定该授权标识为该服务器分配的授权标识即可进行授权登录,验证方式过于简单,安全性差。
发明内容
本申请实施例提供了一种扫码登录方法、图形码显示方法、装置、设备及存储介质,能够提高安全性。所述技术方案如下:
一方面,提供了一种扫码登录方法,所述方法包括:
第一设备通过扫描第二设备显示的图形码,获取所述图形码对应的授权标识;
根据所述第一设备对所述图形码的处理进度,确定与所述处理进度匹配的第一状态;
向服务器发送授权登录请求,所述授权登录请求携带所述授权标识及所述第一状态,所述服务器用于查询与所述授权标识对应存储的第二状态,所述第二状态由所述服务器根据对所述图形码的处理进度确定,响应于所述第一状态为所述第二状态的下一个状态,将所述第一设备的用户账号授权给所述授权标识对应的第二设备登录,并将与所述授权标识对应存储的所述第二状态更新为所述第一状态。
另一方面,提供了一种扫码登录方法,所述方法包括:
接收第一设备发送的授权登录请求,所述授权登录请求携带授权标识及第一状态,所述授权标识由所述第一设备扫描第二设备显示的图形码后得到,所述第一状态为所述第一设备根据对所述图形码的处理进度确定的状态;
查询与所述授权标识对应存储的第二状态,所述第二状态由服务器根据对所述图形码的处理进度确定;
响应于所述第一状态为所述第二状态的下一个状态,将所述第一设备的用户账号授权给所述授权标识对应的第二设备登录,并将与所述授权标识对应存储的所述第二状态更新为所述第一状态。
在一种可能实现方式中,与所述授权标识对应存储的状态包括待校验状态或已扫码状态,所述第一状态为已扫码状态,所述第二状态为待校验状态。
在另一种可能实现方式中,与所述授权标识对应存储的状态包括待校验状态、已扫码状态或已确认状态;所述第一状态为已确认状态,所述第二状态为已扫码状态,所述第三状态为待校验状态;
所述接收第一设备发送的授权登录请求之前,所述方法还包括:
接收所述第一设备发送的扫码通知,所述扫码通知携带所述授权标识及所述第二状态;
查询与所述授权标识对应存储的第三状态;
响应于所述第二状态为所述第三状态的下一个状态,将与所述授权标识对应存储的所述第三状态更新为所述第二状态。
在另一种可能实现方式中,所述扫码通知还携带设备标识,所述设备标识用于指示发送所述扫码通知的设备;
所述方法还包括:
响应于未查询到与所述授权标识对应存储的设备标识,将所述扫码通知中携带的设备标识与所述授权标识对应存储。
在另一种可能实现方式中,所述授权登录请求还携带设备标识,所述设备标识用于指示发送所述授权登录请求的设备;
所述查询与所述授权标识对应存储的第二状态,包括:
查询与所述授权标识对应存储的所述第二状态和设备标识;
所述响应于所述第一状态为所述第二状态的下一个状态,将所述第一设备的用户账号授权给所述授权标识对应的第二设备登录,并将与所述授权标识对应存储的所述第二状态更新为所述第一状态,包括:
响应于所述第一状态为所述第二状态的下一个状态、且所述授权标识对应的设备标识与所述授权登录请求中的设备标识相同,将所述第一设备的用户账号授权给所述授权标识对应的第二设备登录,并将与所述授权标识对应存储的所述第二状态更新为所述第一状态。
在另一种可能实现方式中,所述接收第一设备发送的授权登录请求之前,所述方法还包括:
接收所述第一设备发送的信息获取请求,所述信息获取请求携带第一地址信息,所述第一地址信息是由所述第一设备扫描第二设备显示的图形码后得到的;
查询地址对应关系,确定与所述第一地址信息对应的第二地址信息,所述第二地址信息的字符长度大于所述第一地址信息的字符长度;
向所述第一设备发送所述第二地址信息,所述第一设备用于获取所述第二地址信息对应的授权标识。
在另一种可能实现方式中,所述授权登录请求携带授权信息,所述授权信息是由所述第一设备根据第一加密密钥,对所述授权标识及所述第一状态进行加密处理后得到的;
所述查询与所述授权标识对应存储的第二状态之前,所述方法还包括:
根据第一解密密钥,对所述授权信息进行解密处理,得到所述授权标识及所述第一状态,所述第一加密密钥与所述第一解密密钥对应。
在另一种可能实现方式中,所述响应于所述第一状态为所述第二状态的下一个状态,将所述第一设备的用户账号授权给所述授权标识对应的第二设备登录,并将与所述授权标识对应存储的所述第二状态更新为所述第一状态之后,所述方法还包括:
向所述第一设备发送状态更新通知,所述状态更新通知用于指示所述服务器已更新所述授权标识对应的状态。
在另一种可能实现方式中,所述接收第一设备发送的授权登录请求之前,所述方法包括:
接收第二设备发送的图形码显示请求;
根据所述图形码显示请求,生成所述授权标识及与所述授权标识对应的第二地址信息;
对所述第二地址信息进行转换处理,得到所述第二地址信息对应的第一地址信息,所述第二地址信息的字符长度大于所述第一地址信息的字符长度;
向所述第二设备发送所述第一地址信息,所述第二设备用于显示包含所述第一地址信息的图形码。
在另一种可能实现方式中,所述图形码显示请求携带设备标识及所述第二设备的Cookie,所述设备标识用于指示发送所述图形码显示请求的设备,所述Cookie中包括第二设备标识;
所述根据所述图形码显示请求,生成所述授权标识及与所述授权标识对应的第二地址信息,包括:
响应于所述Cookie中的第二设备标识及所述图形码显示请求携带的设备标识相同,根据所述图形码显示请求,生成所述授权标识及与所述授权标识对应的第二地址信息。
在另一种可能实现方式中,所述根据所述图形码显示请求,生成所述授权标识及与所述授权标识对应的第二地址信息,包括:
根据第二加密密钥,对所述授权标识进行加密处理,得到签名值;
根据所述签名值及所述授权标识,生成所述第二地址信息。
在另一种可能实现方式中,所述根据所述图形码显示请求,生成所述授权标识及与所述授权标识对应的第二地址信息之后,所述方法还包括:
根据第三加密密钥,对所述授权标识进行加密处理,得到所述会话标识;
所述向所述第二设备发送所述第一地址信息,包括:
向所述第二设备发送所述第一地址信息及所述会话标识,所述第二设备用于显示包含所述第一地址信息的图形码,存储所述会话标识,所述会话标识用于查询所述授权标识对应的状态。
在另一种可能实现方式中,所述图形码显示请求携带设备标识,所述设备标识用于指示发送所述图形码显示请求的设备;
所述根据第三加密密钥,对所述授权标识进行加密处理,得到所述会话标识,包括:
根据所述第三加密密钥,对所述授权标识及所述设备标识进行加密处理,得到所述会话标识。
在另一种可能实现方式中,所述方法还包括:
确定所述授权标识的生成时间;
所述根据第三加密密钥,对所述授权标识进行加密处理,得到所述会话标识,包括:
根据所述第三加密密钥,对所述授权标识及所述生成时间进行加密处理,得到所述会话标识。
在另一种可能实现方式中,所述向所述第二设备发送所述第一地址信息及所述会话标识之后,所述方法还包括:
接收所述第二设备发送的状态查询请求,所述状态查询请求携带所述会话标识;
根据第三解密密钥,对所述会话标识进行解密处理,得到所述会话标识对应的授权标识,所述第三加密密钥与所述第三解密密钥对应;
确定与所述授权标识对应存储的状态;
向所述第二设备发送状态通知,所述状态通知包含确定的状态。
在另一种可能实现方式中,所述状态查询请求还携带所述第二设备的Cookie,所述Cookie中包括第二设备标识;所述会话标识中包含设备标识,所述设备标识用于指示发送所述图形码显示请求的设备;
所述确定与所述授权标识对应存储的状态,包括:
响应于所述Cookie中的第二设备标识及所述会话标识中的设备标识相同,确定与所述授权标识对应存储的状态。
在另一种可能实现方式中,所述会话标识中包含所述授权标识的生成时间;
所述确定与所述授权标识对应存储的状态,包括:
响应于所述生成时间满足参考格式,确定所述授权标识对应存储的状态。
在另一种可能实现方式中,所述确定与所述授权标识对应存储的状态,包括:
查询与所述授权标识对应存储的另一会话标识;
响应于所述状态查询请求中携带的会话标识与查询到的另一会话标识相同,确定与所述授权标识对应存储的状态。
另一方面,提供了一种图形码显示方法,所述方法包括:
向服务器发送图形码显示请求,所述服务器用于根据所述图形码显示请求,生成所述授权标识及与所述授权标识对应的第二地址信息,对所述第二地址信息进行转换处理,得到所述第二地址信息对应的第一地址信息,所述第二地址信息的字符长度大于所述第一地址信息的字符长度;
接收所述服务器发送的所述第一地址信息;
显示包含所述第一地址信息的图形码。
在一种可能实现方式中,应用于第二设备,所述图形码显示请求携带第二设备标识及第二设备的Cookie,所述第二设备标识用于指示发送所述图形码显示请求的第二设备,所述Cookie中包括所述第二设备标识。
在另一种可能实现方式中,所述方法还包括:
接收所述服务器发送的会话标识,所述会话标识是由所述服务器根据第三加密密钥,对所述授权标识进行加密处理后得到的;
存储所述会话标识。
在另一种可能实现方式中,所述方法还包括:
向所述服务器发送状态查询请求,所述状态查询请求携带所述会话标识,所述服务器用于根据第三解密密钥,对所述会话标识进行解密处理,得到所述会话标识对应的授权标识,确定与所述授权标识对应存储的状态;
接收所述服务器发送的状态通知,所述状态通知包含确定的状态。
另一方面,提供了一种图形码显示方法,所述方法包括:
接收第二设备发送的图形码显示请求;
根据所述图形码显示请求,生成所述授权标识及与所述授权标识对应的第二地址信息;
对所述第二地址信息进行转换处理,得到所述第二地址信息对应的第一地址信息,所述第二地址信息的字符长度大于所述第一地址信息的字符长度;
向所述第二设备发送所述第一地址信息,所述第二设备用于显示包含所述第一地址信息的图形码。
另一方面,提供了一种扫码登录装置,所述装置包括:
扫描模块,用于通过扫描第二设备显示的图形码,获取所述图形码对应的授权标识;
第一状态确定模块,用于根据所述第一设备对所述图形码的处理进度,确定与所述处理进度匹配的第一状态;
发送模块,用于向服务器发送授权登录请求,所述授权登录请求携带所述授权标识及所述第一状态,所述服务器用于查询与所述授权标识对应存储的第二状态,所述第二状态由所述服务器根据对所述图形码的处理进度确定,响应于所述第一状态为所述第二状态的下一个状态,将所述第一设备的用户账号授权给所述授权标识对应的第二设备登录,并将与所述授权标识对应存储的所述第二状态更新为所述第一状态。
在一种可能实现方式中,与所述授权标识对应存储的状态包括待校验状态或已扫码状态,所述第一状态为已扫码状态,所述第二状态为待校验状态。
在一种可能实现方式中,与所述授权标识对应存储的状态包括待校验状态、已扫码状态或已确认状态;所述第一状态为已确认状态,所述第二状态为已扫码状态,所述第三状态为待校验状态;所述装置还包括:
第二状态确定模块,用于根据所述第一设备对所述图形码的处理进度,确定与所述处理进度匹配的所述第二状态;
所述发送模块,还用于向所述服务器发送扫码通知,所述扫码通知携带所述授权标识及所述第二状态,所述服务器用于查询与所述授权标识对应存储的所述第三状态,响应于所述第二状态为所述第三状态的下一个状态,将与所述授权标识对应存储的所述第三状态更新为所述第二状态。
在一种可能实现方式中,所述扫描模块,用于通过扫描所述第二设备显示的图形码,获取所述图形码对应的授权标识和签名值,所述签名值由所述服务器根据第二加密密钥对所述授权标识进行加密处理后得到;
所述确定模块,包括:
验证单元,用于根据第二解密密钥,对所述授权标识及所述签名值进行验证,所述第二加密密钥与所述第二解密密钥对应;
确定单元,用于响应于验证通过,根据所述第一设备对所述图形码的处理进度,确定与所述处理进度匹配的第二状态。
在一种可能实现方式中,所述扫码通知还携带设备标识,所述设备标识用于指示发送所述扫码通知的设备;
所述服务器用于响应于未查询到与所述授权标识对应存储的设备标识,将所述扫码通知中携带的设备标识与所述授权标识对应存储。
在一种可能实现方式中,所述扫描模块,包括:
扫描单元,用于扫描所述第二设备显示的图形码,得到所述图形码包含的第一地址信息;
请求发送单元,用于向所述服务器发送信息获取请求,所述信息获取请求携带第一地址信息,所述服务器用于查询地址对应关系,确定与所述第一地址信息对应的第二地址信息,所述第二地址信息的字符长度大于所述第一地址信息的字符长度;
接收单元,用于接收所述服务器发送的第二地址信息;
获取单元,用于获取所述第二地址信息对应的授权标识。
在一种可能实现方式中,所述获取单元,用于从所述第二地址信息中提取所述授权标识。
在一种可能实现方式中,所述发送模块,包括:
加密单元,用于根据第一加密密钥,对所述授权标识及所述第一状态进行加密处理,得到授权信息;
请求发送单元,用于向所述服务器发送所述授权登录请求,所述授权登录请求携带所述授权信息,所述服务器用于根据第一解密密钥对所述授权信息进行解密处理,得到所述授权标识及所述第一状态,所述第一加密密钥与所述第一解密密钥对应。
在一种可能实现方式中,所述装置还包括:
接收模块,用于接收所述服务器发送的状态更新通知,所述状态更新通知用于指示所述服务器已更新所述授权标识对应的状态。
另一方面,提供了一种扫码登录装置,所述装置包括:
接收模块,用于接收第一设备发送的授权登录请求,所述授权登录请求携带授权标识及第一状态,所述授权标识由所述第一设备扫描第二设备显示的图形码后得到,所述第一状态为所述第一设备根据对所述图形码的处理进度确定的状态;
第一查询模块,用于查询与所述授权标识对应存储的第二状态,所述第二状态由服务器根据对所述图形码的处理进度确定;
授权登录模块,用于响应于所述第一状态为所述第二状态的下一个状态,将所述第一设备的用户账号授权给所述授权标识对应的第二设备登录,并将与所述授权标识对应存储的所述第二状态更新为所述第一状态。
在一种可能实现方式中,与所述授权标识对应存储的状态包括待校验状态或已扫码状态,所述第一状态为已扫码状态,所述第二状态为待校验状态。
在一种可能实现方式中,与所述授权标识对应存储的状态包括待校验状态、已扫码状态或已确认状态;所述第一状态为已确认状态,所述第二状态为已扫码状态,所述第三状态为待校验状态;所述装置还包括:
所述接收模块,还用于接收所述第一设备发送的扫码通知,所述扫码通知携带所述授权标识及所述第二状态;
第二查询模块,还用于查询与所述授权标识对应存储的第三状态;
所述授权登录模块,还用于响应于所述第二状态为所述第三状态的下一个状态,将与所述授权标识对应存储的所述第三状态更新为所述第二状态。
在一种可能实现方式中,所述扫码通知还携带设备标识,所述设备标识用于指示发送所述扫码通知的设备;所述装置还包括:
存储模块,用于响应于未查询到与所述授权标识对应存储的设备标识,将所述扫码通知中携带的设备标识与所述授权标识对应存储。
在一种可能实现方式中,所述授权登录请求还携带设备标识,所述设备标识用于指示发送所述授权登录请求的设备;所述第一查询模块,用于查询与所述授权标识对应存储的所述第二状态和设备标识;
所述授权登录模块,用于响应于所述第一状态为所述第二状态的下一个状态、且所述授权标识对应的设备标识与所述授权登录请求中的设备标识相同,将所述第一设备的用户账号授权给所述授权标识对应的第二设备登录,并将与所述授权标识对应存储的所述第二状态更新为所述第一状态。
在一种可能实现方式中,所述装置还包括:
所述接收模块,还用于接收所述第一设备发送的信息获取请求,所述信息获取请求携带第一地址信息,所述第一地址信息是由所述第一设备扫描第二设备显示的图形码后得到的;
第三查询模块,用于查询地址对应关系,确定与所述第一地址信息对应的第二地址信息,所述第二地址信息的字符长度大于所述第一地址信息的字符长度;
发送模块,用于向所述第一设备发送所述第二地址信息,所述第一设备用于获取所述第二地址信息对应的授权标识。
在一种可能实现方式中,所述授权登录请求携带授权信息,所述授权信息是由所述第一设备根据第一加密密钥,对所述授权标识及所述第一状态进行加密处理后得到的;所述装置还包括:
解密模块,用于根据第一解密密钥,对所述授权信息进行解密处理,得到所述授权标识及所述第一状态,所述第一加密密钥与所述第一解密密钥对应。
在一种可能实现方式中,所述装置还包括:
发送模块,用于向所述第一设备发送状态更新通知,所述状态更新通知用于指示所述服务器已更新所述授权标识对应的状态。
在一种可能实现方式中,所述装置还包括:
所述接收模块,用于接收第二设备发送的图形码显示请求;
生成模块,用于根据所述图形码显示请求,生成所述授权标识及与所述授权标识对应的第二地址信息;
转换模块,用于对所述第二地址信息进行转换处理,得到所述第二地址信息对应的第一地址信息,所述第二地址信息的字符长度大于所述第一地址信息的字符长度;
发送模块,用于向所述第二设备发送所述第一地址信息,所述第二设备用于显示包含所述第一地址信息的图形码。
在一种可能实现方式中,所述图形码显示请求携带设备标识及所述第二设备的Cookie,所述设备标识用于指示发送所述图形码显示请求的设备,所述Cookie中包括第二设备标识;
所述生成模块,用于响应于所述Cookie中的第二设备标识及所述图形码显示请求携带的设备标识相同,根据所述图形码显示请求,生成所述授权标识及与所述授权标识对应的第二地址信息。
在一种可能实现方式中,所述生成模块,包括:
加密单元,用于根据第二加密密钥,对所述授权标识进行加密处理,得到签名值;
生成单元,用于根据所述签名值及所述授权标识,生成所述第二地址信息。
在一种可能实现方式中,所述装置还包括:
加密模块,用于根据第三加密密钥,对所述授权标识进行加密处理,得到所述会话标识;
所述发送模块,用于向所述第二设备发送所述第一地址信息及所述会话标识,所述第二设备用于显示包含所述第一地址信息的图形码,存储所述会话标识,所述会话标识用于查询所述授权标识对应的状态。
在一种可能实现方式中,所述图形码显示请求携带设备标识,所述设备标识用于指示发送所述图形码显示请求的设备;所述加密模块,用于根据所述第三加密密钥,对所述授权标识及所述设备标识进行加密处理,得到所述会话标识。
在一种可能实现方式中,所述装置还包括:
确定模块,用于确定所述授权标识的生成时间;
所述加密模块,用于根据所述第三加密密钥,对所述授权标识及所述生成时间进行加密处理,得到所述会话标识。
在一种可能实现方式中,所述装置还包括:
所述接收模块,用于接收所述第二设备发送的状态查询请求,所述状态查询请求携带所述会话标识;
解密模块,用于根据第三解密密钥,对所述会话标识进行解密处理,得到所述会话标识对应的授权标识,所述第三加密密钥与所述第三解密密钥对应;
确定模块,用于确定与所述授权标识对应存储的状态;
所述发送模块,用于向所述第二设备发送状态通知,所述状态通知包含确定的状态。
在一种可能实现方式中,所述状态查询请求还携带所述第二设备的Cookie,所述Cookie中包括第二设备标识;所述会话标识中包含设备标识,所述设备标识用于指示发送所述图形码显示请求的设备;
所述确定模块,用于响应于所述Cookie中的第二设备标识及所述会话标识中的设备标识相同,确定与所述授权标识对应存储的状态。
在一种可能实现方式中,所述会话标识中包含所述授权标识的生成时间;
所述确定模块,用于响应于所述生成时间满足参考格式,确定所述授权标识对应存储的状态。
在一种可能实现方式中,所述确定模块,包括:
查询单元,用于查询与所述授权标识对应存储的另一会话标识;
确定单元,用于响应于所述状态查询请求中携带的会话标识与查询到的另一会话标识相同,确定与所述授权标识对应存储的状态。
另一方面,提供了一种图形码显示装置,所述装置包括:
发送模块,用于向服务器发送图形码显示请求,所述服务器用于根据所述图形码显示请求,生成所述授权标识及与所述授权标识对应的第二地址信息,对所述第二地址信息进行转换处理,得到所述第二地址信息对应的第一地址信息,所述第二地址信息的字符长度大于所述第一地址信息的字符长度;
接收模块,用于接收所述服务器发送的所述第一地址信息;
显示模块,用于显示包含所述第一地址信息的图形码。
在一种可能实现方式中,应用于第二设备,所述图形码显示请求携带第二设备标识及第二设备的Cookie,所述第二设备标识用于指示发送所述图形码显示请求的第二设备,所述Cookie中包括所述第二设备标识。
在一种可能实现方式中,所述装置还包括:
所述接收模块,用于接收所述服务器发送的会话标识,所述会话标识是由所述服务器根据第三加密密钥,对所述授权标识进行加密处理后得到的;
存储模块,用于存储所述会话标识。
在一种可能实现方式中,所述装置还包括:
所述发送模块,还用于向所述服务器发送状态查询请求,所述状态查询请求携带所述会话标识,所述服务器用于根据第三解密密钥,对所述会话标识进行解密处理,得到所述会话标识对应的授权标识,确定与所述授权标识对应存储的状态;
所述接收模块,还用于接收所述服务器发送的状态通知,所述状态通知包含确定的状态。
另一方面,提供了一种图形码显示装置,所述装置包括:
接收模块,用于接收第二设备发送的图形码显示请求;
生成模块,用于根据所述图形码显示请求,生成所述授权标识及与所述授权标识对应的第二地址信息;
转换模块,用于对所述第二地址信息进行转换处理,得到所述第二地址信息对应的第一地址信息,所述第二地址信息的字符长度大于所述第一地址信息的字符长度;
发送模块,用于向所述第二设备发送所述第一地址信息,所述第二设备用于显示包含所述第一地址信息的图形码。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行以实现如上述方面所述的扫码登录方法或图形码显示方法中所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行以实现如上述方面所述的扫码登录方法或图形码显示方法中所执行的操作。
再一方面,提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机程序代码,所述计算机程序代码存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行所述计算机程序代码,使得所述计算机设备实现如上述方面所述的扫码登录方法或图形码显示方法中所执行的操作。
另一方面,提供了一种扫码登录系统,所述系统包括如上述方面所述的第一设备、第二设备和服务器。
本申请实施例提供的技术方案带来的有益效果至少包括:
本申请实施例提供的方法、装置、设备及存储介质,由服务器根据对图形码的处理进度确定与授权标识对应存储的状态,并根据接收到的请求来更新图形码的状态,以使图形码的状态跟随图形码的处理进度而发生变化。因此,第一设备在扫描第二设备显示的图形码后根据第一设备对该图形码的处理进度确定此时的图形码状态为第一状态,并在发送给服务器的授权登录请求中携带该第一状态,若第一状态是服务器中与授权标识对应存储的第二状态的下一个状态,表示图形码的状态先后顺序准确,能够通过安全验证,因此将第一设备的用户账号授权登录给第二设备。采用这种验证状态先后顺序的方式对授权登录请求进行验证,方式虽然简单,但是保证了图形码的每个处理流程均需依次进行,避免了在图形码的处理流程中出现跨流程的现象,充分保证了授权过程的安全性,且在授权登录的过程中,无需用户在第二设备上手动输入账号,提高了便捷性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种扫码登录系统的示意图;
图2是本申请实施例提供的一种扫码登录方法的流程图;
图3是本申请实施例提供的一种扫码登录方法的流程图;
图4是本申请实施例提供的一种图形码显示方法的流程图;
图5是本申请实施例提供的一种图形码显示方法的流程图;
图6是本申请实施例提供的一种图形码显示方法的流程图;
图7是本申请实施例提供的一种扫码登录的操作流程示意图;
图8是本申请实施例提供的一种扫码登录方法的流程图;
图9是本申请实施例提供的一种扫描界面的示意图;
图10是本申请实施例提供的一种查询状态的操作流程示意图;
图11是本申请实施例提供的一种扫码登录方法的流程图;
图12是本申请实施例提供的一种扫码登录的操作流程示意图;
图13是本申请实施例提供的一种扫码登录装置的结构示意图;
图14是本申请实施例提供的一种扫码登录装置的结构示意图;
图15是本申请实施例提供的一种扫码登录装置的结构示意图;
图16是本申请实施例提供的一种扫码登录装置的结构示意图;
图17是本申请实施例提供的一种图形码显示装置的结构示意图;
图18是本申请实施例提供的一种图形码显示装置的结构示意图;
图19是本申请实施例提供的一种图形码显示装置的结构示意图;
图20是本申请实施例提供的一种计算机设备的结构示意图;
图21是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请所使用的术语“第一”、“第二”、“第三”等可在本文中用于描述各种概念,但除非特别说明,这些概念不受这些术语限制。这些术语仅用于将一个概念与另一个概念区分。举例来说,在不脱离本申请的范围的情况下,可以将第一设备称为第二设备,且类似地,可将第二设备为第一设备。
图1是本申请实施例提供的一种扫码登录系统的结构示意图,如图1所示,该系统包括第一设备101、第二设备102和服务器103。可选地,第一设备101为终端。可选地,第二设备102为终端。
其中,该服务器103可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。该第一设备101和该第二设备102均可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能电视、智能手表等,但并不局限于此。第一设备101与服务器103之间可以通过有线或无线通信方式进行直接或间接地连接,第二设备102与服务器103之间也可以通过有线或无线通信方式进行直接或间接地连接,本申请对此不做限制。
本申请实施例中,第二设备102与服务器103交互,显示图形码。第一设备101通过扫描第二设备102显示的图形码,与服务器103进行交互,从而将第一设备101的用户账号授权给第二设备102登录。
可选地,第一设备101和第二设备102上均安装由服务器103提供服务的应用,第一设备101通过该应用与服务器103之间进行交互,第二设备102通过该应用与服务器103之间进行交互。
例如,以该应用为即时通讯应用为例,第一设备101和第二设备102上均安装有即时通讯应用,服务器102为即时通讯应用对应的服务器。另外,该应用还可以为视频播放应用、电子支付应用等,本申请对此不做限制。
本申请实施例提供的方法,可用于多种场景。
例如,即时通讯应用的登录场景下:
第一设备和第二设备上均安装有即时通讯应用,在第一设备为第二设备上的即时通讯应用授权登录时,采用本申请实施例提供的扫码登录方法,将第一设备的即时通讯应用登录的用户账号,授权给第二设备的即时通信应用登录,以使用户能够在第二设备上使用即时通信应用。
再例如,游戏应用的登录场景下:
第一设备上安装有即时通讯应用,第二设备上安装有游戏应用,采用本申请实施例提供的扫码登录方法,将第一设备的即时通讯应用的用户账号,授权给第二设备的游戏应用登录,以使用户能够在第二设备上对游戏应用进行互动。
图2是本申请实施例提供的一种扫码登录方法的流程图,应用于第一设备中,如图2所示,该方法包括:
201、第一设备通过扫描第二设备显示的图形码,获取图形码对应的授权标识。
在本申请实施例中,第二设备需要进行登录时,通过与服务器之间进行交互,生成供其他设备扫描的图形码,以便将其他设备的用户账号授权给第二设备登录。
其中,图形码是由第二设备提供的、供其他设备扫描的图形码。可选地,图形码为二维码或条形码等。授权标识为用于指代该图形码的唯一标识,是由服务器在生成图形码时生成的。
202、第一设备根据第一设备对图形码的处理进度,确定与处理进度匹配的第一状态。
其中,第一状态用于表示第一设备对图形码的处理进度。
203、第一设备向服务器发送授权登录请求,服务器用于查询与授权标识对应存储的第二状态,第二状态由服务器根据对图形码的处理进度确定,响应于第一状态为第二状态的下一个状态,将第一设备的用户账号授权给授权标识对应的第二设备登录,并将与授权标识对应存储的第二状态更新为第一状态。
其中,授权登录请求携带授权标识及第一状态,用户账号为第一设备上登录的账号。
本申请实施例提供的方法,由服务器根据对图形码的处理进度确定与授权标识对应存储的状态,并根据接收到的请求来更新图形码的状态,以使图形码的状态跟随图形码的处理进度而发生变化。因此,第一设备在扫描第二设备显示的图形码后根据第一设备对该图形码的处理进度确定此时的图形码状态为第一状态,并在发送给服务器的授权登录请求中携带该第一状态,若第一状态是服务器中与授权标识对应存储的第二状态的下一个状态,表示图形码的状态先后顺序准确,能够通过安全验证,因此将第一设备的用户账号授权登录给第二设备。采用这种验证状态先后顺序的方式对授权登录请求进行验证,方式虽然简单,但是保证了图形码的每个处理流程均需依次进行,避免了在图形码的处理流程中出现跨流程的现象,充分保证了授权过程的安全性,且在授权登录的过程中,无需用户在第二设备上手动输入账号,提高了便捷性。
图3是本申请实施例提供的一种扫码登录方法的流程图,应用于服务器中,如图3所示,该方法包括:
301、服务器接收第一设备发送的授权登录请求。
其中,授权登录请求携带授权标识及第一状态,授权标识由第一设备扫描第二设备显示的图形码后得到,第一状态为第一设备根据对图形码的处理进度确定的状态。
302、服务器查询与授权标识对应存储的第二状态。
其中,第二状态为由服务器根据对图形码的处理进度确定。
303、服务器响应于第一状态为第二状态的下一个状态,将第一设备的用户账号授权给授权标识对应的第二设备登录,并将与授权标识对应存储的第二状态更新为第一状态。
本申请实施例提供的方法,由服务器根据对图形码的处理进度确定与授权标识对应存储的状态,并根据接收到的请求来更新图形码的状态,以使图形码的状态跟随图形码的处理进度而发生变化。因此,第一设备在扫描第二设备显示的图形码后根据第一设备对该图形码的处理进度确定此时的图形码状态为第一状态,并在发送给服务器的授权登录请求中携带该第一状态,若第一状态是服务器中与授权标识对应存储的第二状态的下一个状态,表示图形码的状态先后顺序准确,能够通过安全验证,因此将第一设备的用户账号授权登录给第二设备。采用这种验证状态先后顺序的方式对授权登录请求进行验证,方式虽然简单,但是保证了图形码的每个处理流程均需依次进行,避免了在图形码的处理流程中出现跨流程的现象,充分保证了授权过程的安全性,且在授权登录的过程中,无需用户在第二设备上手动输入账号,提高了便捷性。
图4是本申请实施例提供的一种图形码显示方法的流程图,应用于第二设备中,如图4所示,该方法包括:
401、第二设备向服务器发送图形码显示请求,服务器用于根据图形码显示请求,生成授权标识及与授权标识对应的第二地址信息,对第二地址信息进行转换处理,得到第二地址信息对应的第一地址信息,第二地址信息的字符长度大于第一地址信息的字符长度。
402、第二设备接收服务器发送的第一地址信息。
403、第二设备显示包含第一地址信息的图形码。
本申请实施例提供的方法,在生成图形码时不是直接生成包含地址信息的图形码,而是对地址信息进行转换处理,减小地址信息的字符长度,再根据减小字符长度后的地址信息来显示图形码,以使图形码中包含的地址信息的字符长度较短,从而减少了图形码中包含的信息量,避免了由于信息量过多而导致图形码显示过于密集的问题,提高了图形码的识别率。
图5是本申请实施例提供的一种图形码显示方法的流程图,应用于服务器中,如图5所示,该方法包括:
501、服务器接收第二设备发送的图形码显示请求。
502、服务器根据图形码显示请求,生成授权标识及与授权标识对应的第二地址信息。
503、服务器对第二地址信息进行转换处理,得到第二地址信息对应的第一地址信息,第二地址信息的字符长度大于第一地址信息的字符长度。
504、服务器向第二设备发送第一地址信息,第二设备用于显示包含第一地址信息的图形码。
本申请实施例提供的方法,在生成图形码时不是直接生成包含地址信息的图形码,而是对地址信息进行转换处理,减小地址信息的字符长度,再根据减小字符长度后的地址信息来显示图形码,以使图形码中包含的地址信息的字符长度较短,从而减少了图形码中包含的信息量,避免了由于信息量过多而导致图形码显示过于密集的问题,提高了图形码的识别率。
在本申请实施例中,通过第二设备与服务器之间进行交互,显示图形码,供其他设备扫描。在第二设备显示图形码的基础上,第一设备扫描第二设备显示的图形码后,通过与服务器进行交互,将第一设备的用户账号授权给第二设备登录,从而实现了扫码登录的方案。显示图形码的具体过程详见图6所示的实施例,将第一设备的用户账号授权给第二设备登录的具体过程详见图7所示的实施例。
图6是本申请实施例提供的一种图形码显示方法的流程图,交互主体包括第二设备和服务器,如图6所示,该方法包括:
601、第二设备向服务器发送图形码显示请求,图形码显示请求携带第二设备标识及第二设备的Cookie。
在本申请实施例中,第二设备为待登录的设备,在第二设备登录前,通过与服务器进行交互,第二设备显示图形码,以使后续其他设备能够通过扫描第二设备显示的图形码,将其他设备的用户账号授权给第二设备登录。
本申请实施例是以图形码显示请求携带第二设备标识及第二设备的Cookie为例进行说明的,由于第二设备的Cookie中存储了第二设备的第二设备标识,Cookie是不容易被篡改的,因此,在第二设备向服务器发送图形码显示请求时,图形码显示请求中携带第二设备标识及第二设备的Cookie,以使后续服务器能够对图形码显示请求进行验证。
其中,图形码显示请求用于向服务器请求生成图形码。第二设备标识用于指示第二设备。可选地,该第二设备标识为第二设备的Guid(Globally Unique Identifier,全局唯一标识符)。
在本申请实施例中,设备中存储有对应的Cookie,该Cookie用于存储对应的设备的相关信息。该Cookie中包括对应的设备标识,可选地,该Cookie还包括在设备中登录的历史用户账号、密码及该设备的浏览记录等。
第二设备的Cookie中包括该第二设备的第二设备标识,第二设备向服务器发送的图形码显示请求携带了第二设备标识及第二设备的Cookie,以使服务器能够根据第二设备标识及第二设备的Cookie进行验证,确定发送该图形码获取请求的设备,并在图形码显示请求未被篡改的情况下,执行后续生成图形码的具体过程。
在一种可能实现方式中,该步骤601包括:第二设备安装有目标应用,检测到对该目标应用的启动操作,向服务器发送图形码显示请求。
其中,该服务器用于为该目标应用提供服务。在检测到目标应用的启动操作时,第二设备向服务器发送图形码显示请求,以使后续通过与服务器交互,为目标应用生成图形码,在目标应用启动完成后,在目标应用中显示图形码,以使其他设备扫描该图形码,将其他设备的用户账号授权给目标应用登录。
例如,第二设备安装有即时通信应用,用户点击该即时通信应用,第二设备启动该即时通信应用,向即时通信应用对应的服务器发送图形码显示请求,以使服务器为该即时通信应用生成图形码,以使在即时通信应用启动完成后,显示图形码,供其他设备扫描。
可选地,第二设备检测到对目标应用的启动操作、且未查询到与该目标应用对应存储的用户账号,向服务器发送图形码显示请求。
第二设备在检测到目标应用的启动操作时,会查询与该目标应用对应存储的用户账号,如果未查询到与该目标应用对应存储的用户账号,则需要其他用户账号登录该目标应用,因此,向服务器发送图形码显示请求,以使后续目标应用能够显示图形码,供其他设备扫描后进行授权登录。
在一种可能实现方式中,该步骤601包括:第二设备检测到对目标网页的访问操作,向服务器发送图形码显示请求。
其中,服务器用于为目标网页提供服务,即该目标网页对应的服务器。在本申请实施例中,目标网页配置的登录方式为扫码登录方式,因此,在检测到对目标网页的访问操作时,向服务器发送图形码显示请求,以使在目标网页加载完成后,在目标网页中显示图形码供其他设备扫描。
例如,用户对企业办公网页进行访问时,第二设备检测到对企业办公网页的访问操作,向企业办公网页对应的服务器发送图形码显示请求,通过后续通过与服务器之间的交互,在该企业办公网页中显示图形码,用户通过其他设备扫描该企业办公网页中的图形码,将其他设备的用户账号授权给企业办公网页进行登录。
602、服务器接收第二设备发送的图形码显示请求,响应于Cookie中的第二设备标识及图形码显示请求携带的设备标识相同,根据图形码显示请求,生成授权标识及与授权标识对应的第二地址信息。
在本申请实施例中,由于第二设备向服务器发送图形码显示请求的过程中,图形码显示请求可能会被篡改,导致图形码显示请求携带的设备标识不再是第二设备标识,因此,在服务器接收到图形码显示请求后,将Cookie中的第二设备标识与图形码显示请求携带的设备标识进行对比,如果图形码显示请求携带的设备标识与Cookie中的第二设备标识相同,则表示图形码显示请求未被篡改,则服务器根据该图形码显示请求进行响应。
其中,授权标识用于指示该图形码显示请求,该授权标识与该图形码显示请求对应。后续通过该授权标识,能够对图形码显示过程进行跟踪。在本申请实施例中,授权标识具有唯一性,不同的图形码显示请求对应的授权标识不同。可选地,该授权标识以字符串的形式表示,例如,该授权标识为64位字符串。第二地址信息是为该图形码显示请求生成的链接地址,后续通过该第二地址信息能够生成对应的图形码。可选地,该第二地址信息中包含该授权标识。
在服务器接收到第二设备发送的图形码显示请求后,在确定图形码显示请求未被篡改的情况下,生成授权标识及与授权标识对应的第二地址信息,以便后续能够通过该授权标识,对后续生成图形码的过程进行跟踪,且后续能够通过第二地址信息为该第二设备生成图形码。
在一种可能实现方式中,该步骤602包括:对授权标识及第二设备标识进行组合处理,得到该第二地址信息。
通过将授权标识及第二设备标识进行组合处理,丰富了地址信息包含的信息量,避免其他信息冒充该第二地址信息的可能,从而提高了地址信息的安全性。
在一种可能实现方式中,该步骤602包括:服务器根据第二加密密钥对授权标识进行加密处理,得到签名值,根据签名值及授权标识,生成第二地址信息。
其中,第二加密密钥是服务器中存储的密钥,用于生成签名值。该签名值用于后续对该第二地址信息进行验签处理,通过该签名值能够确定第二地址信息是否被篡改。可选地,在对授权标识进行加密处理时,采用通过RSA(RSA algorithm)加密算法。
通过授权标识及签名值生成第二地址信息,丰富了地址信息中包含的信息,且签名值是服务器加密得到的,避免其他信息冒充该第二地址信息,从而提高了地址信息的安全性。
在一种可能实现方式中,该步骤602包括:服务器根据第二加密密钥,对授权标识及图形码显示请求携带的设备标识进行加密处理,得到签名值,对该授权标识、该设备标识及该签名值进行组合处理,得到授权标识对应的第二地址信息。
通过对授权标识和设备标识进行加密处理,丰富了签名值包含的信息,从而提高了签名值的安全性。且通过将授权标识、设备标识及签名值进行组合处理,丰富了第二地址信息中包含的信息,避免其他信息冒充该第二地址信息,从而提高了第二地址信息的安全性。
可选地,服务器中包括地址信息的参考模板,该参考模板中包括分别与授权标识、设备标识及签名值对应的填充位置,则服务器将该授权标识、设备标识及签名值分别填充至对应的位置中,得到该第二地址信息。例如,服务器根据应用跳转至另一个应用的跳转规则,或者应用跳转至网页的跳转规则,设置应用与应用之间,或者应用于网页之间的ONELINK跳转模板,即为地址信息的参考模板,通过将授权标识、设备标识及签名值填充在参考模板中,得到第二地址信息。
可选地,该参考模板中还包括其他填充位置,如前缀填充位置,该前缀填充位置用于填充地址信息的前缀,如Http、Https等。例如,该参考模板中第一个填充位置为地址前缀填充位置,第二个填充位置为授权标识填充位置,第三个填充位置为设备标识填充位置,第四个填充位置为签名值填充位置,分别将该授权标识、设备标识及签名值分别填充至对应的位置中,得到第二地址信息。
在一种可能实现方式中,该图形码显示请求携带来源信息,在服务器接收到图形码显示请求后,对该来源信息进行校验,在对来源信息验证通过的情况下,执行后续生成授权标识及与授权标识对应的第二地址信息的步骤。其中,该来源信息用于表示图形码显示请求的来源。例如,第二设备通过网页向服务器发送图形码显示请求,该来源信息为网页的Referer(引用来源),通过对Referer进行校验,服务器确定该图形码显示请求对应的网页,在服务器能够为该网页提供服务时,则对Referer验证通过,在服务器不能够为该网页提供服务时,则对Referer验证失败。
另外,在服务器接收到第二设备发送的图形码显示请求后,图形码显示请求携带的设备标识与Cookie中的第二设备标识不相同,表示图形码显示请求已被篡改,则服务器对该图像码生成请求拒绝响应。
在一种可能实现方式中,该方法还包括:响应于图形码显示请求携带的设备标识与Cookie中的第二设备标识不相同,服务器向第二设备发送拒绝响应通知,该拒绝响应通知指示该图形码显示失败。
需要说明的是,本申请实施例是以图形码显示请求携带设备标识及第二设备的Cookie为例,服务器仅在Cookie中的第二设备标识及图形码显示请求携带的设备标识相同时,对图形码显示请求进行响应,而在另一实施例中,图形码显示请求无需携带设备标识及第二设备的Cookie,在服务器接收到图形码显示请求后,根据图形码显示请求,生成授权标识及与授权标识对应的第二地址信息。
603、服务器对第二地址信息进行转换处理,得到第二地址信息对应的第一地址信息。
其中,第二地址信息的字符长度大于第一地址信息的字符长度。通过将第二地址信息转成处理成字符长度较小的第一地址信息,减少了地址信息的信息量,即包含第二地址信息的图形码的信息量减少,以使图形码的复杂程度低,易被设备扫描识别,从而提高了图形码的识别率。
在一种可能实现方式中,该步骤603包括:服务器通过散列算法对该第二地址信息进行处理,得到该第二地址信息对应的第一地址信息。例如,服务器对第二地址信息进行哈希值计算,得到该第二地址信息对应的哈希值,将该哈希值作为第一地址信息。
另外,在服务器生成第一地址信息后,通过在地址对应关系中,存储该第一地址信息与第二地址信息,以便后续能够根据第一地址信息查询对应的第二地址信息。
604、服务器根据第三加密密钥,对授权标识进行加密处理,得到会话标识,向第二设备发送第一地址信息及会话标识。
其中,第三加密密钥是用于对授权标识进行加密的密钥,该第三加密密钥存储于服务器中。会话标识是服务器为第二设备生成的标识,该会话标识后续由服务器发送至第二设备,第二设备根据该会话标识查询对应的授权标识的状态。由于授权标识具有唯一性,则通过第三加密密钥对授权标识加密处理后的会话标识也具有唯一性。可选地,该会话标识为SessionID。
通过向第二设备发送第一地址信息及会话标识,以使第二设备后续能够显示包含该第一地址信息的图形码,且后续能够通过会话标识,查询图形码对应的授权标识的状态。
在一种可能实现方式中,获取会话标识的过程,包括以下三种方式:
第一种方式:根据第三加密密钥,对授权标识及设备标识进行加密处理,得到会话标识。
第二种方式:确定授权标识的生成时间,根据第三加密密钥,对授权标识及生成时间进行加密处理,得到会话标识。
其中,生成时间为服务器生成该授权标识的时间。可选地,在服务器生成该授权标识时,确定该授权标识的生成时间。
第三种方式:确定授权标识的生成时间,根据第三加密密钥,对授权标识、设备标识及生成时间进行加密处理,得到会话标识。
第四种方式中:确定授权标识的生成时间,根据第三加密密钥,对授权标识、设备标识、生成时间及业务信息进行加密处理,得到会话标识。
其中,该图形码显示请求中携带该业务信息,业务信息用于指示当前图形码显示请求所应用的场景的信息,如支付场景的信息、视频浏览场景的信息或即使通信场景的信息等。通过对授权标识、设备标识、生成时间及业务信息进行加密处理,能够丰富会话标识包含的信息,提高会话标识的安全性。
可选地,对授权标识、设备标识、生成时间及业务信息进行序列化处理,根据第三加密密钥,对序列化后的信息进行加密处理,得到会话标识。其中,根据第三加密密钥进行加密处理时,采用AES-GCM(Advanced Encryption Standard-Galois/Counter Mode,高级加密标准-一种加密认证模式)加密算法,该AES-GCM加密算法为对称加密算法,通过加密得到的会话标识提高安全性。
在一种可能实现方式中,在服务器得到会话标识之后,该方法还包括:确定授权标识对应的初始状态,将设备标识、会话标识、生成时间及初始状态,均与授权标识对应存储。其中,初始状态为服务器设置的初始状态,在生成授权标识后,为该授权标识设置对应的初始状态。例如,在服务器生成授权标识后,将该授权标识对应的初始状态确定为待校验状态。
需要说明的是,在本申请实施例中,是以先获取第二地址信息后获取会话标识为例进行说明的,而在另一实施例中,在接收到第二设备发送的图形码显示请求后,先执行获取会话标识的步骤,后执行获取第二地址信息的步骤,或者并行执行获取会话标识的步骤和获取第二地址信息的步骤。
605、第二设备接收服务器发送的第一地址信息及会话标识,存储会话标识,显示包含第一地址信息的图形码。
其中,图形码是该第二设备提供给其他设备扫描的。可选地,该图形码为二维码或条形码等。第二设备将包含第一地址信息的图形码进行显示,以供其他设备扫描。另外,第二设备存储会话标识,以便后续通过该会话标识向服务器查询授权标识的状态,从而能够获知该图形码的处理进度。
在一种可能实现方式中,该步骤605包括:第二设备对第一地址信息进行渲染处理,得到该图形码,从而能够显示该图形码,供其他设备扫描。
需要说明的是,本申请实施例是以服务器生成第一地址信息和会话标识,并将生成的第一地址信息和会话标识发送第二设备为例进行说明的。而在另一实施例中,服务器无需执行步骤604-605,在服务器得到第一地址信息后,仅将第一地址信息发送至第二设备,第二设备接收到第一地址信息后,显示包含第一地址信息的图形码即可,而不再获取会话标识。
本申请实施例提供了一种显示二维码的操作流程,参见图7,该操作流程包括:
1、第二设备在未登录的情况下显示登录页,向服务器发起二维码信息获取流程。
2、服务器通过运行二维码生成服务,根据二维码获取信息请求,生成授权标识,并为授权标识生成会话标识和长链接。
3、服务器通过运行短链服务,将已生成的长链接转换为短链接,从而减小了链接的长度。
4、服务器将授权标识的属性对应存储于数据库中,授权标识的属性包括设备标识、会话标识、初始化的状态、生成时间等。
5、将会话标识和短链接返回给第二设备的登录页,则第二设备根据短链接显示二维码,并开始使用会话标识来轮询查询二维码的状态。
在本申请实施例中,第二设备向服务器发送一次图形码显示请求,通过与服务器进行交互,第二设备显示对应的图形码,第二设备能够向服务器发送多次图形码显示请求,针对不同的图形码显示请求,通过与服务器进行交互,第二设备能够显示不同的图形码。以第二设备在网页中显示图形码为例,在为网页生成图形码的过程中,服务器对网页的Referer以及第二设备的Cookie进行校验,并对设备标识进行限制,以提高图形码显示过程的安全性。
本申请实施例提供的方法,在生成图形码时不是直接生成包含地址信息的图形码,而是对地址信息进行转换处理,减小地址信息的字符长度,再根据减小字符长度后的地址信息来显示图形码,以使图形码中包含的地址信息的字符长度较短,从而减少了图形码中包含的信息量,避免了由于信息量过多而导致图形码显示过于密集的问题,提高了图形码的识别率。
并且,本申请实施例考虑到了Cookie中的设备标识不易被篡改,而请求携带的设备标识易被篡改的特点,在接收到第二设备发送的图形码显示请求后,对图形码显示请求中携带的设备标识和Cookie中的设备标识进行验证,仅在两者相同的情况下才验证通过,避免了图形码显示请求被篡改的情况,提高了安全性。
并且,服务器通过对授权标识进行加密处理,生成会话标识,发送至第二设备来存储,由于会话标识与授权标识具有唯一性,而授权标识又与图形码的状态对应存储,因此后续第二设备能够根据会话标识查询图形码对应的状态,提供了一种状态查询功能,功能更为全面,更加智能化。
基于上述实施例提供的图形码显示方法,第二设备显示图形码,之后第一设备扫描该第二设备显示的图形码,通过第一设备与服务器之间的交互,将第一设备的用户账号授权给第二设备登录,具体过程详见下述实施例。
图8是本申请实施例提供的一种扫码登录方法的流程图,交互主体包括第一设备和服务器,如图8所示,该方法包括:
801、第一设备通过扫描第二设备显示的图形码,获取图形码对应的授权标识和签名值。
在本申请实施例中,第一设备为已登录用户账号的设备,第二设备为未登录用户账号的设备,且第二设备基于上述图6所示实施例,显示图形码,在需要将第一设备的用户账号授权给第二设备登录时,第一设备扫描第二设备显示的图形码,以使后续服务器能够将第一设备的用户账号授权给第二设备登录。
在本申请实施例中,以第一设备获取对应的授权标识的签名值为例进行说明的。基于上述实施例,在第二设备与服务器进行交互的过程中,服务器生成授权标识,并根据第二加密密钥对授权标识进行加密处理后得到签名值,以使后续设备通过扫描图形码获取到授权标识和签名值后,需要多该授权标识及签名值进行验证,以确定图形码未被篡改,从而提高图形码的安全性。因此,在第一设备扫描图形码,得到图形码对应的授权标识和签名值,后续通过与第二加密密钥对应的第二解密密钥,对授权标识和签名值进行验证,以确保图形码未被篡改的情况下,对图形码进行响应。
其中,该授权标识是用于指示该图形码的唯一标识。在本申请实施例中,授权标识是在图形码显示过程中服务器生成的,与第二设备显示的图形码对应,则在扫码登录过程中,第一设备扫描第二设备显示的图形码,得到该授权标识,后能够通过该授权标识,指示针对该图形码的扫码登录过程。
由于第二设备生成的图形码易被篡改,因此,在图形码显示过程中,为授权标识确定对应的签名值,在第一设备扫描第二设备显示的图形码后,能够得到对应的签名值,以便后续第一设备能够对授权标识及签名值进行验证,确保在图形码未被篡改的情况下进行响应。
另外,参见图9,第一设备能够显示扫描界面,通过该扫描界面来扫描第二设备显示的图形码。在一种可能实现方式中,第一设备显示目标应用的首页,首页中包含扫一扫选项,第一设备检测到对扫一扫选项的触发操作时显示该扫描界面。
在一种可能实现方式中,该步骤801包括以下步骤8011-8013:
8011、第一设备扫描第二设备显示的图形码,得到图形码包含的第一地址信息,向服务器发送信息获取请求。
其中,信息获取请求携带第一地址信息。由于第一地址信息是由服务器通过对第二地址信息转换处理得到的,为了获取第一地址信息对应的转换处理前的地址信息,第一设备在获取到第一地址信息后,需要向服务器发送信息获取请求,以获取第一地址信息对应的第二地址信息。
在一种可能实现方式中,第一设备上安装有目标应用,该步骤8011包括:基于该目标应用扫描第二设备显示的图形码,得到该第一地址信息,基于该目标应用,向服务器发送信息获取请求。其中,该服务器为目标应用对应的服务器。例如,该目标应用为即时通信应用,通过该即时通信应用中的“扫一扫”功能,扫描第二设备显示的图形码,得到第一地址信息。
可选地,第一设备上配置有摄像头,基于该目标应用,调用摄像头扫描图形码,得到第一地址信息。例如,用户对即时通信应用中的“扫一扫”按钮的点击操作,第一设备调用摄像头,扫描第二设备显示的图形码,得到第一地址信息。
8012、服务器接收第一设备发送的信息获取请求,查询地址对应关系,确定与第一地址信息对应的第二地址信息,向第一设备发送第二地址信息。
其中,地址对应关系中存储有第一地址信息与第二地址信息的对应关系。在服务器接收到第一设备发送的第一地址信息后,能够从地址对应关系中,确定与第一地址信息对应的第二地址信息,以使将第二地址信息发送至第一设备。
另外,为了保证第二设备显示的图形码的安全性,服务器设置该第一地址信息对应的参考时长,该参考时长用于表示第一地址信息的有效时长,如果该第一地址信息的生成时长小于参考时长,则该第一地址信息处于有效状态,吐过该第一地址信息的生成时长不小于参考时长,则该第一地址信息处于失效状态。
相应地,该步骤8012包括:服务器接收第一设备发送的信息获取请求,响应于第一地址信息的生存时长小于参考时长,查询地址对应关系,确定与第一地址信息对应的第二地址信息,向第一设备发送第二地址信息。响应于第一地址信息的生存时长不小于参考时长,向第一设备发送拒绝通知,以提示该第一地址信息已失效。
8013、第一设备接收服务器发送的第二地址信息,获取第二地址信息对应的授权标识。
由于第二地址信息是服务器根据图形码显示请求生成的,且该第二地址信息与授权标识对应。因此,在第一设备获取到第二地址信息后,能够获取与第二地址信息对应的授权标识。
在一种可能实现方式中,第二地址信息中包含该授权标识,则该步骤8013包括:从第二地址信息中提取授权标识。
可选地,第二地址信息中包含多个字段,每个字段对应不同的信息,确定第二地址信息中授权标识对应的字段,提取该字段中的授权标识。例如,第二地址信息中包括Action字段,从Action中提取Code,即为授权标识。
在一种可能实现方式中,第二地址信息是由服务器根据签名值及授权标识,生成的,则该步骤8013包括:第一设备接收服务器发送的第二地址信息,获取第二地址信息对应的授权标识及签名值。
需要说明的是,本申请实施例是以第一设备获取图形码对应的授权标识和签名值为例进行说明的,而在另一实施例中,第一设备通过扫描第二设备显示的图形码后,获取图形码对应的授权标识,而不再获取图形码对应的签名值。
802、第一设备根据第二解密密钥,对授权标识及签名值进行验证,响应于验证通过,根据第一设备对图形码的处理进度,确定与处理进度匹配的第二状态,向服务器发送扫码通知。
在本申请实施例中,服务器根据对图形码的处理进度,为图形码对应的授权标识,确定与处理进度匹配的状态,并将授权标识与确定的状态对应存储。与授权标识对应存储的状态包括待授权状态、已扫码状态或已确认状态等,该待授权状态为在第二设备显示图形码时,服务器为授权标识确定的状态,已扫码状态用于表示该图形码已经被其他设备扫描,已确认状态用于表示其他设备已确认将其他设备的用户账户授权给第二设备登录。
在第一设备与服务器进行交互的过程中,第一设备根据对图形码的处理进度,将与处理进度匹配的状态发送至服务器,以使服务器将第一设备确定的状态与授权标识对应存储,实现了服务器实时更新与授权标识对应存储的状态,以使服务器后续能够按照第一设备对图形码的处理进度,将第一设备的用户账号授权给第二设备登录。
在本申请实施例中,由于第二设备获取到图形码对应的授权标识及签名值,该签名值是由服务器根据第二解密密钥对授权标识进行加密处理得到的,因此,在第二设备获取到签名值后,通过与第二加密密钥对应的第二解密密钥,对授权标识及签名值进行验证,以确保扫描第二设备显示的图形码未被篡改的情况下,执行后续的操作。
其中,第二加密密钥与第二解密密钥对应。可选地,第二加密密钥为第二私钥,第二解密密钥为第二公钥。可选地,第二加密密钥为第二公钥,第二解密密钥为第二私钥。可选地,第二加密密钥与第二解密密钥为对称密钥,即第二加密密钥和第二解密密钥相同。
扫码通知携带授权标识和第二状态,以使服务器能够获知授权标识对应的第二状态。在第一设备确定第二状态后,向服务器发送扫码通知,以使服务器能够确定图形码的处理进度,从而为该图形码对应的授权标识更新对应的状态。
由于第一设备在获取到的授权标识及签名值后,通过第二解密密钥,对授权标识及签名值进行验证,以确保图形码未被篡改。在验证通过时,表示图形码中包含的信息未被篡改,则对图形码执行后续处理过程,在验证未通过时,表示图形码中包含的信息被篡改,则不会对图形码执行后续处理过程。
在一种可能实现方式中,该步骤802包括:第一设备根据第二解密密钥对签名值进行解密处理,得到该签名值对应的第一哈希值,通过参考算法对该授权标识进行计算处理,得到第二哈希值,响应于第一哈希值与第二哈希值相同,确定验证通过,响应于第一哈希值与第二哈希值不同,确定验证失败。
需要说明的是,本申请实施例是以第一设备获取授权标识及签名值为例,在第一设备对授权标识及签名值验证通过的情况下,确定与处理进度匹配的第二状态,并向服务器发送扫码通知,而在另一实施例中,在第一设备仅获取到授权标识的情况下,第一设备直接根据第一设备对图形码的处理进度,确定与处理进度匹配的第二状态,向服务器发送扫码通知。
803、服务器接收第一设备发送的扫码通知,查询与授权标识对应存储的第三状态,响应于第二状态为第三状态的下一个状态,将与授权标识对应存储的第三状态更新为第二状态,向第一设备发送状态更新通知。
其中,第三状态为待校验状态,第二状态为已扫码状态。
服务器根据扫码通知携带的授权标识和第二状态,查询与授权标识对应存储的状态,即第三状态,则服务器确定第二状态为第三状态的下一个状态,将与授权标识对应存储的状态进行更新,即将与授权标识对应存储的第三状态更新为第二状态,表示第一设备已经扫描图形码完成。其中,状态更新通知用于指示服务器已更新授权标识对应存储的状态。
在一种可能实现方式中,在服务器接收到扫码通知后,该方法还包括:查询与授权标识对应存储的第四状态,响应于第二状态不是第四状态的下一个状态,向第一设备发送拒绝更新通知。
其中,状态更新失败通知用于指示服务器针对扫码通知,将与授权标识对应存储的状态更新失败。
在本申请实施例中,在第一设备与服务器进行交互的过程中,服务器根据第一设备对图形码的处理进度,依次更新授权标识对应存储的状态。例如,在第二设备显示图形码后,服务器确定与授权标识对应的待授权状态,在第一设备扫描图形码后,服务器确定与授权标识对应的已扫码状态,在第一设备对图形码执行确认操作后,服务器确认与授权标识对应的已确认状态。
服务器确定第二状态不是第四状态的下一个状态,表示与授权标识对应存储的状态与第一设备发送的状态之间有跳转,则服务器无法按照对图形码的处理进度依次更新存储的状态,因此,向第一设备发送拒绝更新通知,以提示第一设备发送的状态更新存在跳转。
在一种可能实现方式中,扫码通知还携带设备标识,该设备标识用于指示发送扫码通知的设备;则在服务器接收到扫码通知后,该方法还包括:响应于未查询到与授权标识对应存储的设备标识,将扫码通知中携带的设备标识与授权标识对应存储。
服务器未查询到与授权标识对应存储的设备标识,表示扫码请求是第一设备扫描图形码后,第一次向服务器发送的请求,则服务器将扫码通知中的设备标识与授权标识对应存储,以保证后续第一设备与服务器进行交互的过程中,服务器根据与授权标识对应存储的设备标识,对第一设备向服务器发送的数据进行验证,来确定数据是否被篡改。
804、第一设备接收服务器发送的状态更新通知,根据第一设备对图形码的处理进度,确定与处理进度匹配的第一状态,向服务器发送授权登录请求。
其中,第一状态为已确认状态,在第一设备接收到服务器发送的状态更新通知后,确定服务器已经将第一设备发送的状态进行存储,因此,第一设备会对图形码进行下一步处理,从而得到与处理进度匹配的第一状态。授权登录请求携带授权标识及第一状态,以使服务器能够根据该授权标识,对与授权标识对应存储的状态进行更新。
在一种可能实现方式中,该步骤804包括:第一设备接收服务器发送的状态更新通知,显示待确认界面,检测到对该待确认界面中的确认按钮的触发操作,确定第一状态,向服务器发送授权登录请求。
在一种可能实现方式中,该步骤804包括:第一设备根据第一加密密钥,对授权标识及第一状态进行加密处理,得到授权信息,向服务器发送授权登录请求,授权登录请求携带授权信息。
其中,第一加密密钥为第一设备存储的密钥。第一设备向服务器发送授权登录请求的过程中,由于授权信息是第一设备根据第一加密密钥进行加密处理得到的,降低了被篡改的风险,从而提高了授权信息的安全性。
805、服务器接收第一设备发送的授权登录请求,查询与授权标识对应存储的第二状态,响应于第一状态为第二状态的下一个状态,将第一设备的用户账号授权给授权标识对应的第二设备登录,并将与授权标识对应存储的第二状态更新为第一状态。
其中,授权登录请求携带授权标识及第一状态,以使服务器能够确定授权标识对应的图形码的处理进度。用户账号为第一设备中登录的账号,可选地,该用户账号为身份证号、手机号或昵称等。
在本申请实施例中,第一状态为已确认状态,第二状态为已扫码状态,服务器接收到第一设备发送的第一状态为已确认状态,则更新本地与授权标识对应存储的状态。服务器确定第一设备发送的已确认状态,表示第一设备已确认将用户账号授权给第二设备登录,因此,服务器将第一设备的用户账号授权给授权标识对应的第二设备登录。
在本申请实施例中,第二设备与服务器之间采用WebSocket(一种通信协议)进行通信。通过该通信连接方式,在服务器确定与授权标识对应的状态为已确认状态时,服务器能够直接将第一设备的用户账号授权给授权标识对应的第二设备登录。
在一种可能实现方式中,与该授权标识对应存储有第二设备标识,服务器查询与该授权标识对应存储的第二设备标识,即确定与该授权标识对应的第二设备。
在一种可能实现方式中,该步骤805包括:服务器确定第一设备登录的用户账号,将第一设备登录的用户账号授权给授权标识对应的第二设备登录。
在一种可能实现方式中,授权登录请求携带授权信息,该授权信息是由第一设备根据第一加密密钥,对授权标识及第一状态进行加密处理后得到的,则在步骤805之前,该方法还包括:根据第一解密密钥,对授权信息进行解密处理,得到授权标识及第一状态。其中,第一加密密钥与第一解密密钥对应。可选地,第一加密密钥为第一公钥,第二解密密钥为第二私钥。
第一设备向服务器发送授权登录请求时,请求中的域名采用HTTPS形式,或者HTTP+IP的形式。且为了避免授权登录请求被篡改,通过第一设备中存储的第一加密密钥对授权标识及第一状态进行加密处理后,将授权信息发送至服务器,再由服务器根据第一解密密钥,对授权信息进行解密处理,保证了授权信息的安全性。
在一种可能实现方式中,授权登录请求还携带设备标识,设备标识用于指示发送授权登录请求的设备;则该步骤805包括:服务器查询与授权标识对应存储的第二状态和设备标识,响应于第一状态为第二状态的下一个状态、且授权标识对应的设备标识与授权登录请求中的设备标识相同,将第一设备的用户账号授权给授权标识对应的第二设备登录,并将与授权标识对应存储的第二状态更新为第一状态。
为了避免授权登录请求中携带的授权标识被篡改,服务器在确定授权标识对应存储的设备标识与授权登录请求中携带的设备标识相同,则标识发送授权登录请求的第一设备的数据未被篡改,则能够为该授权标识进行授权登录。
需要说明的是,本申请实施例是以第一设备先发送扫码通知,在发送授权登录请求为例进行说明的,而在另一实施例中,无需执行上述发送扫码通知,在第一设备获取到图形码对应的授权标识后,确定与处理进度匹配的第一状态,向服务器发送授权登录请求即可。
在一种可能实现方式中,在服务器中,与授权标识对应存储的状态包括待校验状态或已扫码状态,第一状态为已扫码状态,第二状态为待校验状态。则在服务器接收到第一设备发送的授权登录请求后,响应于第一状态为第二状态的下一个状态,将第一设备的用户账号授权给授权标识对应的第二设备登录。
806、服务器向第一设备发送状态更新通知。
其中,状态更新通知用于指示服务器已更新授权标识对应的状态。
807、第一设备接收服务器发送的状态更新通知,显示授权登录完成消息。
其中,授权登录完成消息用于指示服务器已将第一设备的用户账号授权给第二设备登录。
第一设备接收到服务器发送的状态更新通知,从而获知服务器已经更新授权标识对应的状态,则第一设备已经授权登录完成,通过显示授权登录完成消息,以提示用户已经授权登录完成。
在一种可能实现方式中,在步骤807之后,该方法还包括:第一设备显示已登录完成的界面。
需要说明的是,在本申请实施例中,服务器确定与授权标识对应的状态为已确认状态时,以服务器直接将第一设备的用户账号授权给授权标识对应的第二设备登录为例进行说明的,而在另一实施例中,服务器确定与授权标识对应的状态为已确认状态时,服务器仅将与授权标识对应存储的第二状态更新为第一状态。
在一种可能实现方式中,服务器将第一设备的用户账号授权给授权标识对应的第二设备登录的过程,包括以下步骤808-810:
808、第二设备向服务器发送状态查询请求,状态查询请求携带会话标识。
其中,第二设备向服务器发送状态查询请求,以确定与授权标识对应存储的状态,也即是用于确定图形码的处理进度。
在一种可能实现方式中,在第二设备显示图形码之后,每间隔参考时长,向服务器发送状态查询请求。其中,参考时长为任意时长,如5秒、2秒等。第二设备每间隔参考时长,向服务器发送状态查询请求,以确保能够定时地获取到服务器中与授权标识对应存储的状态,也即是能够及时确定图形码的处理进度。
809、服务器接收第二设备发送的状态查询请求,根据第三解密密钥,对会话标识进行解密处理,得到会话标识对应的授权标识,确定与授权标识对应存储的状态,向第二设备发送状态通知。
其中,第三加密密钥与第三解密密钥对应。可选地,第三加密密钥为第三私钥,第三解密密钥为公钥,可选地,第三加密密钥与第三解密密钥为对称密钥,均存储于服务器中。在对会话标识解密处理后,能够确定会话标识对应的授权标识,则能够查询与授权标识对应存储的状态。
在一种可能实现方式中,状态查询请求还携带第二设备的Cookie,Cookie中包括第二设备标识,会话标识中包含设备标识,设备标识用于指示发送图形码显示请求的设备,则该步骤809包括:响应于Cookie中的第二设备标识及会话标识中的设备标识相同,根据会话标识中的授权标识,确定授权标识对应存储的状态。
其中,Cookie是由服务器为第二设备生成的,服务器在生成Cookie后,将该Cookie发送至第二设备后进行存储。在服务器接收到状态查询请求后,对状态查询请求中的授权标识与Cookie中的授权标识进行对比处理,在确定两者相同时,才会执行后续的步骤,以确保状态查询请求未被篡改。
在一种可能实现方式中,会话标识中包含授权标识的生成时间,则该步骤809包括:响应于生成时间满足参考格式,确定授权标识对应存储的状态。
其中,参考格式是固定格式。通过会话标识对应的生成时间,确定该生成时间是否满足固定格式,在满足固定格式时,确定验证通过,执行后续步骤。
在一种可能实现方式中,该步骤809包括:查询与授权标识对应存储的另一会话标识,响应于状态查询请求中携带的会话标识与查询到的另一会话标识相同,确定与授权标识对应存储的状态。
服务器查询本地存储的、且与授权标识对应存储的另一会话标识。通过对接收到的会话标识和本地存储的会话标识进行对比处理,在确定两者相同时,表示状态查询请求与该授权标识一直,则后续执行确定对应存储的状态的步骤。
810、第二设备接收服务器发送的状态通知,该状态通知包含确定的状态。
第二设备接收到服务器发送的状态通知,根据状态通知中携带的状态能够确定当前所处的状态。
在一种可能实现方式中,确定的状态不是已确认状态,第二设备后续向服务器发送状态查询请求。如果确定的状态为已确认状态,则第二设备确定当前已授权,后续不再向服务器发送状态查询请求。服务器将第一设备的用户账号授权给第二设备登录,则第二设备显示登录后的界面。
另外,本申请实施例仅是以第二设备向服务器发送以此状态查询请求进行说明的。在一种可能实现方式中,在步骤810之后,该方法还包括:第二设备根据状态通知,确定与授权标识对应存储的状态不是已确认状态,每相隔预设时长,向服务器发送一次状态查询请求,重复执行步骤808-810的过程。
在第二设备向服务器轮询图形码对应的状态的过程中,由于会话标识是加密处理后的,则服务器需要先对会话标识进行解密处理,才能查询图形码对应的状态,防止了暴力匹配攻击。并且,服务器中将会话标识与授权标识对应存储,即使会话标识被篡改或者被其他标识模仿,也无法与服务器中授权标识对应的信息及状态匹配,即无法获取到图形码对应的状态。
在第一设备获取到第一地址信息后,通过向服务器发送信息获取请求,获取第二地址信息,实现了一次302跳转,将短链的第一地址信息指向到业务的长链的第二地址信息,实现了地址信息跳转。且地址信息跳转是同时支持HTTP和HTTPS的,为了避免在地址信息跳转过程中,HTTPS降级成HTTP时,地址信息被篡改的风险,在第二地址信息中增加签名值,生成签名值的私钥存储于服务器,并将验签使用的公钥存储在第一设备中,以使第一设备在获取到第二地址信息后,通过存储的公钥对第二地址信息进行验签,在验签通过后,在进行后续流程,提高了授权过程的安全性。
本申请实施例提供了一种查询状态的操作流程,参见图10,该操作流程包括:
1、第二设备显示页面上的二维码,定时向服务器发起状态查询请求,状态查询请求携带会话标识。
2、服务器对状态查询请求的参数进行校验,校验完成后在数据库中查询与授权标识对应存储的状态。
3、若查询到的状态为未授权状态,则返回给第二设备,若查询到的状态为已授权状态,则调用票据服务来生成票据,并删除数据库中的授权标识和状态,向第二设备返回登录态信息。
4、第二设备接收服务器发送的登录态信息,显示登录后的界面。
本申请实施例提供的方法,由服务器根据对图形码的处理进度确定与授权标识对应存储的状态,并根据接收到的请求来更新图形码的状态,以使图形码的状态跟随图形码的处理进度而发生变化。因此,第一设备在扫描第二设备显示的图形码后根据第一设备对该图形码的处理进度确定此时的图形码状态为第一状态,并在发送给服务器的授权登录请求中携带该第一状态,若第一状态是服务器中与授权标识对应存储的第二状态的下一个状态,表示图形码的状态先后顺序准确,能够通过安全验证,因此将第一设备的用户账号授权登录给第二设备。采用这种验证状态先后顺序的方式对授权登录请求进行验证,方式虽然简单,但是保证了图形码的每个处理流程均需依次进行,避免了在图形码的处理流程中出现跨流程的现象,充分保证了授权过程的安全性,且在授权登录的过程中,无需用户在第二设备上手动输入账号,提高了便捷性。
并且,第一设备在获取到授权标识和签名值后,对授权标识和签名值进行验证,以确保获取到的授权标识和签名值是由服务器生成的,避免了数据被篡改,提高了安全性。
并且,第一设备向服务器发送的加密后的授权信息,避免了授权信息被窃取后导致信息泄露的问题,提高了传输数据的安全性。
图11是本申请实施例提供的一种扫码登录方法的流程图,如图11所示,该方法包括:
1101、第一设备通过扫描第二设备显示的图形码,获取图形码对应的授权标识和签名值。
该步骤与上述步骤801类似,在此不再赘述。
1102、第一设备根据第二解密密钥,对授权标识及签名值进行验证,响应于验证通过,根据第一设备对图形码的处理进度,确定与处理进度匹配的第一状态,向服务器发送授权登录请求。
在本申请实施例中,服务器根据对图形码的处理进度,为图形码对应的授权标识,确定与处理进度匹配的状态,并将授权标识与确定的状态对应存储。与授权标识对应存储的状态包括待授权状态或已扫码状态等,该待授权状态为在第二设备显示图形码时,服务器为授权标识确定的状态,已扫码状态用于表示该图形码已经被其他设备扫描。
其中,第一状态为已扫码状态,授权登录请求中携带第一状态及授权标识。
该步骤与上述步骤802类似,在此不再赘述。
1103、服务器接收第一设备发送的授权登录请求,查询与授权标识对应存储的第二状态,响应于第一状态为第二状态的下一个状态,将第一设备的用户账号授权给授权标识对应的第二设备登录,并将与授权标识对应存储的第二状态更新为第一状态。
该步骤与上述步骤805类似,在此不再赘述。
与上述图8所示实施例的区别在于,在本申请实施例中,与授权标识对应存储的状态包括待授权状态或已扫码状态,而不包括已确认状态,第一设备扫描图形码后无需向服务器发送扫码通知,直接向服务器发送授权登录请求,该授权登录请求携带的状态为已扫码状态。
本申请实施例提供了一种扫码登录的操作流程,参见图12,该操作流程包括:
1、第二设备显示二维码。
2、第一设备上的目标应用扫描第二设备显示的二维码,获取到二维码中的短链接。
3、根据短链接请求获取长链接,根据长链接获取授权标识和签名值,进行验证。
4、验证后向服务器发起授权登录请求。
5、服务器通过运行登录授权服务,获取授权标识和携带的状态,从数据库中拉取与授权标识对应存储的状态,从而对授权登录请求携带的状态进行合法性校验,在合法性校验通过的情况下进行授权登录,并更新授权标识对应存储的状态。
图13是本申请实施例提供的一种扫码登录装置的结构示意图,如图13所示,该装置包括:扫描模块1301、状态确定模块1302和发送模块1303。
扫描模块1301,用于通过扫描第二设备显示的图形码,获取该图形码对应的授权标识;
第一状态确定模块1302,用于根据该第一设备对该图形码的处理进度,确定与该处理进度匹配的第一状态;
发送模块1303,用于向服务器发送授权登录请求,该授权登录请求携带该授权标识及该第一状态,该服务器用于查询与该授权标识对应存储的第二状态,该第二状态由该服务器根据对该图形码的处理进度确定,响应于该第一状态为该第二状态的下一个状态,将该第一设备的用户账号授权给该授权标识对应的第二设备登录,并将与该授权标识对应存储的该第二状态更新为该第一状态。
本申请实施例提供的装置,由服务器根据对图形码的处理进度确定与授权标识对应存储的状态,并根据接收到的请求来更新图形码的状态,以使图形码的状态跟随图形码的处理进度而发生变化。因此,第一设备在扫描第二设备显示的图形码后根据第一设备对该图形码的处理进度确定此时的图形码状态为第一状态,并在发送给服务器的授权登录请求中携带该第一状态,若第一状态是服务器中与授权标识对应存储的第二状态的下一个状态,表示图形码的状态先后顺序准确,能够通过安全验证,因此将第一设备的用户账号授权登录给第二设备。采用这种验证状态先后顺序的方式对授权登录请求进行验证,方式虽然简单,但是保证了图形码的每个处理流程均需依次进行,避免了在图形码的处理流程中出现跨流程的现象,充分保证了授权过程的安全性,且在授权登录的过程中,无需用户在第二设备上手动输入账号,提高了便捷性。
在一种可能实现方式中,与该授权标识对应存储的状态包括待校验状态或已扫码状态,该第一状态为已扫码状态,该第二状态为待校验状态。
如图14所示,在一种可能实现方式中,与该授权标识对应存储的状态包括待校验状态、已扫码状态或已确认状态;该第一状态为已确认状态,该第二状态为已扫码状态,该第三状态为待校验状态;该装置还包括:
第二状态确定模块1304,用于根据该第一设备对该图形码的处理进度,确定与该处理进度匹配的该第二状态;
该发送模块1303,还用于向该服务器发送扫码通知,该扫码通知携带该授权标识及该第二状态,该服务器用于查询与该授权标识对应存储的该第三状态,响应于该第二状态为该第三状态的下一个状态,将与该授权标识对应存储的该第三状态更新为该第二状态。
在一种可能实现方式中,该扫描模块1301,用于通过扫描该第二设备显示的图形码,获取该图形码对应的授权标识和签名值,该签名值由该服务器根据第二加密密钥对该授权标识进行加密处理后得到;
该第二状态确定模块1304,包括:
验证单元1314,用于根据第二解密密钥,对该授权标识及该签名值进行验证,该第二加密密钥与该第二解密密钥对应;
确定单元1324,用于响应于验证通过,根据该第一设备对该图形码的处理进度,确定与该处理进度匹配的第二状态。
在一种可能实现方式中,该扫码通知还携带设备标识,该设备标识用于指示发送该扫码通知的设备;
该服务器用于响应于未查询到与该授权标识对应存储的设备标识,将该扫码通知中携带的设备标识与该授权标识对应存储。
在一种可能实现方式中,该扫描模块1301,包括:
扫描单元1311,用于扫描该第二设备显示的图形码,得到该图形码包含的第一地址信息;
请求发送单元1321,用于向该服务器发送信息获取请求,该信息获取请求携带第一地址信息,该服务器用于查询地址对应关系,确定与该第一地址信息对应的第二地址信息,该第二地址信息的字符长度大于该第一地址信息的字符长度;
接收单元1331,用于接收该服务器发送的第二地址信息;
获取单元1341,用于获取该第二地址信息对应的授权标识。
在一种可能实现方式中,该获取单元1341,用于从该第二地址信息中提取该授权标识。
在一种可能实现方式中,该发送模块1303,包括:
加密单元1313,用于根据第一加密密钥,对该授权标识及该第一状态进行加密处理,得到授权信息;
请求发送单元1323,用于向该服务器发送该授权登录请求,该授权登录请求携带该授权信息,该服务器用于根据第一解密密钥对该授权信息进行解密处理,得到该授权标识及该第一状态,该第一加密密钥与该第一解密密钥对应。
在一种可能实现方式中,该装置还包括:
接收模块1305,用于接收该服务器发送的状态更新通知,该状态更新通知用于指示该服务器已更新该授权标识对应的状态。
图15是本申请实施例提供的一种扫码登录装置的结构示意图,如图15所示,该装置包括:接收模块1501、第一查询模块1502和授权登录模块1503。
接收模块1501,用于接收第一设备发送的授权登录请求,该授权登录请求携带授权标识及第一状态,该授权标识由该第一设备扫描第二设备显示的图形码后得到,该第一状态为该第一设备根据对该图形码的处理进度确定的状态;
第一查询模块1502,用于查询与该授权标识对应存储的第二状态,该第二状态由服务器根据对该图形码的处理进度确定;
授权登录模块1503,用于响应于该第一状态为该第二状态的下一个状态,将该第一设备的用户账号授权给该授权标识对应的第二设备登录,并将与该授权标识对应存储的该第二状态更新为该第一状态。
本申请实施例提供的装置,由服务器根据对图形码的处理进度确定与授权标识对应存储的状态,并根据接收到的请求来更新图形码的状态,以使图形码的状态跟随图形码的处理进度而发生变化。因此,第一设备在扫描第二设备显示的图形码后根据第一设备对该图形码的处理进度确定此时的图形码状态为第一状态,并在发送给服务器的授权登录请求中携带该第一状态,若第一状态是服务器中与授权标识对应存储的第二状态的下一个状态,表示图形码的状态先后顺序准确,能够通过安全验证,因此将第一设备的用户账号授权登录给第二设备。采用这种验证状态先后顺序的方式对授权登录请求进行验证,方式虽然简单,但是保证了图形码的每个处理流程均需依次进行,避免了在图形码的处理流程中出现跨流程的现象,充分保证了授权过程的安全性,且在授权登录的过程中,无需用户在第二设备上手动输入账号,提高了便捷性。
在一种可能实现方式中,与该授权标识对应存储的状态包括待校验状态或已扫码状态,该第一状态为已扫码状态,该第二状态为待校验状态。
如图16所示,在一种可能实现方式中,与该授权标识对应存储的状态包括待校验状态、已扫码状态或已确认状态;该第一状态为已确认状态,该第二状态为已扫码状态,该第三状态为待校验状态;该装置还包括:
该接收模块1501,还用于接收该第一设备发送的扫码通知,该扫码通知携带该授权标识及该第二状态;
第二查询模块1504,还用于查询与该授权标识对应存储的第三状态;
授权登录模块1503,还用于响应于该第二状态为该第三状态的下一个状态,将与该授权标识对应存储的该第三状态更新为该第二状态。
在一种可能实现方式中,该扫码通知还携带设备标识,该设备标识用于指示发送该扫码通知的设备;该装置还包括:
存储模块1505,用于响应于未查询到与该授权标识对应存储的设备标识,将该扫码通知中携带的设备标识与该授权标识对应存储。
在一种可能实现方式中,该授权登录请求还携带设备标识,该设备标识用于指示发送该授权登录请求的设备;该第一查询模块1502,用于查询与该授权标识对应存储的该第二状态和设备标识;
该授权登录模块1503,用于响应于该第一状态为该第二状态的下一个状态、且该授权标识对应的设备标识与该授权登录请求中的设备标识相同,将该第一设备的用户账号授权给该授权标识对应的第二设备登录,并将与该授权标识对应存储的该第二状态更新为该第一状态。
在一种可能实现方式中,该装置还包括:
该接收模块1501,还用于接收该第一设备发送的信息获取请求,该信息获取请求携带第一地址信息,该第一地址信息是由该第一设备扫描第二设备显示的图形码后得到的;
第三查询模块1506,用于查询地址对应关系,确定与该第一地址信息对应的第二地址信息,该第二地址信息的字符长度大于该第一地址信息的字符长度;
发送模块1507,用于向该第一设备发送该第二地址信息,该第一设备用于获取该第二地址信息对应的授权标识。
在一种可能实现方式中,该授权登录请求携带授权信息,该授权信息是由该第一设备根据第一加密密钥,对该授权标识及该第一状态进行加密处理后得到的;该装置还包括:
解密模块1512,用于根据第一解密密钥,对该授权信息进行解密处理,得到该授权标识及该第一状态,该第一加密密钥与该第一解密密钥对应。
在一种可能实现方式中,该装置还包括:
发送模块1507,用于向该第一设备发送状态更新通知,该状态更新通知用于指示该服务器已更新该授权标识对应的状态。
在一种可能实现方式中,该装置还包括:
该接收模块1501,用于接收第二设备发送的图形码显示请求;
生成模块1508,用于根据该图形码显示请求,生成该授权标识及与该授权标识对应的第二地址信息;
转换模块1509,用于对该第二地址信息进行转换处理,得到该第二地址信息对应的第一地址信息,该第二地址信息的字符长度大于该第一地址信息的字符长度;
发送模块1507,用于向该第二设备发送该第一地址信息,该第二设备用于显示包含该第一地址信息的图形码。
在一种可能实现方式中,该图形码显示请求携带设备标识及该第二设备的Cookie,该设备标识用于指示发送该图形码显示请求的设备,该Cookie中包括第二设备标识;
该生成模块1508,用于响应于该Cookie中的第二设备标识及该图形码显示请求携带的设备标识相同,根据该图形码显示请求,生成该授权标识及与该授权标识对应的第二地址信息。
在一种可能实现方式中,该生成模块1508,包括:
加密单元15081,用于根据第二加密密钥,对该授权标识进行加密处理,得到签名值;
生成单元15082,用于根据该签名值及该授权标识,生成该第二地址信息。
在一种可能实现方式中,该装置还包括:
加密模块1510,用于根据第三加密密钥,对该授权标识进行加密处理,得到该会话标识;
该发送模块1507,用于向该第二设备发送该第一地址信息及该会话标识,该第二设备用于显示包含该第一地址信息的图形码,存储该会话标识,该会话标识用于查询该授权标识对应的状态。
在一种可能实现方式中,该图形码显示请求携带设备标识,该设备标识用于指示发送该图形码显示请求的设备;该加密模块1510,用于根据该第三加密密钥,对该授权标识及该设备标识进行加密处理,得到该会话标识。
在一种可能实现方式中,该装置还包括:
确定模块1511,用于确定该授权标识的生成时间;
该加密模块1510,用于根据该第三加密密钥,对该授权标识及该生成时间进行加密处理,得到该会话标识。
在一种可能实现方式中,该装置还包括:
该接收模块1501,用于接收该第二设备发送的状态查询请求,该状态查询请求携带该会话标识;
解密模块1512,用于根据第三解密密钥,对该会话标识进行解密处理,得到该会话标识对应的授权标识,该第三加密密钥与该第三解密密钥对应;
确定模块1511,用于确定与该授权标识对应存储的状态;
该发送模块1507,用于向该第二设备发送状态通知,该状态通知包含确定的状态。
在一种可能实现方式中,该状态查询请求还携带该第二设备的Cookie,该Cookie中包括第二设备标识;该会话标识中包含设备标识,该设备标识用于指示发送该图形码显示请求的设备;
该确定模块1511,用于响应于该Cookie中的第二设备标识及该会话标识中的设备标识相同,确定与该授权标识对应存储的状态。
在一种可能实现方式中,该会话标识中包含该授权标识的生成时间;
该确定模块1511,用于响应于该生成时间满足参考格式,确定该授权标识对应存储的状态。
在一种可能实现方式中,该确定模块1511,包括:
查询单元15111,用于查询与该授权标识对应存储的另一会话标识;
确定单元15112,用于响应于该状态查询请求中携带的会话标识与查询到的另一会话标识相同,确定与该授权标识对应存储的状态。
图17是本申请实施例提供的一种图形码显示装置的结构示意图,如图17所示,该装置包括:发送模块1701、接收模块1702和显示模块1703。
发送模块1701,用于向服务器发送图形码显示请求,该服务器用于根据该图形码显示请求,生成该授权标识及与该授权标识对应的第二地址信息,对该第二地址信息进行转换处理,得到该第二地址信息对应的第一地址信息,该第二地址信息的字符长度大于该第一地址信息的字符长度;
接收模块1702,用于接收该服务器发送的该第一地址信息;
显示模块1703,用于显示包含该第一地址信息的图形码。
本申请实施例提供的装置,在生成图形码时不是直接生成包含地址信息的图形码,而是对地址信息进行转换处理,减小地址信息的字符长度,再根据减小字符长度后的地址信息来显示图形码,以使图形码中包含的地址信息的字符长度较短,从而减少了图形码中包含的信息量,避免了由于信息量过多而导致图形码显示过于密集的问题,提高了图形码的识别率。
在一种可能实现方式中,应用于第二设备,该图形码显示请求携带第二设备标识及第二设备的Cookie,该第二设备标识用于指示发送该图形码显示请求的第二设备,该Cookie中包括该第二设备标识。
如图18所示,在一种可能实现方式中,该装置还包括:
该接收模块1702,用于接收该服务器发送的会话标识,该会话标识是由该服务器根据第三加密密钥,对该授权标识进行加密处理后得到的;
存储模块1704,用于存储该会话标识。
在一种可能实现方式中,该装置还包括:
该发送模块1701,还用于向该服务器发送状态查询请求,该状态查询请求携带该会话标识,该服务器用于根据第三解密密钥,对该会话标识进行解密处理,得到该会话标识对应的授权标识,确定与该授权标识对应存储的状态;
该接收模块1702,还用于接收该服务器发送的状态通知,该状态通知包含确定的状态。
图19是本申请实施例提供的一种图形码显示装置的结构示意图,如图19所示,该装置包括:接收模块1901、生成模块1902、转换模块1903和发送模块1904。
接收模块1901,用于接收第二设备发送的图形码显示请求;
生成模块1902,用于根据该图形码显示请求,生成该授权标识及与该授权标识对应的第二地址信息;
转换模块1903,用于对该第二地址信息进行转换处理,得到该第二地址信息对应的第一地址信息,该第二地址信息的字符长度大于该第一地址信息的字符长度;
发送模块1904,用于向该第二设备发送该第一地址信息,该第二设备用于显示包含该第一地址信息的图形码。
本申请实施例提供的装置,在生成图形码时不是直接生成包含地址信息的图形码,而是对地址信息进行转换处理,减小地址信息的字符长度,再根据减小字符长度后的地址信息来显示图形码,以使图形码中包含的地址信息的字符长度较短,从而减少了图形码中包含的信息量,避免了由于信息量过多而导致图形码显示过于密集的问题,提高了图形码的识别率。
图20是本申请实施例提供的一种计算机设备的结构示意图,可以实现上述实施例中第一设备或第二设备执行的操作。计算机设备2000还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,计算机设备2000包括有:处理器2001和存储器2002。
处理器2001可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。存储器2002可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的,用于存储至少一个指令,该至少一个指令用于被处理器2001所具有以实现本申请中方法实施例提供的扫码登录方法或图形码显示方法。
在一些实施例中,计算机设备2000还可选包括有:外围设备接口2003和至少一个外围设备。处理器2001、存储器2002和外围设备接口2003之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口2003相连。具体地,外围设备包括:射频电路2004、显示屏2005和音频电路2006中的至少一种。
射频电路2004用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路2004通过电磁信号与通信网络及其他通信设备进行通信。
显示屏2005用于显示UI(UserInterface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。该显示屏2005可以是触摸显示屏,还可以用于提供虚拟按钮和/或虚拟键盘。
音频电路2006可以包括麦克风和扬声器。麦克风用于采集用户及环境的音频信号,并将音频信号转换为电信号输入至处理器2001进行处理,或者输入至射频电路2004以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在计算机设备2000的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器2001或射频电路2004的电信号转换为音频信号。
本领域技术人员可以理解,图20中示出的结构并不构成对计算机设备2000的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图21是本申请实施例提供的一种服务器的结构示意图,该服务器2100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central ProcessingUnits,CPU)2101和一个或一个以上的存储器2102,其中,存储器2102中存储有至少一条程序代码,至少一条程序代码由处理器2101加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
服务器2100可以用于执行上述扫码登录方法或图形码显示方法中服务器所执行的步骤。
本申请实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,存储器中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行以实现上述实施例的上述扫码登录方法或图形码显示方法中所执行的操作。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行以实现上述实施例的上述扫码登录方法或图形码显示方法中所执行的操作。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备实现如上述扫码登录方法或图形码显示方法中所执行的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请实施例的可选实施例,并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (15)

1.一种扫码登录方法,其特征在于,所述方法包括:
第一设备通过扫描第二设备显示的图形码,获取所述图形码对应的授权标识;
根据所述第一设备对所述图形码的处理进度,确定与所述处理进度匹配的第一状态;
向服务器发送授权登录请求,所述授权登录请求携带所述授权标识及所述第一状态,所述服务器用于查询与所述授权标识对应存储的第二状态,所述第二状态由所述服务器根据对所述图形码的处理进度确定,响应于所述第一状态为所述第二状态的下一个状态,将所述第一设备的用户账号授权给所述授权标识对应的第二设备登录,并将与所述授权标识对应存储的所述第二状态更新为所述第一状态。
2.根据权利要求1所述的方法,其特征在于,与所述授权标识对应存储的状态包括待校验状态或已扫码状态,所述第一状态为已扫码状态,所述第二状态为待校验状态。
3.根据权利要求1所述的方法,其特征在于,与所述授权标识对应存储的状态包括待校验状态、已扫码状态或已确认状态;所述第一状态为已确认状态,所述第二状态为已扫码状态;
在所述第一设备通过扫描第二设备显示的图形码,获取所述图形码对应的授权标识之后,在所述根据所述第一设备对所述图形码的处理进度,确定与所述处理进度匹配的第一状态之前,所述方法还包括:
根据所述第一设备对所述图形码的处理进度,确定与所述处理进度匹配的所述第二状态;
向所述服务器发送扫码通知,所述扫码通知携带所述授权标识及所述第二状态,所述服务器用于查询与所述授权标识对应存储的第三状态,响应于所述第二状态为所述第三状态的下一个状态,将与所述授权标识对应存储的所述第三状态更新为所述第二状态,所述第三状态为待校验状态。
4.根据权利要求3所述的方法,其特征在于,所述第一设备通过扫描第二设备显示的图形码,获取所述图形码对应的授权标识,包括:
通过扫描所述第二设备显示的所述图形码,获取所述图形码对应的所述授权标识和签名值,所述签名值由所述服务器根据第二加密密钥对所述授权标识进行加密处理后得到;
所述根据所述第一设备对所述图形码的处理进度,确定与所述处理进度匹配的所述第二状态,包括:
根据第二解密密钥,对所述授权标识及所述签名值进行验证,所述第二加密密钥与所述第二解密密钥对应;
响应于验证通过,根据所述第一设备对所述图形码的处理进度,确定与所述处理进度匹配的所述第二状态。
5.根据权利要求3所述的方法,其特征在于,所述扫码通知还携带设备标识,所述设备标识用于指示发送所述扫码通知的设备;
所述服务器用于响应于未查询到与所述授权标识对应存储的设备标识,将所述扫码通知中携带的设备标识与所述授权标识对应存储。
6.根据权利要求1所述的方法,其特征在于,所述第一设备通过扫描第二设备显示的图形码,获取所述图形码对应的授权标识,包括:
扫描所述第二设备显示的所述图形码,得到所述图形码包含的第一地址信息;
向所述服务器发送信息获取请求,所述信息获取请求携带所述第一地址信息,所述服务器用于查询地址对应关系,确定与所述第一地址信息对应的第二地址信息,所述第二地址信息的字符长度大于所述第一地址信息的字符长度;
接收所述服务器发送的所述第二地址信息,获取所述第二地址信息对应的授权标识。
7.根据权利要求6所述的方法,其特征在于,所述获取所述第二地址信息对应的授权标识,包括:
从所述第二地址信息中提取所述授权标识。
8.根据权利要求1所述的方法,其特征在于,所述向服务器发送授权登录请求,所述授权登录请求携带所述授权标识及所述第一状态,包括:
根据第一加密密钥,对所述授权标识及所述第一状态进行加密处理,得到授权信息;
向所述服务器发送所述授权登录请求,所述授权登录请求携带所述授权信息,所述服务器用于根据第一解密密钥对所述授权信息进行解密处理,得到所述授权标识及所述第一状态,所述第一加密密钥与所述第一解密密钥对应。
9.根据权利要求1所述的方法,其特征在于,所述向服务器发送授权登录请求之后,所述方法还包括:
接收所述服务器发送的状态更新通知,所述状态更新通知用于指示所述服务器已更新所述授权标识对应的状态。
10.一种扫码登录方法,其特征在于,所述方法包括:
接收第一设备发送的授权登录请求,所述授权登录请求携带授权标识及第一状态,所述授权标识由所述第一设备扫描第二设备显示的图形码后得到,所述第一状态为所述第一设备根据对所述图形码的处理进度确定的状态;
查询与所述授权标识对应存储的第二状态,所述第二状态由服务器根据对所述图形码的处理进度确定;
响应于所述第一状态为所述第二状态的下一个状态,将所述第一设备的用户账号授权给所述授权标识对应的第二设备登录,并将与所述授权标识对应存储的所述第二状态更新为所述第一状态。
11.根据权利要求10所述的方法,其特征在于,所述接收第一设备发送的授权登录请求之前,所述方法还包括:
接收所述第二设备发送的图形码显示请求;
根据所述图形码显示请求,生成所述授权标识及与所述授权标识对应的第二地址信息;
对所述第二地址信息进行转换处理,得到所述第二地址信息对应的第一地址信息,所述第二地址信息的字符长度大于所述第一地址信息的字符长度;
向所述第二设备发送所述第一地址信息,所述第二设备用于显示包含所述第一地址信息的所述图形码。
12.一种图形码显示方法,其特征在于,所述方法包括:
向服务器发送图形码显示请求,所述服务器用于根据所述图形码显示请求,生成授权标识及与所述授权标识对应的第二地址信息,对所述第二地址信息进行转换处理,得到所述第二地址信息对应的第一地址信息,所述第二地址信息的字符长度大于所述第一地址信息的字符长度;
接收所述服务器发送的所述第一地址信息;
显示包含所述第一地址信息的图形码,第一设备用于通过扫描所述图形码,获取所述图形码对应的所述授权标识;根据所述第一设备对所述图形码的处理进度,确定与所述处理进度匹配的第一状态;向所述服务器发送授权登录请求,所述授权登录请求携带所述授权标识及所述第一状态,所述服务器用于查询与所述授权标识对应存储的第二状态,所述第二状态由所述服务器根据对所述图形码的处理进度确定,响应于所述第一状态为所述第二状态的下一个状态,将所述第一设备的用户账号授权给所述授权标识对应的第二设备登录,并将与所述授权标识对应存储的所述第二状态更新为所述第一状态。
13.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行以实现如权利要求1至9任一权利要求所述的扫码登录方法中所执行的操作,或者以实现如权利要求12所述的图形码显示方法中所执行的操作。
14.一种服务器,其特征在于,所述服务器包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行以实现如权利要求10至11任一权利要求所述的扫码登录方法中所执行的操作。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行以实现如权利要求1至9任一权利要求所述的扫码登录方法中所执行的操作;或者以实现如权利要求10至11任一权利要求所述的扫码登录方法中所执行的操作;或者以实现如权利要求12所述的图形码显示方法中所执行的操作。
CN202010758401.9A 2020-07-31 2020-07-31 扫码登录方法、图形码显示方法、装置、设备及存储介质 Active CN111723889B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010758401.9A CN111723889B (zh) 2020-07-31 2020-07-31 扫码登录方法、图形码显示方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010758401.9A CN111723889B (zh) 2020-07-31 2020-07-31 扫码登录方法、图形码显示方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN111723889A CN111723889A (zh) 2020-09-29
CN111723889B true CN111723889B (zh) 2021-06-11

Family

ID=72574376

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010758401.9A Active CN111723889B (zh) 2020-07-31 2020-07-31 扫码登录方法、图形码显示方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111723889B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112333186B (zh) * 2020-11-03 2022-11-29 平安普惠企业管理有限公司 数据通信方法、装置、设备及存储介质
CN114764286A (zh) * 2020-12-30 2022-07-19 华为技术有限公司 一种应用程序登录方法及系统
CN114489740B (zh) * 2022-04-14 2022-06-24 北京金朗维科技有限公司 一种用于无线扫码设备的在线更新方法和装置
CN114866360B (zh) * 2022-07-07 2022-10-14 深圳希施玛数据科技有限公司 基于扫码的业务处理方法及相关装置
CN115987636B (zh) * 2022-12-22 2023-07-18 北京深盾科技股份有限公司 一种信息安全的实现方法、装置及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111062026A (zh) * 2019-12-11 2020-04-24 维沃移动通信有限公司 一种验证信息共享方法及电子设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9438575B2 (en) * 2011-12-22 2016-09-06 Paypal, Inc. Smart phone login using QR code
CN103929411B (zh) * 2013-01-16 2017-05-24 深圳市腾讯计算机系统有限公司 信息显示方法、终端、安全服务器及系统
CN104092542B (zh) * 2013-09-11 2016-08-10 腾讯科技(深圳)有限公司 一种账号登录方法、装置及系统
CN108200040A (zh) * 2017-12-28 2018-06-22 北京奇虎科技有限公司 移动客户端免密登录的方法、系统、浏览器及移动终端
CN109299766A (zh) * 2018-11-08 2019-02-01 新疆七色花信息科技有限公司 一种二维码生成方法、二维码识别方法及标号牌
CN111199601B (zh) * 2019-09-02 2022-06-14 腾讯科技(深圳)有限公司 门禁控制方法、装置、智能终端、服务器及存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111062026A (zh) * 2019-12-11 2020-04-24 维沃移动通信有限公司 一种验证信息共享方法及电子设备

Also Published As

Publication number Publication date
CN111723889A (zh) 2020-09-29

Similar Documents

Publication Publication Date Title
CN111723889B (zh) 扫码登录方法、图形码显示方法、装置、设备及存储介质
WO2022206349A1 (zh) 一种信息验证的方法、相关装置、设备以及存储介质
US9992176B2 (en) Systems and methods for encrypted communication in a secure network
CN108322469B (zh) 信息处理系统、方法和装置
CN107302539B (zh) 一种电子身份注册及认证登录的方法及其系统
CN111064757B (zh) 应用访问方法、装置、电子设备以及存储介质
US8327422B1 (en) Authenticating a server device using dynamically generated representations
CN111615105B (zh) 信息提供、获取方法、装置及终端
EP2999189A1 (en) Network authentication method for secure electronic transactions
CN109714176B (zh) 口令认证方法、装置及存储介质
CN107196917B (zh) 一种服务响应方法及其中间件
JP2018517367A (ja) サービスプロバイダ証明書管理
CN102916869A (zh) 即时通信方法和系统
KR101879758B1 (ko) 사용자 단말기별 사용자 디지털 인증서 발급 방법 및 그 인증서에 의한 인증 방법
CN111404695B (zh) 令牌请求验证方法和装置
CN102217280A (zh) 用户业务鉴权方法、系统及服务器
US20110085474A1 (en) Terminal device, signature generation server, simple id management system, simple id management method, and program
US20240137221A1 (en) Implementation of one-touch login service
CN111444551A (zh) 账户的注册与登录方法、装置、电子设备及可读存储介质
CN115037552A (zh) 鉴权方法、装置、设备及存储介质
CN103368918A (zh) 一种动态口令认证方法、装置及系统
CN117336092A (zh) 一种客户端登录方法、装置、电子设备和存储介质
KR102242720B1 (ko) 클라이언트별 능동적 시각 오프셋 윈도우를 통한 고유 시각 방식의 otp 설정 방법
CN115801287A (zh) 签名认证方法和装置
CN114158046B (zh) 一键登录业务的实现方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40028523

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant