CN115174236A - 一种鉴权认证方法、装置、电子设备及存储介质 - Google Patents

一种鉴权认证方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN115174236A
CN115174236A CN202210804641.7A CN202210804641A CN115174236A CN 115174236 A CN115174236 A CN 115174236A CN 202210804641 A CN202210804641 A CN 202210804641A CN 115174236 A CN115174236 A CN 115174236A
Authority
CN
China
Prior art keywords
target
key
signaling
character string
authentication
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
CN202210804641.7A
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.)
Shanghai Baijiayun Technology Co Ltd
Original Assignee
Shanghai Baijiayun Technology 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 Shanghai Baijiayun Technology Co Ltd filed Critical Shanghai Baijiayun Technology Co Ltd
Priority to CN202210804641.7A priority Critical patent/CN115174236A/zh
Publication of CN115174236A publication Critical patent/CN115174236A/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/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • 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/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords

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

一种鉴权认证方法、装置、电子设备及存储介质
技术领域
本公开涉及信息通信技术领域,具体而言,涉及一种鉴权认证方法、装置、电子设备及存储介质。
背景技术
目前,采用信令(token)进行认证鉴权的方式在很多客户端服务器系统中都有应用,基于信令的鉴权机制类似于超文本传输协议是无状态的,它不需要在服务器端去保留用户的认证信息或会话信息。这个信令必须要在每次请求时传递给服务器,一般在请求头中携带,由服务器在接收到之后进行认证鉴权,而不需要去考虑用户是在哪一台服务器进行登录,这就为应用的扩展提供了便利。
在现有的信令认证鉴权方式中,往往由服务器端采用固定密钥进行加密生成,并配发给客户端,但是由于所有的信令都是通过这个密钥加密生成的,开发人员,运维人员,有机器访问权限的人员都会接触到这个密钥,如果密钥泄漏会威胁到整个系统的安全,因此其仍存在认证鉴权安全性较低的问题。
发明内容
本公开实施例至少提供一种鉴权认证方法、装置、电子设备及存储介质,可以提升信令认证鉴权的安全性。
本公开实施例提供了一种鉴权认证方法,应用于包括身份认证模块以及服务提供模块的服务器,所述方法包括:
接收随机生成的多个鉴权密钥以及对应的密钥编号;
分别将每个所述鉴权密钥以及对应的所述密钥编号存储至所述身份认证模块以及所述服务提供模块;
控制所述身份认证模块,接收用户发送的登录请求,在所述鉴权密钥中选取目标密钥;根据所述登录请求与所述目标密钥加密生成目标信令,并将所述目标信令返回至所述用户,其中,所述目标信令中携带有所述目标密钥对应的目标密钥编号;
控制所述服务提供模块,接收所述用户发送的携带有所述目标信令的访问请求;从所述目标信令中解析出所述目标密钥编号,确定所述目标密钥编号对应的目标密钥;若根据所述目标密钥校验所述目标信令有效,则向所述用户提供所述访问请求对应的服务。
一种可选的实施方式中,基于以下方法生成所述目标信令:
控制所述身份认证模块解析所述登录请求,根据所述登录请求确定所述用户对应的用户信息;
将所述用户信息以及所述目标密钥编号,编码生成所述目标信令的载荷字符串;
为所述目标信令定义预设的目标加密算法,并将所述目标加密算法对应的算法类型编码生成所述目标信令的头部字符串;
根据所述目标加密算法以及所述目标密钥,分别加密所述头部字符串和所述载荷字符串,生成所述目标信令的签证字符串;
将所述头部字符串、所述载荷字符串以及所述签证字符串依次串联,生成所述目标信令。
一种可选的实施方式中,基于以下方法校验所述目标信令:
控制所述服务提供模块从所述目标信令的载荷字符串中,解析出所述目标密钥编号;从所述目标信令的头部字符串中,解析出所述目标信令对应的所述目标加密算法;
根据所述目标密钥编号,在所述服务提供模块存储的多个所述鉴权密钥以及对应的所述密钥编号中,筛选出所述目标密钥编号对应的所述目标密钥;
根据所述目标密钥以及所述目标加密算法,重新分别加密所述目标信令的所述头部字符串以及所述载荷字符串,生成所述目标信令的校验字符串;
确定所述校验字符串与所述签证字符串是否匹配,若匹配,则所述目标信令有效;若不匹配,则所述目标信令无效。
一种可选的实施方式中,在所述控制所述服务提供模块,接收所述用户发送的携带有所述目标信令的访问请求;从所述目标信令中解析出所述目标密钥编号,确定所述目标密钥编号对应的目标密钥;若根据所述目标密钥校验所述目标信令有效,则向所述用户提供所述访问请求对应的服务之后,所述方法还包括:
删除所述身份认证模块以及所述服务提供模块中存储的所述目标密钥以及对应的所述目标密钥编号;
继续接收所述鉴权密钥以及对应的所述密钥编号,并将新接收的所述鉴权密钥以及对应的所述密钥编号分别存储至所述身份认证模块以及所述服务提供模块。
一种可选的实施方式中,所述鉴权密钥由预设的密钥生成服务器按照预设的密钥生成周期生成,并配置有对应的密钥编号。
本公开实施例还提供一种鉴权认证装置,应用于包括身份认证模块以及服务提供模块的服务器,所述装置包括:
接收模块,用于接收随机生成的多个鉴权密钥以及对应的密钥编号;
存储模块,用于分别将每个所述鉴权密钥以及对应的所述密钥编号存储至所述身份认证模块以及所述服务提供模块;
第一控制模块,用于控制所述身份认证模块,接收用户发送的登录请求,在所述鉴权密钥中选取目标密钥;根据所述登录请求与所述目标密钥加密生成目标信令,并将所述目标信令返回至所述用户,其中,所述目标信令中携带有所述目标密钥对应的目标密钥编号;
第二控制模块,用于控制所述服务提供模块,接收所述用户发送的携带有所述目标信令的访问请求;从所述目标信令中解析出所述目标密钥编号,确定所述目标密钥编号对应的目标密钥;若根据所述目标密钥校验所述目标信令有效,则向所述用户提供所述访问请求对应的服务。
一种可选的实施方式中,所述第一控制模块具体用于:
控制所述身份认证模块解析所述登录请求,根据所述登录请求确定所述用户对应的用户信息;
将所述用户信息以及所述目标密钥编号,编码生成所述目标信令的载荷字符串;
为所述目标信令定义预设的目标加密算法,并将所述目标加密算法对应的算法类型编码生成所述目标信令的头部字符串;
根据所述目标加密算法以及所述目标密钥,分别加密所述头部字符串和所述载荷字符串,生成所述目标信令的签证字符串;
将所述头部字符串、所述载荷字符串以及所述签证字符串依次串联,生成所述目标信令。
一种可选的实施方式中,所述第二控制模块具体用于:
控制所述服务提供模块从所述目标信令的载荷字符串中,解析出所述目标密钥编号;从所述目标信令的所述头部字符串中,解析出所述目标信令对应的所述目标加密算法;
根据所述目标密钥编号,在所述服务提供模块存储的多个所述鉴权密钥以及对应的所述密钥编号中,筛选出所述目标密钥编号对应的所述目标密钥;
根据所述目标密钥以及所述目标加密算法,重新分别加密所述目标信令的所述头部字符串以及所述载荷字符串,生成所述目标信令的校验字符串;
确定所述校验字符串与所述签证字符串是否匹配,若匹配,则所述目标信令有效;若不匹配,则所述目标信令无效。
一种可选的实施方式中,所述装置还包括密钥清理模块,所述密钥清理模块用于:删除所述身份认证模块以及所述服务提供模块中存储的所述目标密钥以及对应的所述目标密钥编号;
继续接收所述鉴权密钥以及对应的所述密钥编号,并将新接收的所述鉴权密钥以及对应的所述密钥编号分别存储至所述身份认证模块以及所述服务提供模块。
一种可选的实施方式中,所述鉴权密钥由预设的密钥生成服务器按照预设的密钥生成周期生成,并配置有对应的密钥编号。
本公开实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述鉴权认证方法,或上述鉴权认证方法中任一种可能的实施方式中的步骤。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述鉴权认证方法,或上述鉴权认证方法中任一种可能的实施方式中的步骤。
本公开实施例还提供一种计算机程序产品,包括计算机程序/指令,该计算机程序、指令被处理器执行时实现上述鉴权认证方法,或上述鉴权认证方法中任一种可能的实施方式中的步骤。
本公开实施例提供的一种鉴权认证方法、装置、电子设备及存储介质,应用于包括身份认证模块以及服务提供模块的服务器,通过接收随机生成的多个鉴权密钥以及对应的密钥编号;分别将每个鉴权密钥以及对应的密钥编号存储至身份认证模块以及服务提供模块;控制身份认证模块接收用户发送的登录请求,在鉴权密钥中选取目标密钥;根据登录请求与目标密钥加密生成目标信令,并将目标信令返回至用户,其中,目标信令中携带有目标密钥对应的目标密钥编号;控制服务提供模块,接收用户发送的携带有目标信令的访问请求;从目标信令中解析出目标密钥编号,确定目标密钥编号对应的目标密钥;若根据目标密钥校验目标信令有效,则向用户提供访问请求对应的服务。可以提升信令认证鉴权的安全性。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种鉴权认证方法的流程图;
图2示出了本公开实施例所提供的另一种鉴权认证方法的流程图;
图3示出了本公开实施例所提供的一种鉴权认证装置的示意图;
图4示出了本公开实施例所提供的一种电子设备的示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
经研究发现,在现有的信令认证鉴权方式中,往往由服务器端采用固定密钥进行加密生成,并配发给客户端,但是由于所有的信令都是通过这个密钥加密生成的,开发人员,运维人员,有机器访问权限的人员都会接触到这个密钥,如果密钥泄漏会威胁到整个系统的安全,因此其仍存在认证鉴权安全性较低的问题。
基于上述研究,本公开提供了一种鉴权认证方法、装置、电子设备及存储介质,应用于包括身份认证模块以及服务提供模块的服务器,通过接收随机生成的多个鉴权密钥以及对应的密钥编号;分别将每个鉴权密钥以及对应的密钥编号存储至身份认证模块以及服务提供模块;控制身份认证模块接收用户发送的登录请求,在鉴权密钥中选取目标密钥;根据登录请求与目标密钥加密生成目标信令,并将目标信令返回至用户,其中,目标信令中携带有目标密钥对应的目标密钥编号;控制服务提供模块,接收用户发送的携带有目标信令的访问请求;从目标信令中解析出目标密钥编号,确定目标密钥编号对应的目标密钥;若根据目标密钥校验目标信令有效,则向用户提供访问请求对应的服务。可以提升信令认证鉴权的安全性。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种鉴权认证方法进行详细介绍,本公开实施例所提供的鉴权认证方法的执行主体为包括身份认证模块以及服务提供模块的服务器,其中,身份认证模块用于校验用户通过客户端进行登录的登录密码等身份认证信息,并在通过验证后为用户签发信令;服务提供模块用于校验用户携带有身份认证模块签发的信令的访问请求,并在访问成功后提供与访问请求对应的服务。在一些可能的实现方式中,该鉴权认证方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
参见图1所示,为本公开实施例提供的一种鉴权认证方法的流程图,所述方法应用于包括身份认证模块以及服务提供模块的服务器,包括步骤S101~S104,其中:
S101、接收随机生成的多个鉴权密钥以及对应的密钥编号。
在具体实施中,服务器接收随机生成的多个鉴权密钥以及每个鉴权密钥对应的密钥编号,该鉴权密钥可以为按照预设的生成周期定期自动生成的,服务器可以持续接收该鉴权密钥。
这里,鉴权密钥可以由预设的密钥生成服务器按照预设的密钥生成周期生成,并配置有对应的密钥编号。具体的,预设的密钥生成服务器中预置有一个周期任务,每过一个时间周期便生成一个鉴权密钥,在生成鉴权密钥的同时,为该鉴权密钥配置对应的密钥编号。
需要说明的是,鉴权密钥的生成周期可以根据实际需要进行选择,在此不做具体限制,例如:鉴权密钥的生成周期可以设置为1分钟、1小时或者1天均可,当鉴权密钥的生成周期设置为1分钟时,即预设的密钥生成服务器每过1分钟便随机生成一个鉴权密钥,并为其配置有对应的密钥编号,最终生成的鉴权密钥的形式可以为key[n],其中,n代表鉴权密钥key对应的密钥编号为n。
作为一种可能的实施方式,鉴权密钥的生成周期可以根据信令有效期确定,若鉴权密钥的生成周期大于信令的有效期,保存的有效密钥就会少一些;若鉴权密钥的生成周期小于信令的有效期,则在信令有效期内生成的次数多,保存的密钥就多一些。
S102、分别将每个所述鉴权密钥以及对应的所述密钥编号存储至所述身份认证模块以及所述服务提供模块。
在具体实施中,服务器在获取到随机生成的多个鉴权密钥以及每个鉴权密钥对应的密钥编号之后,分别将每个鉴权密钥以及对应的密钥编号分别存储至身份认证模块以及服务提供模块,这样,身份认证模块以及服务提供模块可以同步更新全部新生成的鉴权密钥以及对应的密钥编号。
作为一种可能的实施方式,服务器中还可以设置有数据共享模块,服务器在接收到随机生成的多个鉴权密钥以及对应的密钥编号之后,可以将其缓存至数据共享模块,数据共享模块分别与身份认证模块以及服务提供模块通信连接,由服务器控制数据共享模块同时向身份认证模块以及服务提供模块发送多个鉴权密钥以及对应的密钥编号。
需要说明的是,存储至身份认证模块中的鉴权密钥以及对应的密钥编号,与存储至服务提供模块中的鉴权密钥以及对应的密钥编号相同。
S103、控制所述身份认证模块,接收用户发送的登录请求,在所述鉴权密钥中选取目标密钥;根据所述登录请求与所述目标密钥加密生成目标信令,并将所述目标信令返回至所述用户,其中,所述目标信令中携带有所述目标密钥对应的目标密钥编号。
在具体实施中,服务器控制身份认证模块接收用户发送的登录请求,针对用户登录请求中的用户名以及登录密码进行校验,以确定用户是否有登录权限,若用户登录密码验证成功,则在身份认证模块中存储的鉴权密钥中选取一个,利用该鉴权密钥加密登录请求中所包含的用户身份信息,生成目标信令,并将该目标信令配发给用户。
需要说明的是,在生成目标信令的过程中,需要将所选择的鉴权密钥对应的密钥编号编码进目标信令中,使目标信令中携带有加密该信令的鉴权密钥对应的密钥编号。
这里,可以选取存储于身份认证模块中的任意有效的鉴权密钥作为目标密钥,优选的,为了避免同步数据的时间差问题,可以取一个次新密钥编号对应的鉴权密钥。例如:最新的有效密钥编号为10,这里可以取有效的密钥编号9的鉴权密钥key[9]进行目标信令的加密。
可选的,用户可以通过客户端向服务器中的身份认证模块发送登录请求,登录请求中携带有用户的用户名以及登录密码,身份认证模块若验证用户名与用户登录密码相匹配,则确定登录请求有效,进而为该用户配发目标信令。
可选的,目标信令可以为JWT信令。JWT信令由头部(header)、载荷(payload)、签证(signature)三段信息构成,将这三段信息文本用点连接一起就构成了JWT字符串。例如:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ。
作为一种可能的实施方式,可以基于以下方法生成所述目标信令:控制所述身份认证模块解析所述登录请求,根据所述登录请求确定所述用户对应的用户信息;将所述用户信息以及所述目标密钥编号,编码生成所述目标信令的载荷字符串;为所述目标信令定义预设的目标加密算法,并将所述目标加密算法对应的算法类型编码生成所述目标信令的头部字符串;根据所述目标加密算法以及所述目标密钥,分别加密所述头部字符串和所述载荷字符串,生成所述目标信令的签证字符串;将所述头部字符串、所述载荷字符串以及所述签证字符串依次串联,生成所述目标信令。
在具体实施中,目标信令的载荷部分是存放有效信息的部分,包括标准中的注册的声明,公共的声明,私有的声明等,标准注册声明有:信令签发者、信令所面向的用户、信令接收方、信令过期时间、信令生效时间、信令签发时间、信令唯一身份标识等。此部分声明在目标信令中可以全部包括,也可以仅包括部分或者全部不包括,可以根据实际需要进行选择,在此不做具体限制。公共的声明中可以添加任何的信息,一般添加用户的相关信息或其他业务需要的必要信息,但不建议添加敏感信息,因为该部分在客户端可解密。在本申请实施例中,公共的声明部分的内容可以为通过解析用户发送的登录请求,根据所述登录请求确定的用户信息,具体可以包括用户名等信息,可以根据实际需要进行选择,在此不做具体限制。
进一步的,针对私有的声明部分,在本实施例中可以在私有声明部分的基础上,将目标密钥对应的目标密钥编号输入至私有的声明部分,并将目标信令的载荷部分中注册的声明,公共的声明,私有的声明进行编码,生成目标信令的载荷字符串,构成目标信令的载荷段信息。
进一步的,针对目标信令的头部部分,可以包括生命类型和加密算法两个字段,在加密算法字段中,可以为目标信令配置预设的加密算法类型,即定义了该目标信令需要采用哪种目标加密算法进行加密,例如:在目标头部部分配置'alg':'HS256',即代表目标加密算法为HS256算法,定义了目标信令需要采用HS256算法进行加密。将头部部分进行编码后即可生成目标信令的头部字符串,构成目标信令的头部段信息。
进一步的,在编码得到目标信令的头部字符串以及载荷字符串之后,由于目标信令的头部部分已经定义了该目标信令所需要的目标加密算法,同时,在前述步骤中已经选择出了用于目标信令加密的目标密钥,因此,采用目标加密算法以及目标密钥针对目标信令的头部字符串以及载荷字符串进行加密处理,可以生成对应的加密字符串,将此加密字符串作为目标信令的签证字符串,构成目标信令的签证段信息。
最后,将头部字符串、载荷字符串以及签证字符串之间用点依次串联起来,最终构成的字符串即为目标信令。这里,目标信令中载荷段信息以及头部段信息相当于明文传输,即此部分信息可以在客户端进行解密,容易得到加密目标信令的目标加密算法,但是,由于载荷段信息中只携带了目标密钥对应的密钥编号,因此在客户端无法得到加密该目标信令的目标密钥,同时,该目标密钥是动态随机生成的,由服务器控制身份认证模块随机进行选择,这样,即可降低密钥泄露的风险,进而可以达到提升信令认证鉴权的安全性的效果。
S104、控制所述服务提供模块,接收所述用户发送的携带有所述目标信令的访问请求;从所述目标信令中解析出所述目标密钥编号,确定所述目标密钥编号对应的目标密钥;若根据所述目标密钥校验所述目标信令有效,则向所述用户提供所述访问请求对应的服务。
在具体实施中,身份认证模块向用户配发目标信令之后,用户可以携带此目标信令向服务提供模块发送访问请求,服务提供模块在接收到携带由目标信令的访问请求后,在目标信令中解析出目标信令所携带的加密该目标信令的目标密钥对应的目标密钥编号,由于身份认证模块中存储的鉴权密钥及其对应的密钥编号,与身份认证模块中存储的鉴权密钥及其对应的额密钥编号相同,因此,根据从目标信令中解析出的目标密钥编号,即可对应的在服务提供模块中存储的鉴权密钥中寻找到对应的目标密钥。进一步利用与加密目标信令相同的目标密钥校验目标信令的有效性,若目标信令有效,即可为用户提供与访问请求对应的服务。
这里,服务提供模块所提供的服务可以包括数据传输等,访问请求中请求服务提供模块向客户端发送某些数据等,可以根据实际需要进行选择,在此不做具体限制。
作为一种可能的实施方式,校验目标信令有效性的方式可以为:控制所述服务提供模块从所述目标信令的载荷字符串中,解析出所述目标密钥编号;从所述目标信令的所述头部字符串中,解析出所述目标信令对应的所述目标加密算法;根据所述目标密钥编号,在所述服务提供模块存储的多个所述鉴权密钥以及对应的所述密钥编号中,筛选出所述目标密钥编号对应的所述目标密钥;根据所述目标密钥以及所述目标加密算法,重新分别加密所述目标信令的所述头部字符串以及所述载荷字符串,生成所述目标信令的校验字符串;确定所述校验字符串与所述签证字符串是否匹配,若匹配,则所述目标信令有效;若不匹配,则所述目标信令无效。
在具体实施中,从目标信令的载荷字符串中,解析出目标密钥编号,进而根据目标密钥编号在服务提供模块存储的多个鉴权密钥中,筛选出与该目标密钥编号相对应的目标密钥;从目标信令的头部字符串中,解析出目标信令对应的目标加密算法,利用目标加密算法与目标密钥重新加密目标信令的头部字符串以及载荷字符串进而校验目标信令的有效性。
这里,若目标信令在传输过程中未经篡改,那么目标信令中携带的目标密钥编号在服务提供模块存储的鉴权密钥中对应的目标密钥与身份认证模块加密该目标信令时的目标密钥一致,则利用该目标密钥以及从目标信令中解析处的目标加密算法重新加密目标信令的头部字符串以及载荷字符串,得到的结果应该与目标信令中的签证字符串一致,若不一致,则说明目标信令在传输过程中遭到了拦截或篡改,进而目标信令为无效信令,服务提供模块不向用户提供服务,以保证信息安全性。
本公开实施例提供的一种鉴权认证方法,应用于包括身份认证模块以及服务提供模块的服务器,通过接收随机生成的多个鉴权密钥以及对应的密钥编号;分别将每个鉴权密钥以及对应的密钥编号存储至身份认证模块以及服务提供模块;控制身份认证模块接收用户发送的登录请求,在鉴权密钥中选取目标密钥;根据登录请求与目标密钥加密生成目标信令,并将目标信令返回至用户,其中,目标信令中携带有目标密钥对应的目标密钥编号;控制服务提供模块,接收用户发送的携带有目标信令的访问请求;从目标信令中解析出目标密钥编号,确定目标密钥编号对应的目标密钥;若根据目标密钥校验目标信令有效,则向用户提供访问请求对应的服务。可以提升信令认证鉴权的安全性。
参见图2所示,为本公开实施例提供的另一种鉴权认证方法的流程图,所述方法包括步骤S201~S206,其中:
S201、接收随机生成的多个鉴权密钥以及对应的密钥编号。
S202、分别将每个所述鉴权密钥以及对应的所述密钥编号存储至所述身份认证模块以及所述服务提供模块。
S203、控制所述身份认证模块,接收用户发送的登录请求,在所述鉴权密钥中选取目标密钥;根据所述登录请求与所述目标密钥加密生成目标信令,并将所述目标信令返回至所述用户,其中,所述目标信令中携带有所述目标密钥对应的目标密钥编号。
S204、控制所述服务提供模块,接收所述用户发送的携带有所述目标信令的访问请求;从所述目标信令中解析出所述目标密钥编号,确定所述目标密钥编号对应的目标密钥;若根据所述目标密钥校验所述目标信令有效,则向所述用户提供所述访问请求对应的服务。
这里,步骤S201-步骤S204与步骤S101-步骤S104实质相同,具有相同的实施方式并且可以达到相同的技术效果,在此不再进行赘述。
S205、删除所述身份认证模块以及所述服务提供模块中存储的所述目标密钥以及对应的所述目标密钥编号。
在具体实施中,针对使用完成的鉴权密钥以及对应的密钥编号,服务端可以将身份认证模块以及服务提供模块中存储的使用完成的目标密钥以及对应的目标密钥编号删除,以节约存储空间,并避免因密钥重复使用而导致的安全性降低的问题。
S206、继续接收所述鉴权密钥以及对应的所述密钥编号,并将新接收的所述鉴权密钥以及对应的所述密钥编号分别存储至所述身份认证模块以及所述服务提供模块。
在具体实施中,服务器可以持续接收按照预设的生成周期随机生成的鉴权密钥及其对应的额密钥编号,以补充每次鉴权认证之后所消耗的鉴权密钥。
本公开实施例提供的一种鉴权认证方法,应用于包括身份认证模块以及服务提供模块的服务器,通过接收随机生成的多个鉴权密钥以及对应的密钥编号;分别将每个鉴权密钥以及对应的密钥编号存储至身份认证模块以及服务提供模块;控制身份认证模块接收用户发送的登录请求,在鉴权密钥中选取目标密钥;根据登录请求与目标密钥加密生成目标信令,并将目标信令返回至用户,其中,目标信令中携带有目标密钥对应的目标密钥编号;控制服务提供模块,接收用户发送的携带有目标信令的访问请求;从目标信令中解析出目标密钥编号,确定目标密钥编号对应的目标密钥;若根据目标密钥校验目标信令有效,则向用户提供访问请求对应的服务。可以提升信令认证鉴权的安全性。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与鉴权认证方法对应的鉴权认证装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述鉴权认证方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
请参阅图3,图3为本公开实施例提供的一种鉴权认证装置300的结构示意图。如图3中所示,本公开实施例提供的鉴权认证装置300,应用于包括身份认证模块以及服务提供模块的服务器,包括:
接收模块310,用于接收随机生成的多个鉴权密钥以及对应的密钥编号;
存储模块320,用于分别将每个所述鉴权密钥以及对应的所述密钥编号存储至所述身份认证模块以及所述服务提供模块;
第一控制模块330,用于控制所述身份认证模块,接收用户发送的登录请求,在所述鉴权密钥中选取目标密钥;根据所述登录请求与所述目标密钥加密生成目标信令,并将所述目标信令返回至所述用户,其中,所述目标信令中携带有所述目标密钥对应的目标密钥编号;
第二控制模块340,用于控制所述服务提供模块,接收所述用户发送的携带有所述目标信令的访问请求;从所述目标信令中解析出所述目标密钥编号,确定所述目标密钥编号对应的目标密钥;若根据所述目标密钥校验所述目标信令有效,则向所述用户提供所述访问请求对应的服务。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
本公开实施例提供的一种鉴权认证装置,应用于包括身份认证模块以及服务提供模块的服务器,通过接收随机生成的多个鉴权密钥以及对应的密钥编号;分别将每个鉴权密钥以及对应的密钥编号存储至身份认证模块以及服务提供模块;控制身份认证模块接收用户发送的登录请求,在鉴权密钥中选取目标密钥;根据登录请求与目标密钥加密生成目标信令,并将目标信令返回至用户,其中,目标信令中携带有目标密钥对应的目标密钥编号;控制服务提供模块,接收用户发送的携带有目标信令的访问请求;从目标信令中解析出目标密钥编号,确定目标密钥编号对应的目标密钥;若根据目标密钥校验目标信令有效,则向用户提供访问请求对应的服务。可以提升信令认证鉴权的安全性。
对应于图1与图2中的鉴权认证方法,本公开实施例还提供了一种电子设备400,如图4所示,为本公开实施例提供的电子设备400结构示意图,包括:
处理器41、存储器42、和总线43;存储器42用于存储执行指令,包括内存421和外部存储器422;这里的内存421也称内存储器,用于暂时存放处理器41中的运算数据,以及与硬盘等外部存储器422交换的数据,处理器41通过内存421与外部存储器422进行数据交换,当所述电子设备400运行时,所述处理器41与所述存储器42之间通过总线43通信,使得所述处理器41执行图1与图2中的鉴权认证方法的步骤。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的鉴权认证方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,该计算机程序产品包括有计算机指令,所述计算机指令被处理器执行时可以执行上述方法实施例中所述的鉴权认证方法的步骤,具体可参见上述方法实施例,在此不再赘述。
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种鉴权认证方法,应用于包括身份认证模块以及服务提供模块的服务器,其特征在于,所述方法包括:
接收随机生成的多个鉴权密钥以及对应的密钥编号;
分别将每个所述鉴权密钥以及对应的所述密钥编号存储至所述身份认证模块以及所述服务提供模块;
控制所述身份认证模块,接收用户发送的登录请求,在所述鉴权密钥中选取目标密钥;根据所述登录请求与所述目标密钥加密生成目标信令,并将所述目标信令返回至所述用户,其中,所述目标信令中携带有所述目标密钥对应的目标密钥编号;
控制所述服务提供模块,接收所述用户发送的携带有所述目标信令的访问请求;从所述目标信令中解析出所述目标密钥编号,确定所述目标密钥编号对应的目标密钥;若根据所述目标密钥校验所述目标信令有效,则向所述用户提供所述访问请求对应的服务。
2.根据权利要求1所述的方法,其特征在于,基于以下方法生成所述目标信令:
控制所述身份认证模块解析所述登录请求,根据所述登录请求确定所述用户对应的用户信息;
将所述用户信息以及所述目标密钥编号,编码生成所述目标信令的载荷字符串;
为所述目标信令定义预设的目标加密算法,并将所述目标加密算法对应的算法类型编码生成所述目标信令的头部字符串;
根据所述目标加密算法以及所述目标密钥,分别加密所述头部字符串和所述载荷字符串,生成所述目标信令的签证字符串;
将所述头部字符串、所述载荷字符串以及所述签证字符串依次串联,生成所述目标信令。
3.根据权利要求2所述的方法,其特征在于,基于以下方法校验所述目标信令:
控制所述服务提供模块从所述目标信令的载荷字符串中,解析出所述目标密钥编号;从所述目标信令的所述头部字符串中,解析出所述目标信令对应的所述目标加密算法;
根据所述目标密钥编号,在所述服务提供模块存储的多个所述鉴权密钥以及对应的所述密钥编号中,筛选出所述目标密钥编号对应的所述目标密钥;
根据所述目标密钥以及所述目标加密算法,重新分别加密所述目标信令的所述头部字符串以及所述载荷字符串,生成所述目标信令的校验字符串;
确定所述校验字符串与所述签证字符串是否匹配,若匹配,则所述目标信令有效;若不匹配,则所述目标信令无效。
4.根据权利要求1所述的方法,其特征在于,在所述控制所述服务提供模块,接收所述用户发送的携带有所述目标信令的访问请求;从所述目标信令中解析出所述目标密钥编号,确定所述目标密钥编号对应的目标密钥;若根据所述目标密钥校验所述目标信令有效,则向所述用户提供所述访问请求对应的服务之后,所述方法还包括:
删除所述身份认证模块以及所述服务提供模块中存储的所述目标密钥以及对应的所述目标密钥编号;
继续接收所述鉴权密钥以及对应的所述密钥编号,并将新接收的所述鉴权密钥以及对应的所述密钥编号分别存储至所述身份认证模块以及所述服务提供模块。
5.根据权利要求1所述的方法,其特征在于,
所述鉴权密钥由预设的密钥生成服务器按照预设的密钥生成周期生成,并配置有对应的密钥编号。
6.一种鉴权认证装置,应用于包括身份认证模块以及服务提供模块的服务器,其特征在于,所述装置包括:
接收模块,用于接收随机生成的多个鉴权密钥以及对应的密钥编号;
存储模块,用于分别将每个所述鉴权密钥以及对应的所述密钥编号存储至所述身份认证模块以及所述服务提供模块;
第一控制模块,用于控制所述身份认证模块,接收用户发送的登录请求,在所述鉴权密钥中选取目标密钥;根据所述登录请求与所述目标密钥加密生成目标信令,并将所述目标信令返回至所述用户,其中,所述目标信令中携带有所述目标密钥对应的目标密钥编号;
第二控制模块,用于控制所述服务提供模块,接收所述用户发送的携带有所述目标信令的访问请求;从所述目标信令中解析出所述目标密钥编号,确定所述目标密钥编号对应的目标密钥;若根据所述目标密钥校验所述目标信令有效,则向所述用户提供所述访问请求对应的服务。
7.根据权利要求6所述的装置,其特征在于,所述第一控制模块具体用于:
控制所述身份认证模块解析所述登录请求,根据所述登录请求确定所述用户对应的用户信息;
将所述用户信息以及所述目标密钥编号,编码生成所述目标信令的载荷字符串;
为所述目标信令定义预设的目标加密算法,并将所述目标加密算法对应的算法类型编码生成所述目标信令的头部字符串;
根据所述目标加密算法以及所述目标密钥,分别加密所述头部字符串和所述载荷字符串,生成所述目标信令的签证字符串;
将所述头部字符串、所述载荷字符串以及所述签证字符串依次串联,生成所述目标信令。
8.根据权利要求7所述的装置,其特征在于,所述第二控制模块具体用于:
控制所述服务提供模块从所述目标信令的载荷字符串中,解析出所述目标密钥编号;从所述目标信令的所述头部字符串中,解析出所述目标信令对应的所述目标加密算法;
根据所述目标密钥编号,在所述服务提供模块存储的多个所述鉴权密钥以及对应的所述密钥编号中,筛选出所述目标密钥编号对应的所述目标密钥;
根据所述目标密钥以及所述目标加密算法,重新分别加密所述目标信令的所述头部字符串以及所述载荷字符串,生成所述目标信令的校验字符串;
确定所述校验字符串与所述签证字符串是否匹配,若匹配,则所述目标信令有效;若不匹配,则所述目标信令无效。
9.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至5中任一项所述的鉴权认证方法的步骤。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至5中任一项所述的鉴权认证方法的步骤。
CN202210804641.7A 2022-07-08 2022-07-08 一种鉴权认证方法、装置、电子设备及存储介质 Pending CN115174236A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210804641.7A CN115174236A (zh) 2022-07-08 2022-07-08 一种鉴权认证方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210804641.7A CN115174236A (zh) 2022-07-08 2022-07-08 一种鉴权认证方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN115174236A true CN115174236A (zh) 2022-10-11

Family

ID=83492377

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210804641.7A Pending CN115174236A (zh) 2022-07-08 2022-07-08 一种鉴权认证方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN115174236A (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106850699A (zh) * 2017-04-10 2017-06-13 中国工商银行股份有限公司 一种移动终端登录认证方法及系统
CN107911381A (zh) * 2017-12-01 2018-04-13 济南浪潮高新科技投资发展有限公司 应用程序编程接口的访问方法、系统、服务端及客户端
CN109474423A (zh) * 2018-12-10 2019-03-15 平安科技(深圳)有限公司 数据加解密方法、服务器及存储介质
CN112491881A (zh) * 2020-11-26 2021-03-12 中国人寿保险股份有限公司 跨平台单点登录方法、系统、电子设备及存储介质
CN113886793A (zh) * 2021-02-10 2022-01-04 京东科技控股股份有限公司 设备登录方法、装置、电子设备、系统和存储介质
CN114125824A (zh) * 2020-08-31 2022-03-01 中国电信股份有限公司 语音加密处理方法、服务器、终端以及系统、存储介质
CN114124480A (zh) * 2021-11-08 2022-03-01 闪捷信息科技有限公司 通信的认证方法、服务器、客户端、电子设备及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106850699A (zh) * 2017-04-10 2017-06-13 中国工商银行股份有限公司 一种移动终端登录认证方法及系统
CN107911381A (zh) * 2017-12-01 2018-04-13 济南浪潮高新科技投资发展有限公司 应用程序编程接口的访问方法、系统、服务端及客户端
CN109474423A (zh) * 2018-12-10 2019-03-15 平安科技(深圳)有限公司 数据加解密方法、服务器及存储介质
CN114125824A (zh) * 2020-08-31 2022-03-01 中国电信股份有限公司 语音加密处理方法、服务器、终端以及系统、存储介质
CN112491881A (zh) * 2020-11-26 2021-03-12 中国人寿保险股份有限公司 跨平台单点登录方法、系统、电子设备及存储介质
CN113886793A (zh) * 2021-02-10 2022-01-04 京东科技控股股份有限公司 设备登录方法、装置、电子设备、系统和存储介质
CN114124480A (zh) * 2021-11-08 2022-03-01 闪捷信息科技有限公司 通信的认证方法、服务器、客户端、电子设备及存储介质

Similar Documents

Publication Publication Date Title
US11877213B2 (en) Methods and systems for asset obfuscation
CN100432889C (zh) 提供断开鉴别的系统和方法
CN100561916C (zh) 一种更新认证密钥的方法和系统
US10721075B2 (en) Web of trust management in a distributed system
CN107742212B (zh) 基于区块链的资产验证方法、装置及系统
US11411938B2 (en) Proof-of-work key wrapping with integrated key fragments
CN113014539B (zh) 一种物联网设备安全保护系统及方法
EP2251810B1 (en) Authentication information generation system, authentication information generation method, and authentication information generation program utilizing a client device and said method
CN108199847B (zh) 数字安全处理方法、计算机设备及存储介质
CN111130798B (zh) 一种请求鉴权方法及相关设备
CN111971929A (zh) 安全分布式密钥管理系统
CN117240625B (zh) 一种涉及防篡改的数据处理方法、装置及电子设备
Masud et al. A user-centric privacy-preserving authentication protocol for IoT-AmI environments
CN115242553B (zh) 一种支持安全多方计算的数据交换方法及系统
CN101924734A (zh) 一种基于Web表单的身份认证方法及认证装置
CN106533677A (zh) 一种用户登录方法、用户终端及服务器
WO2016177843A1 (en) A security approach for storing credentials for offline use and copy-protected vault content in devices
Dalheimer et al. Genlm: license management for grid and cloud computing environments
CN113709115A (zh) 认证方法及装置
CN113312576A (zh) 一种页面跳转方法、系统及装置
Szymoniak et al. On some time aspects in security protocols analysis
CN115174236A (zh) 一种鉴权认证方法、装置、电子设备及存储介质
Chatterjee et al. Efficient and secure e‐voting scheme using elliptic curve cryptography
EP3866431A1 (en) Efficient random tokenization in the cloud
CN102739398A (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