CN114301708A - 身份认证方法、身份认证服务器及相关装置 - Google Patents
身份认证方法、身份认证服务器及相关装置 Download PDFInfo
- Publication number
- CN114301708A CN114301708A CN202111669305.8A CN202111669305A CN114301708A CN 114301708 A CN114301708 A CN 114301708A CN 202111669305 A CN202111669305 A CN 202111669305A CN 114301708 A CN114301708 A CN 114301708A
- Authority
- CN
- China
- Prior art keywords
- client
- authenticated
- signature
- authentication
- dynamic key
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000012545 processing Methods 0.000 claims description 50
- 230000002085 persistent effect Effects 0.000 claims description 3
- 230000001052 transient effect Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000007123 defense Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
Images
Abstract
本实施例公开了身份认证方法、身份认证服务器及相关装置,该方法包括:获取待认证客户端发送的认证请求,该认证请求携带对应已认证客户端的第一签名;根据待认证客户端的第二UserAgent、以及待认证客户端的第二IP地址和固态密钥,生成第二动态密钥;根据第二动态密钥生成第二签名;校验第一签名与第二签名是否一致,以判断待认证客户端与已认证客户端是否为同一客户端;若第一签名与第二签名一致,则确定对待认证客户端认证成功。可见,因不同客户端对应的UserAgen及IP地址不同,故通过比对第一签名和第二签名,即可确定对待认证客户端的认证是否成功,从而便捷有效地防御重放攻击及其带来的信息泄露风险。
Description
技术领域
本申请实施例涉及互联网技术领域,尤其涉及身份认证方法、身份认证服务器及相关装置。
背景技术
随着网络科技的不断发展,网络安全问题也愈来愈备受关注。其中,重放攻击,又称为重播攻击或回放攻击,是指攻击者利用网络监听等方式,盗取认证服务器签发给目标主机的认证凭据(例如,该认证凭据为目标主机已接收过的、来自服务器端的数据包,该数据包常包含目标主机的身份令牌),而后把该认证凭据重新返给认证服务器;此攻击,主要用于迷惑认证系统(可称为服务器端或身份认证服务器)使其通过对伪客户端的身份认证,破坏鉴权认证环节的准确性,从而达到盗取信息的目的。
针对于此,相关技术并未提供有效的解决方案。
发明内容
本申请实施例提供了身份认证方法、身份认证服务器及相关装置,用以解决切换客户端后身份令牌还能被有效重放的技术问题。
本申请实施例第一方面提供一种身份认证方法,包括:
获取待认证客户端发送的认证请求;所述认证请求携带对应已认证客户端的身份令牌;所述身份令牌携带根据第一动态密钥生成的第一签名,所述第一动态密钥是根据所述已认证客户端的第一用户代理字符串UserAgent、所述已认证客户端的第一互联网协议IP地址和固态密钥生成的;
根据所述待认证客户端的第二UserAgent、以及所述待认证客户端的第二IP地址和所述固态密钥,生成第二动态密钥;
根据所述第二动态密钥生成第二签名;
校验所述第一签名与所述第二签名是否一致,以判断所述待认证客户端与所述已认证客户端是否为同一客户端;
若所述第一签名与所述第二签名一致,则确定对所述待认证客户端认证成功。
可选地,所述获取待认证客户端发送的认证请求之前,所述方法还包括:
获取所述已认证客户端发送的签发令牌请求;
根据所述第一UserAgent、所述第一IP地址和所述固态密钥,生成对应所述已认证客户端的第一动态密钥;
根据所述第一动态密钥生成第一签名;
将包括所述第一签名的身份令牌发送至所述已认证客户端。
可选地,所述根据所述待认证客户端的第二UserAgent、以及所述待认证客户端的第二IP地址和所述固态密钥,生成第二动态密钥包括:
对所述待认证客户端的第二UserAgent、以及所述待认证客户端的第二IP地址和所述固态密钥进行信息摘要处理,将得到的信息摘要作为第二动态密钥。
可选地,所述身份令牌携带的第一签名是对所述身份令牌中的待签名信息进行签名处理得到的;所述根据所述第二动态密钥生成第二签名包括:
根据所述第二动态密钥对所述身份令牌中的待签名信息进行签名处理,得到第二签名。
可选地,所述待签名信息包括头部信息以及荷载信息,所述头部信息用于声明签名算法;所述根据所述第二动态密钥对所述身份令牌中的待签名信息进行签名处理,得到第二签名包括:
根据所述第二动态密钥对所述头部信息以及所述荷载信息进行基于所述签名算法的签名处理,得到第二签名。
可选地,所述身份令牌还携带有过期时间;所述确定对所述待认证客户端认证成功包括:
获取当前时间;
若所述当前时间未超过所述过期时间,则确定对所述待认证客户端认证成功。
可选地,所述校验所述第一签名与所述第二签名是否一致之后,所述方法还包括:
若所述第一签名与所述第二签名不一致,则确定对所述待认证客户端认证失败。
本申请实施例第二方面提供一种身份认证服务器,包括:
获取单元,用于获取待认证客户端发送的认证请求;所述认证请求携带对应已认证客户端的身份令牌;所述身份令牌携带根据第一动态密钥生成的第一签名,所述第一动态密钥是根据所述已认证客户端的第一用户代理字符串UserAgent、所述已认证客户端的第一互联网协议IP地址和固态密钥生成的;
处理单元,用于根据所述待认证客户端的第二UserAgent、以及所述待认证客户端的第二IP地址和所述固态密钥,生成第二动态密钥;
所述处理单元,还用于根据所述第二动态密钥生成第二签名;
所述处理单元,还用于校验所述第一签名与所述第二签名是否一致,以判断所述待认证客户端与所述已认证客户端是否为同一客户端;
所述处理单元,还用于若所述第一签名与所述第二签名一致,则确定对所述待认证客户端认证成功。
可选地,所述处理单元,还用于:
获取所述已认证客户端发送的签发令牌请求;
根据所述第一UserAgent、所述第一IP地址和所述固态密钥,生成对应所述已认证客户端的第一动态密钥;
根据所述第一动态密钥生成第一签名;
将包括所述第一签名的身份令牌发送至所述已认证客户端。
可选地,所述处理单元,具体用于对所述待认证客户端的第二UserAgent、以及所述待认证客户端的第二IP地址和所述固态密钥进行信息摘要处理,将得到的信息摘要作为第二动态密钥。
可选地,所述处理单元,具体用于根据所述第二动态密钥对所述身份令牌中的待签名信息进行签名处理,得到第二签名;所述身份令牌携带的第一签名是对所述身份令牌中的待签名信息进行签名处理得到的。
可选地,所述处理单元,具体用于根据所述第二动态密钥对所述头部信息以及所述荷载信息进行基于所述签名算法的签名处理,得到第二签名;所述待签名信息包括头部信息以及荷载信息,所述头部信息用于声明签名算法。
可选地,所述处理单元,具体用于:
获取当前时间;
若所述当前时间未超过所述过期时间,则确定对所述待认证客户端认证成功。
所述处理单元,还用于若所述第一签名与所述第二签名不一致,则确定对所述待认证客户端认证失败。
本申请实施例第三方面提供一种身份认证装置,包括:
中央处理器,存储器以及输入输出接口;
所述存储器为短暂存储存储器或持久存储存储器;
所述中央处理器配置为与所述存储器通信,并执行所述存储器中的指令操作以执行本申请实施例第一方面或第一方面的任一具体实现方式所描述的方法。
本申请实施例第四方面提供一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如本申请实施例第一方面或第一方面的任一具体实现方式所描述的方法。
本申请实施例第五方面提供一种包含指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行如本申请实施例第一方面或第一方面的任一具体实现方式所描述的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
因生成本申请实施例签名的动态密钥,不仅依据了身份认证服务器配置的固态密钥,还依据了客户端的UserAgen及IP地址(不同客户端对应的User Agen及IP地址不同),故通过比对已认证客户端的第一签名和待认证客户端的第二签名是否一致,即可判断已认证客户端与待认证客户端是否为同一客户端,换而言之,得以确定对待认证客户端的认证是否成功,从而便捷有效地防御重放攻击及其带来的信息泄露风险。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的JWT的签发及使用流程示意图;
图2为本申请实施例身份认证方法的一个流程示意图;
图3为本申请实施例身份认证方法的另一流程示意图;
图4为本申请实施例身份认证服务器的一个结构示意图;
图5为本申请实施例身份认证装置的另一结构示意图。
具体实施方式
本申请实施例涉及的身份令牌是指身份认证服务器为客户端发放的、用于表示客户端身份的信息,其中,对身份令牌的形式不做限定,例如可以是各种形式的Token。为便于理解,本申请将以JWT形式的身份令牌为例进行示例性说明,实际应用中,JWT(JSON WebToken)是一项Internet开放标准、认证机制,简而言之也是一个加密的字符串。JWT由三段信息构成的:第一部分为头部Header,是一段将JSON编码为Base64的字符串,用来声明类型和加密算法;第二部分为荷载Playload,是一段将JSON编码为Base64的字符串,用来存放有效信息(包含过期时间);第三部分为签名Signature,通过使用Header中声明的加密算法以及服务端密钥,可将字符串Header.Playload生成签名Signature;将三段文本信息用“.”连接起来(Header.Playload.Signature)即构成JWT字符串。请参阅图1,因JWT的头部和荷载信息使用服务端密钥(此处指的固态密钥)进行了签名,故JWT具有签发后不可更改的特性,且服务端并不存储会话信息,因此,身份认证服务器(可简称为服务器)签发JWT给客户端后,直到过期此JWT一直是有效的;换而言之,签发给该客户端的此JWT在有效期内可以被重放,即若他人劫持了你的未过期JWT,就相当于拥有了你的身份和会话,严重的将造成信息泄露和经济损失。需要说明的是,图1中客户端请求API接口的目的在于,向服务器端发起认证请求(文中可称为鉴定请求或鉴权请求)。
请参阅图2和图3,本申请第一方面提供身份认证方法的一个实施例,其应用于身份认证服务器,包括:
200、向已认证客户端签发包括第一签名的身份令牌。
在一个具体实施方式中,向已认证客户端签发包括第一签名的身份令牌的具体操作包括:
获取已认证客户端发送的签发令牌请求;需要说明的是,通过身份信息认证的客户端才得以签发身份令牌,本申请实施例中,对于已认证客户端的认证方式不做限定,例如可以是人工认证或者客户端登录成功等认证方式;
根据第一UserAgent、第一IP地址和固态密钥,生成对应已认证客户端的第一动态密钥;示例性地,采用信息摘要算法生成第一UserAgent、第一IP地址和固态密钥所唯一对应的第一动态密钥;
根据第一动态密钥生成第一签名;
将包括第一签名的身份令牌发送至已认证客户端。
其中,用户代理字符串UserAgent是一个特殊字符串头,可视为客户端当前的使用环境信息,包括设备操作系统及其版本信息、CPU类型、浏览器及其版本信息、浏览器渲染引擎、浏览器语言、浏览器插件等环境信息(或称为环境参数);需要说明的是,IP地址也属于客户端当前的使用环境信息。可以理解的是,因身份令牌中签名的生成依据包括UserAgent及IP地址等环境参数,故服务器通过签名能识别出请求签发令牌和请求鉴权的客户端的使用环境,以判断请求鉴权的该客户端是否为攻击者(即是否为最初请求签发令牌的原已认证客户端),从而有效地规避重放风险。
201、获取待认证客户端发送的认证请求。
实际应用中,客户端为了获得某页面操作权限或某文件内容等,需要先通过服务器端对其的身份认证,以规避信息泄露的风险,故来访的客户端需向服务器端发送携带身份令牌(如JWT)的认证请求以鉴定身份;因此,此处的认证请求携带对应已认证客户端的身份令牌,身份令牌携带根据第一动态密钥生成的第一签名,第一动态密钥是根据已认证客户端的第一用户代理字符串UserAgent、已认证客户端的第一互联网协议IP地址和固态密钥生成的。其中,生成JWT的其中一项依据是服务器端为已认证客户端配置的固态密钥,该固态密钥的作用在于,即便攻击者知道动态密钥的生成规则(例如,具体应用某种信息摘要算法生成动态密钥),缺少了此固态密钥,也无法欺骗服务器获得所需的权限或信息。固态密钥可保存至身份认证服务器的分布式文件系统、数据库或者区块链等处,便于身份认证服务器根据固态密钥生成动态密钥,其中,对于不同的客户端来说,可以适用同一固态密钥。
202、生成第二动态密钥。
根据待认证客户端的第二UserAgent、以及待认证客户端的第二IP地址和固态密钥,生成第二动态密钥。本申请中,第二UserAgent和第二IP地址可以包含于认证请求中发送,也可以是待认证客户端单独发送。
在一个具体实施方式中,生成第二动态密钥的具体操作包括:对待认证客户端的第二UserAgent、以及待认证客户端的第二IP地址和固态密钥进行信息摘要处理,将得到的信息摘要作为第二动态密钥。
示例性地,采用MD5信息摘要算法对第二UserAgent、第二IP地址和固态密钥进行信息摘要处理,以得到唯一对应的32位字符串指纹(即信息摘要),并将该32位字符串指纹作为第二动态密钥。需要说明的是,MD5算法作为一种不可逆的信息摘要算法,对任何的输入信息都能生成唯一对应的摘要结果,且此摘要结果为32位(字母+数字)的字符串。本申请还可以采用除MD5算法之外的其他信息摘要算法,以生成动态密钥,例如SHA-1、SHA-2或SHA-3算法;相比之下,从MD5、SHA-1、SHA-2到SHA-3算法,它们对抗攻击的强度依次增强,但生成摘要结果的生成速度依次减慢,而本应用场景下,关于生成性能的考量要大于对抗难度的,故本申请实施例可选MD5算法,当然,在其他应用场景下,可以根据生成性能和对抗难度的需求选用信息摘要算法。
需要说明的是,生成第一动态密钥所采用的信息摘要算法与生成第二动态密钥所采用的信息摘要算法相同。
203、根据第二动态密钥生成第二签名。
在一个具体实施方式中,根据第二动态密钥生成第二签名的具体操作包括:根据第二动态密钥对身份令牌中的待签名信息进行签名处理,得到第二签名;而此处身份令牌携带的第一签名是对身份令牌中的待签名信息进行签名处理得到的,其中,待签名信息包括头部信息以及荷载信息,头部信息用于声明签名算法。
因此具体地,根据第二动态密钥对身份令牌中的待签名信息进行签名处理,得到第二签名可以包括:根据第二动态密钥对头部信息以及荷载信息进行基于签名算法的签名处理,得到第二签名。
204、校验第一签名与第二签名是否一致。
实际应用中,签发JWT与鉴定JWT两个过程所用的动态密钥生成规则是一样的,因此,若两处的环境信息(如UserAgent和IP地址)一致,所生成的动态密钥就是一样的,相应地,所生成的签名及其构成的JWT都是一致的;反之,若环境信息发生变化(如异地登录导致IP地址变化),请求鉴权时生成的动态密钥也将与最初请求签发JWT时生成的动态密钥不同,相应地,动态密钥不同会导致生成的签名也会不同(此种情况下的第二签名可认为是无效签名)。因此,校验构成身份令牌的第一签名与第二签名是否一致(不用根据第二签名生成对应待认证客户端的身份令牌),即可确定请求鉴权的待认证客户端是否为原请求签发令牌的已认证客户端。
205、确定对待认证客户端认证成功。
在一个具体实施方式中,若第一签名与第二签名一致,则表示已认证客户端与待认证客户端为同一客户端,确定对待认证客户端认证成功。对于认证成功的待认证客户端,身份认证服务器可以赋予相应的权限,例如数据访问权限,具体的权限根据实际应用场景而定。
在一个具体实施方式中,身份令牌还携带有过期时间,故确定对待认证客户端认证成功的具体操作包括:
获取当前时间;
若当前时间未超过过期时间,则确定对待认证客户端认证成功。
在该情况下,攻击者重放的JWT通常是有效期(具体可理解为对应已认证客户端的JWT的过期时间)内的身份令牌,否则,其无法通过服务器端的超期认证关卡(即鉴定当前时间是否超过身份令牌中的过期时间)而直接被鉴定为超期JWT(具体可理解为当中的签名为超期签名);失效的超期JWT可以通过续签激活。因此,在JWT鉴权环节,服务器端还可以对请求鉴权(请求认证)的客户端所返回的JWT有效期进行超期认证,以防请求鉴权的该客户端(待认证客户端)作为攻击者或伪客户端用过期的JWT(具体为用过期的签名)欺瞒服务器。
可见,若第一签名与第二签名一致、且当前时间未超过过期时间,则可最终确定对待认证客户端认证成功;即表示请求鉴权的客户端即为最初请求签发JWT的客户端,且其请求鉴权的JWT是有效期内的有效身份令牌,进而允许该客户端获得所需的操作权限或信息。
206、确定对待认证客户端认证失败。
在一个具体实施方式中,若第一签名与第二签名不一致,则最终确定对待认证客户端认证失败,以表示已认证客户端与待认证客户端为不同客户端,甚至可表明该待认证客户端很大可能就是攻击者。
可见,较比传统的身份认证方法,本申请实施例通过将签名用到的固态密钥处理成动态密钥的形式,且将动态密钥的生成与用户指纹(此指某客户端的UserAgent及IP地址)关联起来,一定程度上加强了服务器端对重放攻击的防御能力及其身份认证环节的准确性。
综上,本申请实施例的处理方法增强了身份令牌的安全性,使得即使泄漏了身份令牌,其也无法在其他设备端上重放,即解决了切换客户端后身份令牌还能被重放的问题;此外,本服务器无需额外存储和管理会话状态,故实现成本能得以降低。
请参阅图4,本申请第二方面提供一种身份认证服务器的一个实施例,包括获取单元401以及处理单元402,获取单元401,用于获取待认证客户端发送的认证请求;认证请求携带对应已认证客户端的身份令牌;身份令牌携带根据第一动态密钥生成的第一签名,第一动态密钥是根据已认证客户端的第一用户代理字符串UserAgent、已认证客户端的第一互联网协议IP地址和固态密钥生成的;
处理单元402,用于根据待认证客户端的第二UserAgent、以及待认证客户端的第二IP地址和固态密钥,生成第二动态密钥;
处理单元402,还用于根据第二动态密钥生成第二签名;
处理单元402,还用于校验第一签名与第二签名是否一致,以判断待认证客户端与已认证客户端是否为同一客户端;
处理单元402,还用于若第一签名与第二签名一致,则确定对待认证客户端认证成功。
可选地,处理单元402,还用于:
获取已认证客户端发送的签发令牌请求;
根据第一UserAgent、第一IP地址和固态密钥,生成对应已认证客户端的第一动态密钥;
根据第一动态密钥生成第一签名;
将包括第一签名的身份令牌发送至已认证客户端。
可选地,处理单元402,具体用于对待认证客户端的第二UserAgent、以及待认证客户端的第二IP地址和固态密钥进行信息摘要处理,将得到的信息摘要作为第二动态密钥。
可选地,处理单元402,具体用于根据第二动态密钥对身份令牌中的待签名信息进行签名处理,得到第二签名;身份令牌携带的第一签名是对身份令牌中的待签名信息进行签名处理得到的。
可选地,处理单元402,具体用于根据第二动态密钥对头部信息以及荷载信息进行基于签名算法的签名处理,得到第二签名;待签名信息包括头部信息以及荷载信息,头部信息用于声明签名算法。
可选地,处理单元402,具体用于:
获取当前时间;
若当前时间未超过过期时间,则确定对待认证客户端认证成功。
可选地,处理单元402,还用于若第一签名与第二签名不一致,则确定对待认证客户端认证失败。
本申请实施例中,身份认证服务器各单元所执行的操作与前述第一方面或第一方面的任一具体方法实施例所描述的操作类似,具体此处不再赘述。
请参阅图5,本申请实施例的身份认证装置500可以包括一个或一个以上中央处理器CPU(CPU,central processing units)501和存储器505,该存储器505中存储有一个或一个以上的应用程序或数据。
其中,存储器505可以是易失性存储或持久存储。存储在存储器505的程序可以包括一个或一个以上模块,每个模块可以包括对身份认证装置中的一系列指令操作。更进一步地,中央处理器501可以设置为与存储器505通信,在身份认证装置500上执行存储器505中的一系列指令操作。
身份认证装置500还可以包括一个或一个以上电源502,一个或一个以上有线或无线网络接口503,一个或一个以上输入输出接口504,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
该中央处理器501可以执行前述第一方面或第一方面的任一具体方法实施例所执行的操作,具体不再赘述。
可以理解的是,在本申请的各种实施例中,各步骤的序号的大小并不意味着执行顺序的先后,各步骤的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统或装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品(计算机程序产品)存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,业务服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-only memory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (10)
1.一种身份认证方法,其特征在于,应用于身份认证服务器,包括:
获取待认证客户端发送的认证请求;所述认证请求携带对应已认证客户端的身份令牌;所述身份令牌携带根据第一动态密钥生成的第一签名,所述第一动态密钥是根据所述已认证客户端的第一用户代理字符串UserAgent、所述已认证客户端的第一互联网协议IP地址和固态密钥生成的;
根据所述待认证客户端的第二UserAgent、以及所述待认证客户端的第二IP地址和所述固态密钥,生成第二动态密钥;
根据所述第二动态密钥生成第二签名;
校验所述第一签名与所述第二签名是否一致,以判断所述待认证客户端与所述已认证客户端是否为同一客户端;
若所述第一签名与所述第二签名一致,则确定对所述待认证客户端认证成功。
2.根据权利要求1所述的方法,其特征在于,所述获取待认证客户端发送的认证请求之前,所述方法还包括:
获取所述已认证客户端发送的签发令牌请求;
根据所述第一UserAgent、所述第一IP地址和所述固态密钥,生成对应所述已认证客户端的第一动态密钥;
根据所述第一动态密钥生成第一签名;
将包括所述第一签名的身份令牌发送至所述已认证客户端。
3.根据权利要求1所述的方法,其特征在于,所述根据所述待认证客户端的第二UserAgent、以及所述待认证客户端的第二IP地址和所述固态密钥,生成第二动态密钥包括:
对所述待认证客户端的第二UserAgent、以及所述待认证客户端的第二IP地址和所述固态密钥进行信息摘要处理,将得到的信息摘要作为第二动态密钥。
4.根据权利要求1所述的方法,其特征在于,所述身份令牌携带的第一签名是对所述身份令牌中的待签名信息进行签名处理得到的;所述根据所述第二动态密钥生成第二签名包括:
根据所述第二动态密钥对所述身份令牌中的待签名信息进行签名处理,得到第二签名。
5.根据权利要求4所述的方法,其特征在于,所述待签名信息包括头部信息以及荷载信息,所述头部信息用于声明签名算法;所述根据所述第二动态密钥对所述身份令牌中的待签名信息进行签名处理,得到第二签名包括:
根据所述第二动态密钥对所述头部信息以及所述荷载信息进行基于所述签名算法的签名处理,得到第二签名。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述身份令牌还携带有过期时间;所述确定对所述待认证客户端认证成功包括:
获取当前时间;
若所述当前时间未超过所述过期时间,则确定对所述待认证客户端认证成功。
7.根据权利要求1至5任一项所述的方法,其特征在于,所述校验所述第一签名与所述第二签名是否一致之后,所述方法还包括:
若所述第一签名与所述第二签名不一致,则确定对所述待认证客户端认证失败。
8.一种身份认证服务器,其特征在于,包括:
获取单元,用于获取待认证客户端发送的认证请求;所述认证请求携带对应已认证客户端的身份令牌;所述身份令牌携带根据第一动态密钥生成的第一签名,所述第一动态密钥是根据所述已认证客户端的第一用户代理字符串UserAgent、所述已认证客户端的第一互联网协议IP地址和固态密钥生成的;
处理单元,用于根据所述待认证客户端的第二UserAgent、以及所述待认证客户端的第二IP地址和所述固态密钥,生成第二动态密钥;
所述处理单元,还用于根据所述第二动态密钥生成第二签名;
所述处理单元,还用于校验所述第一签名与所述第二签名是否一致,以判断所述待认证客户端与所述已认证客户端是否为同一客户端;
所述处理单元,还用于若所述第一签名与所述第二签名一致,则确定对所述待认证客户端认证成功。
9.一种身份认证装置,其特征在于,包括:
中央处理器,存储器以及输入输出接口;
所述存储器为短暂存储存储器或持久存储存储器;
所述中央处理器配置为与所述存储器通信,并执行所述存储器中的指令操作以执行权利要求1至7中任意一项所述的方法。
10.一种计算机可读存储介质,其特征在于,包括指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1至7中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111669305.8A CN114301708A (zh) | 2021-12-30 | 2021-12-30 | 身份认证方法、身份认证服务器及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111669305.8A CN114301708A (zh) | 2021-12-30 | 2021-12-30 | 身份认证方法、身份认证服务器及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114301708A true CN114301708A (zh) | 2022-04-08 |
Family
ID=80973540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111669305.8A Pending CN114301708A (zh) | 2021-12-30 | 2021-12-30 | 身份认证方法、身份认证服务器及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114301708A (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150163065A1 (en) * | 2013-12-05 | 2015-06-11 | Xiaolai Li | Identity authentication method and apparatus and server |
US20180013738A1 (en) * | 2016-07-07 | 2018-01-11 | Samsung Sds Co., Ltd. | Method for authenticating client system, client device, and authentication server |
CN107911219A (zh) * | 2017-11-09 | 2018-04-13 | 成都知道创宇信息技术有限公司 | 一种基于密钥签名的api防cc方法 |
CN110225045A (zh) * | 2019-06-18 | 2019-09-10 | 平安科技(深圳)有限公司 | 全链路数据鉴权方法、装置、设备及存储介质 |
US20190306157A1 (en) * | 2018-03-30 | 2019-10-03 | Lendingclub Corporation | Authenticating and authorizing users with jwt and tokenization |
CN110690972A (zh) * | 2019-10-11 | 2020-01-14 | 迈普通信技术股份有限公司 | 令牌认证方法、装置、电子设备及存储介质 |
CN110691087A (zh) * | 2019-09-29 | 2020-01-14 | 北京搜狐新媒体信息技术有限公司 | 一种访问控制方法、装置、服务器及存储介质 |
CN111277550A (zh) * | 2018-12-05 | 2020-06-12 | 中国电信股份有限公司 | 基于RESTful的交互方法、服务器、客户端和装置 |
US20200259652A1 (en) * | 2019-02-08 | 2020-08-13 | Microsoft Technology Licensing, Llc | System and method for hardening security between web services using protected forwarded access tokens |
CN113676336A (zh) * | 2021-10-22 | 2021-11-19 | 深圳市明源云采购科技有限公司 | 微服务访问代理方法、设备及存储介质 |
CN113783867A (zh) * | 2021-09-07 | 2021-12-10 | 福建天泉教育科技有限公司 | 一种请求认证方法及终端 |
-
2021
- 2021-12-30 CN CN202111669305.8A patent/CN114301708A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150163065A1 (en) * | 2013-12-05 | 2015-06-11 | Xiaolai Li | Identity authentication method and apparatus and server |
US20180013738A1 (en) * | 2016-07-07 | 2018-01-11 | Samsung Sds Co., Ltd. | Method for authenticating client system, client device, and authentication server |
CN107911219A (zh) * | 2017-11-09 | 2018-04-13 | 成都知道创宇信息技术有限公司 | 一种基于密钥签名的api防cc方法 |
US20190306157A1 (en) * | 2018-03-30 | 2019-10-03 | Lendingclub Corporation | Authenticating and authorizing users with jwt and tokenization |
CN111277550A (zh) * | 2018-12-05 | 2020-06-12 | 中国电信股份有限公司 | 基于RESTful的交互方法、服务器、客户端和装置 |
US20200259652A1 (en) * | 2019-02-08 | 2020-08-13 | Microsoft Technology Licensing, Llc | System and method for hardening security between web services using protected forwarded access tokens |
CN110225045A (zh) * | 2019-06-18 | 2019-09-10 | 平安科技(深圳)有限公司 | 全链路数据鉴权方法、装置、设备及存储介质 |
CN110691087A (zh) * | 2019-09-29 | 2020-01-14 | 北京搜狐新媒体信息技术有限公司 | 一种访问控制方法、装置、服务器及存储介质 |
CN110690972A (zh) * | 2019-10-11 | 2020-01-14 | 迈普通信技术股份有限公司 | 令牌认证方法、装置、电子设备及存储介质 |
CN113783867A (zh) * | 2021-09-07 | 2021-12-10 | 福建天泉教育科技有限公司 | 一种请求认证方法及终端 |
CN113676336A (zh) * | 2021-10-22 | 2021-11-19 | 深圳市明源云采购科技有限公司 | 微服务访问代理方法、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9003191B2 (en) | Token-based authentication using middle tier | |
US9749130B2 (en) | Distributing keys for decrypting client data | |
CN109714176B (zh) | 口令认证方法、装置及存储介质 | |
WO2005104686A2 (en) | Dynamic executable | |
CN112989426B (zh) | 授权认证方法及装置、资源访问令牌的获取方法 | |
CN112559994B (zh) | 访问控制方法、装置、设备及存储介质 | |
CN104980449B (zh) | 网络请求的安全认证方法及系统 | |
US20140143535A1 (en) | Authenticated file handles for network file systems | |
CN112968910B (zh) | 一种防重放攻击方法和装置 | |
Alqubaisi et al. | Should we rush to implement password-less single factor FIDO2 based authentication? | |
CN114244508A (zh) | 数据加密方法、装置、设备及存储介质 | |
CN111510442A (zh) | 一种用户验证方法、装置、电子设备及存储介质 | |
Aljawarneh et al. | A web client authentication system using smart card for e-systems: initial testing and evaluation | |
CN114844644A (zh) | 资源请求方法、装置、电子设备及存储介质 | |
CN112689014A (zh) | 一种双全工通信方法、装置、计算机设备和存储介质 | |
Li et al. | A simple and robust anonymous two‐factor authenticated key exchange protocol | |
CN114301708A (zh) | 身份认证方法、身份认证服务器及相关装置 | |
Liu et al. | Risk-based dynamic identity authentication method based on the UCON model | |
CN114978544A (zh) | 一种访问认证方法、装置、系统、电子设备及介质 | |
Mei et al. | Research and Defense of Cross-Site WebSocket Hijacking Vulnerability | |
CN108494805B (zh) | 一种cc攻击的处理方法及装置 | |
CN113595731A (zh) | 一种分享链接的防护方法、装置及计算机可读存储介质 | |
CN117640109B (zh) | Api接口安全访问方法、装置、电子设备及存储介质 | |
CN113938323B (zh) | 基于jwt的防重放攻击方法、装置、设备以及存储介质 | |
Santra et al. | Design and analysis of a modified remote attestation protocol |
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 |