[go: up one dir, main page]

CN116346486A - 联合登录方法、装置、设备及存储介质 - Google Patents

联合登录方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN116346486A
CN116346486A CN202310370873.0A CN202310370873A CN116346486A CN 116346486 A CN116346486 A CN 116346486A CN 202310370873 A CN202310370873 A CN 202310370873A CN 116346486 A CN116346486 A CN 116346486A
Authority
CN
China
Prior art keywords
application program
information
application
target user
key factor
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.)
Pending
Application number
CN202310370873.0A
Other languages
English (en)
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.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202310370873.0A priority Critical patent/CN116346486A/zh
Publication of CN116346486A publication Critical patent/CN116346486A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • 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/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本公开提供了一种联合登录方法、装置、设备及存储介质,可以应用于计算机通信技术领域和金融技术领域。该方法包括:获取第一应用程序的身份令牌信息;利用第二应用程序的私钥对身份令牌信息进行加密处理,得到数字签名信息;在第一应用程序的服务端对数字签名信息进行验证通过的情况下,接收由第一应用程序的服务端发送的加密密钥因子数据,并利用第二应用程序的私钥对加密密钥因子数据进行解密处理,得到密钥因子;利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到解密后的目标用户的属性信息;在目标用户具有对第二应用程序的访问权限的情况下,展示第二应用程序的访问页面。

Description

联合登录方法、装置、设备及存储介质
技术领域
本公开涉及计算机通信技术领域和金融技术领域,尤其涉及一种联合登录方法、装置、设备、介质和程序产品。
背景技术
随着互联网技术应用的推广,企业信息数字化的需求越多,使用的业务系统的数量也随之增加,但访问不同业务系统需要重复登录,较难实现一次登录就可访问其他业务系统。
相关技术中一般是通过访问第三方系统实现联合登录,这种方式需要对不同公司的业务系统的各种登录技术方案进行集成,由于不同公司的业务系统都具有不同的登录技术方案,对服务器的资源占用率较大,且开发难度较大。
发明内容
鉴于上述问题,本公开提供了联合登录方法、装置、设备、介质和程序产品。
根据本公开的第一个方面,提供了一种联合登录方法,应用于第二应用程序的服务端包括:
获取第一应用程序的身份令牌信息,其中,身份令牌信息是响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,利用第一应用程序的服务端对目标用户用于登录第一应用程序的登录信息进行加密处理得到的。利用第二应用程序的私钥对身份令牌信息进行加密处理,得到数字签名信息。在第一应用程序的服务端对数字签名信息进行验证通过的情况下,接收由第一应用程序的服务端发送的加密密钥因子数据,并利用第二应用程序的私钥对加密密钥因子数据进行解密处理,得到密钥因子。利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到解密后的目标用户的属性信息。在目标用户具有对第二应用程序的访问权限的情况下,展示第二应用程序的访问页面。
根据本公开的实施例,利用第二应用程序的私钥对身份令牌信息进行加密处理,得到数字签名信息,包括:
对身份令牌信息进行解密处理,得到第一应用程序的域名信息、第一应用程序的标识信息和目标用户登录第一应用程序的时间戳信息。利用第二应用程序的私钥对第一应用程序的域名信息、第一应用程序的标识信息和目标用户登录第一应用程序的时间戳信息进行加密处理,得到数字签名信息。
根据本公开的实施例,利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到解密后的目标用户的属性信息,包括:
利用第一应用程序的公钥对加密后的目标用户的属性信息进行验证,得到验证结果。在验证结果为验证通过的情况下,利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到目标用户的属性信息。
根据本公开的实施例,利用第一应用程序的公钥对加密后的目标用户的属性信息进行验证,得到验证结果,包括:
利用第一应用程序的公钥对加密后的目标用户的属性信息进行解密处理,得到目标用户的属性信息和目标用户登录第一应用程序的时间戳信息。根据时间戳信息和当前时刻信息,确定第一信息交互时长。在第一信息交互时长满足预设阈值且目标用户的属性信息被验证通过的情况下,确定验证结果为验证通过。
根据本公开的实施例,上述方法还包括:
利用第二应用程序的私钥对加密密钥因子数据进行解密处理,得到密钥因子和随机数。将随机数和密钥因子进行关联存储。接收由第一应用程序的服务端发送的随机数,根据随机数,确定密钥因子。
根据本公开的第二个方面,提供了一种联合登录方法,应用于第一应用程序的服务端包括:
响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,对目标用户用于登录第一应用程序的登录信息进行加密处理得到身份令牌信息,并向第二应用程序的服务端发送身份令牌信息。接收由第二应用程序的服务端利用第二应用程序的私钥对身份令牌信息进行加密处理得到的数字签名信息,并利用第二应用程序的公钥对数字签名信息进行验证,得到验证结果。在验证结果为验证通过的情况下,利用第二应用程序的公钥对随机生成的密钥因子进行加密处理,得到加密密钥因子数据,并向第二应用程序的服务端发送加密密钥因子数据。利用密钥因子对目标用户的属性信息进行加密处理,生成加密后的目标用户的属性信息;并向第二应用程序的服务端发送加密后的目标用户的属性信息。
根据本公开的实施例,利用第二应用程序的公钥对数字签名信息进行验证,得到验证结果,包括:
利用第二应用程序的公钥对数字签名信息进行解密处理,得到身份令牌信息和目标用户登录第一应用程序的时间戳信息。根据时间戳信息和当前时刻信息,确定第二信息交互时长;在第二信息交互时长满足预设阈值且身份令牌信息被验证通过的情况下,确定验证结果为验证通过。
根据本公开的实施例,上述方法还包括:
在验证结果为验证通过的情况下,随机生成随机数和密钥因子,利用第二应用程序的公钥对密钥因子进行加密处理,得到加密密钥因子数据。向第二应用程序的服务端发送加密密钥因子数据和随机数。
本公开的第三方面提供了一种联合登录装置,应用于第二应用程序的服务端,包括:获取模块、第一加密模块、第一解密模块、第二解密模块。
获取模块,用于获取第一应用程序的身份令牌信息。身份令牌信息是响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,利用第一应用程序的服务端对目标用户用于登录第一应用程序的登录信息进行加密处理得到的。第一加密模块,用于利用第二应用程序的私钥对身份令牌信息进行加密处理,得到数字签名信息。第一解密模块,用于在第一应用程序的服务端对数字签名信息进行验证通过的情况下,接收由第一应用程序的服务端发送的加密密钥因子数据,并利用第二应用程序的私钥对加密密钥因子数据进行解密处理,得到密钥因子。第二解密模块,用于利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到解密后的目标用户的属性信息。展示模块,用于在目标用户具有对第二应用程序的访问权限的情况下,展示第二应用程序的访问页面。
根据本公开的实施例,第一加密模块包括第一解密单元和加密单元。其中,第一解密单元,用于对身份令牌信息进行解密处理,得到第一应用程序的域名信息、第一应用程序的标识信息和目标用户登录第一应用程序的时间戳信息。加密单元,用于利用第二应用程序的私钥对第一应用程序的域名信息、第一应用程序的标识信息和目标用户登录第一应用程序的时间戳信息进行加密处理,得到数字签名信息。
根据本公开的实施例,第二解密模块包括第一验证单元和第二解密单元。其中,第一验证单元,用于利用第一应用程序的公钥对加密后的目标用户的属性信息进行验证,得到验证结果。第二解密单元,用于在验证结果为验证通过的情况下,利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到目标用户的属性信息。
根据本公开的实施例,第一验证单元包括解密子单元、第一确定子单元和第二确定子单元。其中,解密子单元,利用第一应用程序的公钥对加密后的目标用户的属性信息进行解密处理,得到目标用户的属性信息和目标用户登录第一应用程序的时间戳信息。第一确定子单元,用于根据时间戳信息和当前时刻信息,确定第一信息交互时长。第二确定子单元,用于在第一信息交互时长满足预设阈值且所述目标用户的属性信息被验证通过的情况下,确定验证结果为验证通过。
根据本公开的实施例,上述装置还包括:第三解密模块、关联存储模块和确定模块。第三解密模块,用于利用第二应用程序的私钥对加密密钥因子数据进行解密处理,得到密钥因子和随机数。关联存储模块,用于将随机数和密钥因子进行关联存储。确定模块,用于接收由第一应用程序的服务端发送的随机数,根据随机数,确定密钥因子。
本公开的第四方面提供了一种联合登录装置,应用于第一应用程序的服务端,包括:第二加密模块、第三加密模块、第四加密模块和第五加密模块。
第二加密模块,用于响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,对目标用户用于登录第一应用程序的登录信息进行加密处理得到身份令牌信息,并向第二应用程序的服务端发送身份令牌信息。第三加密模块,用于接收由第二应用程序的服务端利用第二应用程序的私钥对身份令牌信息进行加密处理得到的数字签名信息,并利用第二应用程序的公钥对数字签名信息进行验证,得到验证结果。第四加密模块,用于在验证结果为验证通过的情况下,利用第二应用程序的公钥对随机生成的密钥因子进行加密处理,得到加密密钥因子数据,并向第二应用程序的服务端发送加密密钥因子数据。第五加密模块,用于利用密钥因子对目标用户的属性信息进行加密处理,生成加密后的目标用户的属性信息;并向第二应用程序的服务端发送加密后的目标用户的属性信息。
根据本公开的实施例,第三加密模块包括第三解密单元、第一确定单元和第二确定单元。第三解密单元,用于利用第二应用程序的公钥对数字签名信息进行解密处理,得到身份令牌信息和目标用户登录第一应用程序的时间戳信息。第一确定单元,用于根据时间戳信息和当前时刻信息,确定第二信息交互时长。第二确定单元,用于在第二信息交互时长满足预设阈值且身份令牌信息被验证通过的情况下,确定验证结果为验证通过。
根据本公开的实施例,上述装置还包括:第六加密模块和发送模块。
第六加密模块,用于在证结果为验证通过的情况下,随机生成随机数和密钥因子,利用第二应用程序的公钥对所述密钥因子进行加密处理,得到加密密钥因子数据;
发送模块,用于向第二应用程序的服务端发送所述加密密钥因子数据和所述随机数。
本公开的第五方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器执行上述方法。
本公开的第四方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述方法。
本公开的第五方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述方法。
根据本公开提供的联合登录方法、装置、设备、介质和程序产品,第二应用系统通过获取第一应用程序的身份令牌信息,利用第二应用程序的私钥对身份令牌信息进行加密处理,得到数字签名信息。在第一应用程序的服务端对数字签名信息进行验证通过的情况下,接收由第一应用程序的服务端发送的加密密钥因子数据,并利用第二应用程序的私钥对加密密钥因子数据进行解密处理,得到密钥因子。然后利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到解密后的目标用户的属性信息。最后,在目标用户具有对第二应用程序的访问权限的情况下,展示第二应用程序的访问页面。由于通过公钥加密算法在第一应用程序与第二应用程序之间进行信息交互,使第二应用程序能够从第一应用程序得到目标用户的属性信息,以确定该目标用户是否具有登录第二应用程序的权限。不需要改造第二应用程序原有的登录认证流程,可以实现第一应用程序与第二应用程序的联合登录,提高了联合登陆系统之间的安全性,减轻了服务器数据处理量。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的联合登录方法、装置、设备、介质和程序产品的应用场景图;
图2示意性示出了根据本公开实施例的联合登录方法应用于第二应用程序的服务端流程图;
图3示意性示出了根据本公开实施例的联合登录方法应用于第一应用程序的服务端流程图;
图4示意性示出了根据本公开实施例的联合登录方法的示意图;
图5示意性示出了根据本公开实施例的联合登录方法应用于第二应用程序的服务端装置的结构框图;
图6示意性示出了根据本公开实施例的联合登录方法应用于第一应用程序的服务端装置的结构框图;以及
图7示意性示出了根据本公开实施例的适于实现联合登录方法的电子设备的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
在本公开的技术方案中,所涉及的数据(如包括但不限于用户个人信息)的收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
传统的登录第三方系统的方法是采用统一的登录认证技术方案,通过改造用户注册、权限管理和登录认证等模块,以实现企业用户的统一认证登录管理。这种技术方案抛弃了原有的登录流程,使得统一认证登录系统对各业务系统进行高度的集成。该种技术方案需对各业务系统进行深度的二次开发,并且企业的私有系统要进行独立的部署和运维。随着企业需要的业务系统越来越多,不断有新的业务需求产生,统一的登录认证技术方案造成开发维护操作困难、服务器的工作量大、接收验证信息道路拥堵、安全效率低、用户体验不佳。
有鉴于此,本公开的实施例提供了一种联合登录方法,应用于第二应用程序的服务端包括:获取第一应用程序的身份令牌信息,其中,身份令牌信息是响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,利用第一应用程序的服务端对目标用户用于登录第一应用程序的登录信息进行加密处理得到的。利用第二应用程序的私钥对身份令牌信息进行加密处理,得到数字签名信息。在第一应用程序的服务端对数字签名信息进行验证通过的情况下,接收由第一应用程序的服务端发送的加密密钥因子数据,并利用第二应用程序的私钥对加密密钥因子数据进行解密处理,得到密钥因子。利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到解密后的目标用户的属性信息。在目标用户具有对第二应用程序的访问权限的情况下,展示第二应用程序的访问页面。
图1示意性示出了根据本公开实施例的联合登录方法、装置、设备、介质和程序产品的应用场景图。
如图1所示,根据该实施例的应用场景100可以包括第一终端设备101、第二终端设备102、第一应用程序服务器103、第一应用程序数据库104、第二应用程序服务器105和第二应用程序数据库106。
第一应用程序服务器103,用于提供用户登录、登录认证密钥分发、登录认证回调、第二应用程序入口等功能服务。
第一应用程序数据库104,用于存储第一应用程序用户信息、密钥等信息。
第二应用程序服务器105,用于提供联合登录接入服务、联合登录认证、用户查找、登录成功页面等功能服务。
第二应用程序数据库106,用于存储第二应用程序用户信息、密钥等信息。
用户可以使用第一终端设备101、第二终端设备102访问第一应用程序服务器103,再通过本公开实施例提供的联合登录方法访问第二应用程序服务器105。第一应用程序服务器103与第二应用程序服务器交互过程生成的加密信息保存在第一应用程序数据库104和第二应用程序数据库106。
第一终端设备101、第二终端设备102上可以安装有各种通讯客户端应用,例如知识阅读类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端和/或社交平台软件等(仅为示例)。
第一终端设备101、第二终端设备102可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于平板电脑、膝上型便携计算机、台式计算机、智能手机等等。第一应用程序服务器103和第二应用程序服务器105可以是提供各种服务的服务器,例如对用户利用第一终端设备101和第二终端设备102所浏览的内容提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
需要说明的是,本公开实施例所提供的联合登录方法一般可以由第一应用程序服务器103和第二应用程序服务器105执行。
本公开实施例所提供的联合登录方法一般也可以由第一应用程序服务器103和第二应用程序服务器105执行。相应地,本公开实施例所提供的联合登录装置一般可以设置于第一应用程序服务器103和第二应用程序服务器105中。本公开实施例所提供的联合登录方法也可以由不同于第一应用程序服务器103和第二应用程序服务器105且能够与第一终端设备101、第二终端设备102和/或第一应用程序服务器103、第二应用程序服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的联合登录装置也可以设置于不同于第一应用程序服务器103、第二应用程序服务器105且能够与第一终端设备101、第二终端设备102和/或第一应用程序服务器103、第二应用程序服务器105通信的服务器或服务器集群中。
例如,在用户登录第一应用程序时,第一终端设备101和第二终端设备102可以访问第一应用程序服务器103,然后将携带第一应用程序的信息访问第二应用程序服务器105,由第二应用程序服务器105对信息内容进行处理。第一应用程序服务器103与第二应用程序服务器105进行交互过程的加密信息保存到第一应用程序数据库与第二应用程序数据库。
应该理解,图1中的第一终端设备、第二终端设备、服务器和数据库的数目仅仅是示意性的。根据实际需要,可以具有任意数目的终端设备、数据库和服务器。
以下将基于图1描述的场景,通过图2~图6对公开实施例的联合登录方法进行详细描述。
图2示意性示出了根据本公开实施例的联合登录方法应用于第一应用程序的服务端的流程图。
如图2所示,该实施例的联合登录方法应用于第二应用程序的服务端,包括操作S210~操作S250。
在操作S210,获取第一应用程序的身份令牌信息。
在操作S220,利用第二应用程序的私钥对身份令牌信息进行加密处理,得到数字签名信息。
在操作S230,在第一应用程序的服务端对数字签名信息进行验证通过的情况下,接收由第一应用程序的服务端发送的加密密钥因子数据,并利用第二应用程序的私钥对加密密钥因子数据进行解密处理,得到密钥因子。
在操作S240,利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到解密后的目标用户的属性信息。
在操作S250,在目标用户具有对第二应用程序的访问权限的情况下,展示第二应用程序的访问页面。
根据本公开的实施例,身份令牌信息是指响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,利用第一应用程序的服务端对目标用户用于登录第一应用程序的登录信息进行加密处理得到的。
根据本公开的实施例,数字签名信息是指使用第二应用程序对第一应用程序域名、第一应用程序标识、时间戳等数据进行签名,生成的数字签名数据。
根据本公开的实施例,密钥因子数据是指使用第二应用程序公钥对密钥因子进行加密的数据信息。
根据本公开的实施例,目标用户的属性信息包括用户标识、证件类型、证件号码等。例如:用户标识可以是A企业,证件类型可以是工卡,证件号码可以是9301。
根据本公开的实施例,第一应用程序和第二应用程序都生成非对称密钥,双方交换公钥。
例如:第一应用程序生成非对称密钥对是公钥1与私钥1,第二应用程序生成非对称密钥对是公钥2与私钥2。双方交换公钥,即公钥1交给第二应用程序服务端保存,私钥1由第一应用程序服务端保存,公钥2交第一应用程序服务端保存,私钥2由第二应用程序服务端保存。根据本公开的实施例,第一应用程序不仅可以与第二应用程序交换公钥,也可以与第三应用程序或第四应用程序等交换公钥。也就是通过第一应用程序可联合登陆多个应用程序。
根据本公开的实施例,第二应用程序服务端获取第一应用程序的身份令牌信息后,第二应用程序服务端使用第二应用程序的私钥2对第一应用程序域名、第一应用程序标识、时间戳等身份令牌信息进行加密处理,生成数字签名信息。
根据本公开的实施例,在第一应用程序的服务端对数字签名信息进行验证通过的情况下,接收由第一应用程序的服务端发送的由公钥2加密密钥因子数据,并利用第二应用程序服务端使用私钥2对加密密钥因子数据进行解密处理,得到密钥因子。
根据本公开的实施例,用第一应用程序服务端发送的随机数查询数据库获取对应的密钥因子,并用此密钥因子对目标用户的属性信息进行解密,得到解密后的目标用户的属性信息。
根据本公开的实施例,根据本公开提供的联合登录方法、装置、设备、介质和程序产品,第二应用系统通过获取第一应用程序的身份令牌信息,利用第二应用程序的私钥对身份令牌信息进行加密处理,得到数字签名信息。在第一应用程序的服务端对数字签名信息进行验证通过的情况下,接收由第一应用程序的服务端发送的加密密钥因子数据,并利用第二应用程序的私钥对加密密钥因子数据进行解密处理,得到密钥因子。然后利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到解密后的目标用户的属性信息。最后,在目标用户具有对第二应用程序的访问权限的情况下,展示第二应用程序的访问页面。由于通过公钥加密算法在第一应用程序与第二应用程序之间进行信息交互,使第二应用程序能够从第一应用程序得到目标用户的属性信息,以确定该目标用户是否具有登录第二应用程序的权限。不需要改造第二应用程序原有的登录认证流程,可以实现第一应用程序与第二应用程序的联合登录,提高了联合登陆系统之间的安全性,减轻了服务器数据处理量。
根据本公开的实施例,利用第二应用程序的私钥对身份令牌信息进行加密处理,得到数字签名信息,包括:
对身份令牌信息进行解密处理,得到第一应用程序的域名信息、第一应用程序的标识信息和目标用户登录第一应用程序的时间戳信息。利用第二应用程序的私钥对第一应用程序的域名信息、第一应用程序的标识信息和目标用户登录第一应用程序的时间戳信息进行加密处理,得到数字签名信息。
根据本公开的实施例,第二应用程序服务端对第一应用程序身份令牌信息进行解密处理,得到第一应用程序域名、第一应用程序标识和目标用户登录第一应用程序的时间戳信息。例如:对第一应用程序身份令牌加密的是第一应用程序的私钥1,则第二应用程序服务端利用第一应用程序的公钥1进行解密处理。再利用第二应用程序的私钥2对第一应用程序的域名信息、第一应用程序的标识信息和目标用户登录第一应用程序的时间戳信息进行加密处理,得到数字签名信息。根据本公开的实施例,通过第一应用程序与第二应用程序进行非对称密钥互换,使得应用程序间的交互过程更加方便且安全。
根据本公开的实施例,利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到解密后的目标用户的属性信息,包括:
利用第一应用程序的公钥对加密后的目标用户的属性信息进行验证,得到验证结果。在验证结果为验证通过的情况下,利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到目标用户的属性信息。
根据本公开的实施例,第二应用程序服务端使用第一应用程序的公钥1对签名数据进行验证。例如:验证条件是第一应用程序与第二应用程序的第一交互信息时长在5分钟有效期内。若第一应用程序与第二应用程序的第一交互信息时长在5分钟有效期内,则验证通过,用随机数查询数据库获取密钥因子,并用密钥因子对目标用户的属性信息进行解密处理,得到目标用户的属性信息。
根据本公开的实施例,密钥因子加密得到的用户的属性信息不会造成在登录第二应用程序时造成信息泄露问题。
根据本公开的实施例,利用第一应用程序的公钥对加密后的目标用户的属性信息进行验证,得到验证结果,包括:
利用第一应用程序的公钥对加密后的目标用户的属性信息进行解密处理,得到目标用户的属性信息和目标用户登录第一应用程序的时间戳信息。根据时间戳信息和当前时刻信息,确定第一信息交互时长。在第一信息交互时长满足预设阈值且目标用户的属性信息被验证通过的情况下,确定验证结果为验证通过。
根据本公开的实施例,利用第二应用程序服务端使用第一应用程序的公钥1对加密后的目标用户的属性信息进行解密处理,得到目标用户的属性信息和目标用户登录第一应用程序的时间戳信息。例如:时间戳信息是北京时间8:35,当前时刻是北京时间8:40,那么第一信息交互时常为1分钟。由于1分钟满足预设阈值5分钟之内,那么验证通过,确定验证结果为验证通过。反之不满足预设阈值5分钟之内,确定验证结果为验证不通过。根据本公开的实施例,通过公钥加密算法在第一应用程序与第二应用程序之间进行信息交互,使用程序间的第一信息交互时长进行验证,从而实现第一应用程序与第二应用程序的联合登录,并且能够提高联合登录的时效性。
根据本公开的实施例,上述方法还包括:
利用第二应用程序的私钥对加密密钥因子数据进行解密处理,得到密钥因子和随机数。将随机数和密钥因子进行关联存储。接收由第一应用程序的服务端发送的随机数,根据随机数,确定密钥因子。
根据本公开的实施例,利用第二应用程序的私钥2对加密密钥因子数据进行解密处理,得到密钥因子和随机数。例如:密钥因子是密钥因子a和随机数是随机数a1。将随机数a1和密钥因子a进行关联存储。
例如:关联关系可以是映射关系。那么随机数a1的映射是密钥因子a。后续第二应用程序服务端接收由第一应用程序的服务端发送的随机数a1,根据随机数a1的映射是密钥因子a,确定密钥因子是密钥因子a。
根据本公开的实施例,通过将随机数和密钥因子进行关联存储,第二应用程序可以根据随机数查询密钥因子,增加了数据传输的安全性。
图3示意性示出了根据本公开实施例的联合登录方法应用于第一应用程序的服务端的流程图。
如图3所示,该实施例的联合登录方法应用于第一应用程序的服务端,包括操作S310~操作S340。
在操作S310,响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,对目标用户用于登录第一应用程序的登录信息进行加密处理得到身份令牌信息,并向第二应用程序的服务端发送身份令牌信息。
在操作S320,接收由第二应用程序的服务端利用第二应用程序的私钥对身份令牌信息进行加密处理得到的数字签名信息,并利用第二应用程序的公钥对数字签名信息进行验证,得到验证结果。
在操作S330,在验证结果为验证通过的情况下,利用第二应用程序的公钥对随机生成的密钥因子进行加密处理,得到加密密钥因子数据,并向第二应用程序的服务端发送加密密钥因子数据。
在操作S340,利用密钥因子对目标用户的属性信息进行加密处理,生成加密后的目标用户的属性信息;并向第二应用程序的服务端发送加密后的目标用户的属性信息。
根据本公开的实施例,目标用户登录第一应用程序时的登录信息包括登陆时间、IP地址、浏览信息等。第一应用程序服务端利用第一应用程序的私钥1将登录信息进行加密处理得到身份令牌,并向第二应用程序的服务端发送身份令牌信息。
根据本公开的实施例,第一应用程序服务端接收到由第二应用程序的服务端利用第二应用程序的私钥2对身份令牌信息进行加密处理得到的数字签名信息。之后第一应用程序服务端利用第二应用程序的公钥2对数字签名信息进行验证,得到验证结果。
根据本公开的实施例,在验证通过的情况下,第一应用程序服务端利用第二应用程序的公钥2对随机生成的密钥因子进行加密处理,得到加密密钥因子数据,随后第一应用程序的服务端向第二应用程序的服务端发送加密密钥因子数据。
根据本公开的实施例,第一应用程序服务端利用密钥因子对json格式的目标用户的属性信息进行加密处理,生成加密后的目标用户的属性信息。其中用户数据为json格式,也可以根据第二应用程序需求定制。第一应用程序的服务端向第二应用程序的服务端发送加密后的目标用户的属性信息。
根据本公开的实施例,由于通过公钥加密算法在第一应用程序与第二应用程序之间进行信息交互,使第二应用程序能够从第一应用程序得到目标用户的属性信息,以确定该目标用户是否具有登录第二应用程序的权限。不需要改造第二应用程序原有的登录认证流程,可以实现第一应用程序与第二应用程序的联合登录,提高了联合登陆系统之间的安全性,减轻了服务器数据处理量。
根据本公开的实施例,利用第二应用程序的公钥对数字签名信息进行验证,得到验证结果,包括:
利用第二应用程序的公钥对数字签名信息进行解密处理,得到身份令牌信息和目标用户登录第一应用程序的时间戳信息。根据时间戳信息和当前时刻信息,确定第二信息交互时长;在第二信息交互时长满足预设阈值且身份令牌信息被验证通过的情况下,确定验证结果为验证通过。
根据本公开的实施例,第一应用程序服务端利用第二应用程序的公钥2对数字签名信息进行解密处理,得到身份令牌信息和目标用户登录第一应用程序的时间戳信息。
例如:预设阈值时长为5分钟。第二信息交互时长小于5分钟能够验证通过。目标用户登录第一应用程序的时间戳信息是北京时间10:00,当前北京时间10:03,那么第二信息交互时长是3分钟,满足第二信息交互时长小于5分钟,则验证结果为验证通过。
根据本公开的实施例,在验证数字签名信息时,增加时间戳的验证过程,可以确保信息传输的时效性。
根据本公开的实施例,上述方法还包括:
在验证结果为验证通过的情况下,随机生成随机数和密钥因子,利用第二应用程序的公钥对随机生成的密钥因子进行加密处理,得到加密密钥因子数据。向第二应用程序的服务端发送加密密钥因子数据和随机数。
根据本公开的实施例,第一应用程序服务端利用第二应用程序的公钥2对数字签名信息验证通过的情况下,随机生成密钥因子和随机数。第一应用程序服务端利用第二应用程序的公钥2对密钥因子进行加密处理,得到加密密钥因子数据。随后第一应用程序服务端向第二应用程序的服务端发送加密密钥因子数据和随机数。
根据本公开的实施例,在数据传输的过程中,增加随机数,可以提高数据传输的安全性。
图4示意性示出了根据本公开实施例的联合登录方法的示意图。
如图4所示,该实施例的联合登录方法的示意图,包括步骤S401~步骤S415。
在步骤401,用户使用用户名和密码等要素登录第一应用程序,在访问第二应用程序时,携带第一应用程序身份令牌信息访问第二应用程序接入地址。
在步骤402,使用第二应用程序私钥对第一应用程序域名|第一应用程序标识|时间戳等数据进行签名,生成数字签名信息。
在步骤403,回调第一应用程序登录认证密钥分发地址,上送参数包括:第一应用程序标识、数字签名信息、时间戳、身份令牌。
在步骤404,第一应用程序使用第二应用程序公钥对数字签名信息进行验证,验证身份令牌,验证时间戳是否在5分钟有效期内。
在步骤405,验证通过后,生成随机数、密钥因子,并使用第二应用程序公钥对密钥因子进行加密。
在步骤406,返回随机数、加密后的密钥因子数据、身份令牌给第二应用程序。
在步骤407,第二应用程序使用第二应用程序私钥解密加密后的密钥因子数据,得到密钥因子。再将随机数、密钥因子保存到第二应用程序的数据库。
在步骤408,第二应用程序向第一应用程序登录认证回调地址发起请求,上送参数:第一应用程序标识、数字签名信息、时间戳、身份令牌、随机数、第二应用程序重定向地址。
在步骤409,使用第二应用程序公钥对数字签名信息进行验证,验证身份令牌,验证时间戳是否在5分钟有效期内。
在步骤410,验证通过后,第一应用程序使用密钥因子对json格式的用户数据:用户标识、证件类型、证件号码等进行加密,得到目标用户的属性信息。
在步骤411,使用第一应用程序私钥对目标用户的属性信息进行签名,生成数字签名信息。
在步骤412,回调第二应用程序重定向地址,上送参数包括:目标用户的属性信息、数字签名信息、时间戳、随机数。
在步骤413,第二应用程序使用第一应用程序公钥对数字签名信息进行验证、验证时间戳是否在5分钟有效期内。
在步骤414,验证通过后,用随机数查询数据库获取加密因子,并用加密因子对目标用户的属性信息进行解密,得到用户信息。
在步骤415,查找用户信息,并重定向到第二应用程序登录成功页面。
根据本公开的实施例,json格式是一种纯字符串形式的数据,它本身不提供任何方法,适合在网络中进行传输。
基于上述联合登录方法,本公开还提供了一种联合登录装置。以下将结合图5和图6对该装置进行详细描述。
图5示意性示出了根据本公开实施例的联合登录方法应用于第二应用程序的服务端装置的结构框图。
如图5所示,该实施例的联合登录方法应用于第二应用程序的服务端装置500包括获取模块510、第一加密模块520、第一解密模块530、第二解密模块540和展示模块550。
获取模块510,用于获取第一应用程序的身份令牌信息。其中,身份令牌信息是响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,利用第一应用程序的服务端对目标用户用于登录第一应用程序的登录信息进行加密处理得到的。在一实施例中,获取模块510可以用于执行前文描述的操作S210,在此不再赘述。
第一加密模块520,用于利用第二应用程序的私钥对身份令牌信息进行加密处理,得到数字签名信息。在一实施例中,第一加密模块520可以用于执行前文描述的操作S220,在此不再赘述。
第一解密模块530,用于在第一应用程序的服务端对数字签名信息进行验证通过的情况下,接收由第一应用程序的服务端发送的加密密钥因子数据,并利用第二应用程序的私钥对加密密钥因子数据进行解密处理,得到密钥因子。在一实施例中,第一解密模块530可以用于执行前文描述的操作S230,在此不再赘述。
第二解密模块540,用于利用密钥因子对加密后的目标用户的属性信息进行解密处理,得到解密后的目标用户的属性信息。在一实施例中,第二解密模块540可以用于执行前文描述的操作S240,在此不再赘述。
展示模块550,用于在目标用户具有对第二应用程序的访问权限的情况下,展示第二应用程序的访问页面。在一实施例中,展示模块550可以用于执行前文描述的操作S250,在此不再赘述。
根据本公开的实施例,第一加密模块包括第一解密单元和加密单元。其中,第一解密单元,用于对身份令牌信息进行解密处理,得到第一应用程序的域名信息、第一应用程序的标识信息和目标用户登录第一应用程序的时间戳信息。加密单元,用于利用第二应用程序的私钥对第一应用程序的域名信息、第一应用程序的标识信息和目标用户登录第一应用程序的时间戳信息进行加密处理,得到数字签名信息。
根据本公开的实施例,第一验证单元包括解密子单元、第一确定子单元和第二确定子单元。其中,解密子单元,利用第一应用程序的公钥对加密后的目标用户的属性信息进行解密处理,得到目标用户的属性信息和目标用户登录第一应用程序的时间戳信息。第一确定子单元,用于根据时间戳信息和当前时刻信息,确定第一信息交互时长。第二确定子单元,用于在第一信息交互时长满足预设阈值且所述目标用户的属性信息被验证通过的情况下,确定验证结果为验证通过。
根据本公开的实施例,上述装置还包括:第三解密模块、关联存储模块和确定模块。第三解密模块,用于利用第二应用程序的私钥对加密密钥因子数据进行解密处理,得到密钥因子和随机数。关联存储模块,用于将随机数和密钥因子进行关联存储。确定模块,用于接收由第一应用程序的服务端发送的随机数,根据随机数,确定密钥因子。
图6示意性示出了根据本公开实施例的联合登录方法应用于第一应用程序的服务端装置的结构框图。
如图6所示,该实施例的联合登录方法应用于第一应用程序的服务端装置600包括第二加密模块610、第三加密模块620、第四加密模块630和第五加密模块640。
第二加密模块610,用于响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,对目标用户用于登录第一应用程序的登录信息进行加密处理得到身份令牌信息,并向第二应用程序的服务端发送身份令牌信息。在一实施例中,第二加密模块610可以用于执行前文描述的操作S310,在此不再赘述。
第三加密模块620,用于接收由第二应用程序的服务端利用第二应用程序的私钥对身份令牌信息进行加密处理得到的数字签名信息,并利用第二应用程序的公钥对数字签名信息进行验证,得到验证结果。在一实施例中,第三加密模块620可以用于执行前文描述的操作S320,在此不再赘述。
第四加密模块630,用于在验证结果为验证通过的情况下,利用第二应用程序的公钥对随机生成的密钥因子进行加密处理,得到加密密钥因子数据,并向第二应用程序的服务端发送加密密钥因子数据。在一实施例中,第四加密模块630可以用于执行前文描述的操作S330,在此不再赘述。
第五加密模块640,用于利用密钥因子对目标用户的属性信息进行加密处理,生成加密后的目标用户的属性信息;并向第二应用程序的服务端发送加密后的目标用户的属性信息。在一实施例中,第五加密模块640可以用于执行前文描述的操作S340,在此不再赘述。
根据本公开的实施例,第三加密模块包括第三解密单元、第一确定单元和第二确定单元。第三解密单元,用于利用第二应用程序的公钥对数字签名信息进行解密处理,得到身份令牌信息和目标用户登录第一应用程序的时间戳信息。第一确定单元,用于根据时间戳信息和当前时刻信息,确定第二信息交互时长。第二确定单元,用于在第二信息交互时长满足预设阈值且身份令牌信息被验证通过的情况下,确定验证结果为验证通过。
根据本公开的实施例,上述装置还包括:第六加密模块和发送模块。其中,第六加密模块,用于在证结果为验证通过的情况下,随机生成随机数和密钥因子,利用第二应用程序的公钥对所述密钥因子进行加密处理,得到加密密钥因子数据;发送模块,用于向第二应用程序的服务端发送所述加密密钥因子数据和所述随机数。
图7示意性示出了根据本公开实施例的适于实现联合登录方法的电子设备的方框图。
如图7所示,根据本公开实施例的电子设备700包括处理器701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。处理器701例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))等等。处理器701还可以包括用于缓存用途的板载存储器。处理器701可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 703中,存储有电子设备700操作所需的各种程序和数据。处理器701、ROM702以及RAM 703通过总线704彼此相连。处理器701通过执行ROM 702和/或RAM 703中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 702和RAM 703以外的一个或多个存储器中。处理器701也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备700还可以包括输入/输出(I/O)接口705,输入/输出(I/O)接口705也连接至总线704。电子设备700还可以包括连接至输入/输出(I/O)接口705的以下部件中的一项或多项:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至输入/输出(I/O)接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 702和/或RAM 703和/或ROM 702和RAM 703以外的一个或多个存储器。
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供的物品推荐方法。
在该计算机程序被处理器701执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分709被下载和安装,和/或从可拆卸介质711被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被处理器701执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

Claims (13)

1.一种联合登录方法,应用于第二应用程序的服务端,包括:
获取所述第一应用程序的身份令牌信息,其中,所述身份令牌信息是响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,利用所述第一应用程序的服务端对目标用户用于登录所述第一应用程序的登录信息进行加密处理得到的;
利用第二应用程序的私钥对所述身份令牌信息进行加密处理,得到数字签名信息;
在所述第一应用程序的服务端对所述数字签名信息进行验证通过的情况下,接收由所述第一应用程序的服务端发送的加密密钥因子数据,并利用所述第二应用程序的私钥对所述加密密钥因子数据进行解密处理,得到密钥因子;
利用所述密钥因子对加密后的所述目标用户的属性信息进行解密处理,得到解密后的所述目标用户的属性信息;
在所述目标用户具有对所述第二应用程序的访问权限的情况下,展示所述第二应用程序的访问页面。
2.根据权利要求1所述的方法,其中,所述利用第二应用程序的私钥对所述身份令牌信息进行加密处理,得到数字签名信息,包括:
对所述身份令牌信息进行解密处理,得到所述第一应用程序的域名信息、所述第一应用程序的标识信息和所述目标用户登录所述第一应用程序的时间戳信息;
利用所述第二应用程序的私钥对所述第一应用程序的域名信息、所述第一应用程序的标识信息和所述目标用户登录所述第一应用程序的时间戳信息进行加密处理,得到所述数字签名信息。
3.根据权利要求1所述的方法,其中,所述利用所述密钥因子对加密后的所述目标用户的属性信息进行解密处理,得到解密后的所述目标用户的属性信息,包括:
利用第一应用程序的公钥对所述加密后的所述目标用户的属性信息进行验证,得到验证结果;
在所述验证结果为验证通过的情况下,利用所述密钥因子对所述加密后的所述目标用户的属性信息进行解密处理,得到所述目标用户的属性信息。
4.根据权利要求3所述的方法,其中,所述利用第一应用程序的公钥对所述加密后的所述目标用户的属性信息进行验证,得到验证结果,包括:
利用所述第一应用程序的公钥对所述加密后的所述目标用户的属性信息进行解密处理,得到所述目标用户的属性信息和所述目标用户登录所述第一应用程序的时间戳信息;
根据所述时间戳信息和当前时刻信息,确定第一信息交互时长;
在所述第一信息交互时长满足预设阈值且所述目标用户的属性信息被验证通过的情况下,确定所述验证结果为验证通过。
5.根据权利要求1所述的方法,还包括:
利用所述第二应用程序的私钥对所述加密密钥因子数据进行解密处理,得到所述密钥因子和随机数;
将所述随机数和所述密钥因子进行关联存储;
接收由所述第一应用程序的服务端发送的随机数,根据所述随机数,确定所述密钥因子。
6.一种联合登录方法,应用于第一应用程序的服务端,包括:
响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,对目标用户用于登录所述第一应用程序的登录信息进行加密处理得到身份令牌信息,并向所述第二应用程序的服务端发送所述身份令牌信息;
接收由所述第二应用程序的服务端利用所述第二应用程序的私钥对所述身份令牌信息进行加密处理得到的数字签名信息,并利用所述第二应用程序的公钥对所述数字签名信息进行验证,得到验证结果;
在所述验证结果为验证通过的情况下,利用所述第二应用程序的公钥对随机生成的密钥因子进行加密处理,得到加密密钥因子数据,并向所述第二应用程序的服务端发送所述加密密钥因子数据;
利用所述密钥因子对所述目标用户的属性信息进行加密处理,生成加密后的所述目标用户的属性信息;并向所述第二应用程序的服务端发送所述加密后的所述目标用户的属性信息。
7.根据权利要求6所述的方法,其中,所述利用所述第二应用程序的公钥对所述数字签名信息进行验证,得到验证结果,包括:
利用所述第二应用程序的公钥对所述数字签名信息进行解密处理,得到所述身份令牌信息和所述目标用户登录所述第一应用程序的时间戳信息;
根据所述时间戳信息和当前时刻信息,确定第二信息交互时长;
在所述第二信息交互时长满足预设阈值且所述身份令牌信息被验证通过的情况下,确定所述验证结果为验证通过。
8.根据权利要求1所述的方法,还包括:
在所述验证结果为验证通过的情况下,随机生成随机数和密钥因子,利用所述第二应用程序的公钥对所述密钥因子进行加密处理,得到加密密钥因子数据;
向第二应用程序的服务端发送所述加密密钥因子数据和所述随机数。
9.一种联合登录装置,应用于第二应用程序的服务端,包括:
获取模块,用于获取所述第一应用程序的身份令牌信息,其中,所述身份令牌信息是响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,利用所述第一应用程序的服务端对目标用户用于登录所述第一应用程序的登录信息进行加密处理得到的;
第一加密模块,用于利用第二应用程序的私钥对所述身份令牌信息进行加密处理,得到数字签名信息;
第一解密模块,用于在所述第一应用程序的服务端对所述数字签名信息进行验证通过的情况下,接收由所述第一应用程序的服务端发送的加密密钥因子数据,并利用所述第二应用程序的私钥对所述加密密钥因子数据进行解密处理,得到密钥因子;
第二解密模块,用于利用所述密钥因子对加密后的所述目标用户的属性信息进行解密处理,得到解密后的所述目标用户的属性信息;
展示模块,用于在所述目标用户具有对所述第二应用程序的访问权限的情况下,展示所述第二应用程序的访问页面。
10.一种联合登录装置,应用于第一应用程序的服务端,包括:
第二加密模块,用于响应于在第一应用程序的页面上对第二应用程序的访问页面的标识执行的选择操作,对目标用户用于登录所述第一应用程序的登录信息进行加密处理得到身份令牌信息,并向所述第二应用程序的服务端发送所述身份令牌信息;
第三加密模块,用于接收由所述第二应用程序的服务端利用所述第二应用程序的私钥对所述身份令牌信息进行加密处理得到的数字签名信息,并利用所述第二应用程序的公钥对所述数字签名信息进行验证,得到验证结果;
第四加密模块,用于在所述验证结果为验证通过的情况下,利用所述第二应用程序的公钥对随机生成的密钥因子进行加密处理,得到加密密钥因子数据,并向所述第二应用程序的服务端发送所述加密密钥因子数据;
第五加密模块,用于利用所述密钥因子对所述目标用户的属性信息进行加密处理,生成加密后的所述目标用户的属性信息;并向所述第二应用程序的服务端发送所述加密后的所述目标用户的属性信息。
11.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1~5或6~8中任一项所述的方法。
12.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行根据权利要求1~5或6~8中任一项所述的方法。
13.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据权利要求1~5或6~8中任一项所述的方法。
CN202310370873.0A 2023-04-07 2023-04-07 联合登录方法、装置、设备及存储介质 Pending CN116346486A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310370873.0A CN116346486A (zh) 2023-04-07 2023-04-07 联合登录方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310370873.0A CN116346486A (zh) 2023-04-07 2023-04-07 联合登录方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN116346486A true CN116346486A (zh) 2023-06-27

Family

ID=86882270

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310370873.0A Pending CN116346486A (zh) 2023-04-07 2023-04-07 联合登录方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116346486A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118157928A (zh) * 2024-03-05 2024-06-07 广东省计算技术应用研究所 基于大数据的信息安全管理方法、装置及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102868704A (zh) * 2012-10-11 2013-01-09 北京新媒传信科技有限公司 一种单点登录的方法和系统
CN104113534A (zh) * 2014-07-02 2014-10-22 百度在线网络技术(北京)有限公司 应用程序app的登录系统及方法
CN114444056A (zh) * 2020-10-30 2022-05-06 中移(上海)信息通信科技有限公司 用户信息验证方法、装置、电子设备及计算机存储介质
CN114745167A (zh) * 2022-04-02 2022-07-12 中科曙光国际信息产业有限公司 身份认证方法和装置、计算机设备、计算机可读存储介质
CN115883156A (zh) * 2022-11-25 2023-03-31 企查查科技有限公司 共享登录方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102868704A (zh) * 2012-10-11 2013-01-09 北京新媒传信科技有限公司 一种单点登录的方法和系统
CN104113534A (zh) * 2014-07-02 2014-10-22 百度在线网络技术(北京)有限公司 应用程序app的登录系统及方法
CN114444056A (zh) * 2020-10-30 2022-05-06 中移(上海)信息通信科技有限公司 用户信息验证方法、装置、电子设备及计算机存储介质
CN114745167A (zh) * 2022-04-02 2022-07-12 中科曙光国际信息产业有限公司 身份认证方法和装置、计算机设备、计算机可读存储介质
CN115883156A (zh) * 2022-11-25 2023-03-31 企查查科技有限公司 共享登录方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118157928A (zh) * 2024-03-05 2024-06-07 广东省计算技术应用研究所 基于大数据的信息安全管理方法、装置及存储介质

Similar Documents

Publication Publication Date Title
US20230275884A1 (en) Blockchain systems and methods for user authentication
CN108322469B (zh) 信息处理系统、方法和装置
US11196561B2 (en) Authorized data sharing using smart contracts
US10021108B2 (en) Anomaly detection for access control events
US12273437B2 (en) Data processing method and apparatus for blockchain system
US11829502B2 (en) Data sharing via distributed ledgers
US10951396B2 (en) Tamper-proof management of audit logs
CN105556891A (zh) 通过被动客户端发送会话令牌
CN110611657A (zh) 一种基于区块链的文件流处理的方法、装置及系统
WO2023005838A1 (zh) 数据共享方法和电子设备
CN114584381A (zh) 基于网关的安全认证方法、装置、电子设备和存储介质
CN111049789B (zh) 域名访问的方法和装置
CN114553570B (zh) 生成令牌的方法、装置、电子设备及存储介质
CN110602075A (zh) 一种加密访问控制的文件流处理的方法、装置及系统
CN108920971A (zh) 数据加密的方法、校验的方法、加密的装置和校验的装置
CN114861144A (zh) 基于区块链的数据权限处理方法
CN116346486A (zh) 联合登录方法、装置、设备及存储介质
CN114428967B (zh) 数据传输方法、装置、设备以及存储介质
CN113505397B (zh) 授权方法、服务器、系统及存储介质
CN114386073A (zh) 创建安全证书方法、装置、电子设备及存储介质
CN110602074B (zh) 一种基于主从关联的业务身份使用方法、装置及系统
CN118233167B (zh) 用户登录方法、装置、设备、介质和产品
CN114677179B (zh) 数据处理方法、装置、电子设备和介质
CN110602076B (zh) 一种基于主身份多重认证的身份使用方法、装置及系统
CN112118208B (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