一种动态签名方法及应用该方法的客户端和服务器技术

技术编号:14444980 阅读:59 留言:0更新日期:2017-01-15 10:22
本申请公开了一种动态签名方法及应用该方法的客户端和服务器,该方法通过客户端向服务器端发送认证请求,服务器端接收到认证请求后,向客户端发送携带挑战值的认证请求应答消息,客户端根据认证请求应答消息中的挑战值选择签名算法,并使用选择的签名算法对生成的认证响应消息进行签名,向服务器端发送认证响应消息,最后服务器端接收认证响应消息,同样根据挑战值选择签名算法,校验响应消息的签名,如果校验通过,则认证通过,否则报错。本申请采用随机的签名算法,即使用户密钥泄露,由于攻击者不知道签名算法,也无法伪造响应消息,增强了安全性。

【技术实现步骤摘要】

本申请属于身份认证
,尤其涉及在身份认证过程中的一种动态签名方法及应用该方法的客户端和服务器
技术介绍
重放攻击是指攻击者发送一个目的主机已接受过的数据包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。重放攻击是计算机世界黑客常用的攻击方式之一,为了抵御重放攻击,现在的身份认证一般采用挑战应答方式。挑战应答方式是在用户在客户端申请登录系统进行身份认证时,先发送请求,系统服务器端接收到请求后向客户端发送挑战值,客户端根据接收到的挑战值计算出应答值,并向系统服务器端发送响应消息,系统服务器端在收到响应消息后进行判断应答值是否正确,如果正确则认证通过,否则断开连接。而为了防止响应信息被截获并篡改或被攻击者伪造,通常还对响应消息进行签名。然而现有技术都是采用固定算法进行签名,如果签名密钥泄漏,攻击者就能伪造响应消息,从而造成用户帐号的被盗用或认证失败。
技术实现思路
本申请的目的是提供一种动态签名方法及应用该方法的客户端和服务器,在签名密钥泄漏情况下,如果攻击者不知道签名算法,也无法伪造响应消息,提高安全性。为了实现上述目的,本申请技术方案如下:一种动态签名方法,应用于本文档来自技高网...
一种动态签名方法及应用该方法的客户端和服务器

【技术保护点】
一种动态签名方法,应用于身份认证系统的客户端,所述身份认证系统还包括服务器端,其特征在于,所述动态签名方法包括:向服务器端发送认证请求;接收所述服务器端发送的认证请求应答消息,所述认证请求应答消息中携带有挑战值;根据认证请求应答消息中的挑战值选择签名算法,并使用选择的签名算法对生成的认证响应消息进行签名,向服务器端发送认证响应消息,以便服务器端在接收到所述认证响应消息后,同样根据所述挑战值选择签名算法对认证响应消息进行校验。

【技术特征摘要】
1.一种动态签名方法,应用于身份认证系统的客户端,所述身份认证系统还包括服务器端,其特征在于,所述动态签名方法包括:向服务器端发送认证请求;接收所述服务器端发送的认证请求应答消息,所述认证请求应答消息中携带有挑战值;根据认证请求应答消息中的挑战值选择签名算法,并使用选择的签名算法对生成的认证响应消息进行签名,向服务器端发送认证响应消息,以便服务器端在接收到所述认证响应消息后,同样根据所述挑战值选择签名算法对认证响应消息进行校验。2.根据权利要求1所述的动态签名方法,其特征在于,所述用选择的签名算法对生成的认证响应消息进行签名,其中进行签名时所使用的密钥为约定的第二私钥,在服务器端保存有约定的第二公钥用于对签名的认证响应消息进行校验。3.根据权利要求1所述的动态签名方法,其特征在于,所述用选择的签名算法对生成的认证响应消息进行签名,其中进行签名时所使用的密钥为用户私钥,在服务器端保存有对应的用户公钥用于对签名的认证响应消息进行校验,所述动态签名方法还包括:向服务器端发送开通请求,接收服务器端发送的携带挑战值的开通请求应答消息;生成包括用户私钥和用户公钥的用户公私钥对,保存用户私钥;根据开通请求应答消息中的挑战值选择签名算法,并使用选择的签名算法和约定的第二私钥对生成的开通响应消息进行签名后发送给服务器端,所述开通响应消息包括用户公钥,以便服务器端接收开通响应消息并使用约定第二公钥进行校验,在服务器端保存用户公钥。4.根据权利要求3所述的动态签名方法,其特征在于,所述开通请求应答消息在服务器端以约定的第一私钥进行签名,所述动态签名方法在接收到开通请求应答消息后,还包括:以约定的第一公钥对接收的开通请求应答消息进行校验,如果校验通过才进行后续的响应,否则报错。5.根据权利要求2、3、4任一权利要求所述的动态签名方法,其特征在于,所述认证请求应答消息在服务器端以约定的第一私钥进行签名,所述动态签名方法在接收到认证请求应答消息后,还包括:以约定的第一公钥对接收的认证请求应答消息进行校验,如果校验通过才进行后续的响应,否则报错。6.一种动态签名方法,应用于身份认证系统的服务器端,所述身份认证系统还包括客户端,其特征在于,所述动态签名方法包括:接收客户端发送的认证请求,向客户端发送携带挑战值的认证请求应答消息;接收客户端根据认证请求应答消息中的挑战值选择签名算法,并使用选择的签名算法进行签名的认证响应消息,同样根据挑战值选择签名算法校验认证响应消息的签名,如果校验通过,则认证通过,否则报错。7.根据权利要求6所述的动态签名方法,其特征在于,所述根据挑战值选择签名算法校验认证响应消息的签名,其中校验所使用的密钥为约定的第二公钥,对客户端使用选择的签名算法和约定的第二私钥签名的认证响应消息进行校验。8.根据权利要求7所述的动态签名方法,其特征在于,所述根据挑战值选择签名算法校验认证响应消息的签名,其中校验所使用的密钥为用户公钥,所述客户端用选择的签名算法对生成的认证响应消息进行签名,使用的密钥为对应的用户私钥,所述动态签名方法还包括:接收客户端发送的开通请求,向客户端发送携带挑战值的开通请求应答消息;接收客户端根据开通请求应答消息中的挑战值选择签名算法,并使用选择的签名算法和约定的第二私钥签名的开通响应消息,所述开通响应消息包括用户公钥,同样根据挑战值选择签名算法,并使用第二公钥校验开通响应消息,在服务器端保存用户公钥。9.根据权利要求8所述的动态签名方法,其特征在于,所述动态签
\t名方法还包括:以约定的第一私钥对开通请求应答消息进行签名,以便所述客户端以约定的第一公钥对接收的开通请求应答消息进行校验,如果校验通过才进行后续的响应,否则报错。10.根据权利要求7、8、9任一权利要求所述的动态签名方法,其特征在于,所述动态签名方法在接收客户端发送的认证请求后,还包括:以约定的第一私钥对携带挑战值的认证请求应答消息进行签名后发送,以便所述客户端以约定的第一公钥对接收的认证请求应答消息进行校验,如果校验通过才进行后续的响应,否则报错。11.一种客户端,应用于...

【专利技术属性】
技术研发人员:林钧燧
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1