本发明专利技术公开了一种双因子认证方法,包括:客户端以用户设定的口令作为密钥,以客户端随机数和用户名作为数据,通过预定算法运算得到用户口令认证的校验值,并将由所述校验值和用户名组成的认证请求信息、客户端随机数携带在安全传输层协议报文中发送给服务器;服务器对接收到的认证请求信息进行解析,并根据解析到的用户名获取预存储的用户口令;通过同样的算法对获取到的预存储的用户口令进行运算,将运算得到的校验值与认证请求信息中的校验值进行比较,当确认二者相同时,用户口令认证成功;服务器和客户端继续进行安全传输层协议证书认证,直到安全传输层协议证书认证完成;本发明专利技术减少了认证报文交互次数,认证效率高,提高了认证速度。
【技术实现步骤摘要】
本专利技术涉及身份认证
,尤其涉及。
技术介绍
虚随着互联网技术的飞速发展,网络服务与人们的日常生活、工作密不可分,典型的有网上购物、网上银行、网络游戏。网络不仅给人们提供了便利,也带来了烦恼,病毒、木马大肆传播,大量客户的账号密码信息被窃取,网络安全问题日益突出地显现出来。网络安全中的身份认证技术也越发重要。 身份认证是一方(如自然人或系统)向另一方声明自身的身份并被验证的过程。认证过程可以包含一种或多种认证机制。认证机制是某个体证明对一个认证因子的认知与占有的流程。 目前,身份认证方法主要包括两种单因子认证和双因子认证。双因子认证使用两个认证因子,安全性得到很大提高。 目前使用用户口令认证和TLS (Transport Layer Security Protocol,安全传输层协议)证书认证的双因子认证方法,都是先进行TLS证书认证,证书认证成功后再进行用户口令认证,这样就需要较多的认证报文交互次数,从而使得认证效率低,认证速度慢。
技术实现思路
鉴于上述的分析,本专利技术目的在于提供,用以解决现有技术中的双因子认证方法效率低、速度慢的问题。 本专利技术的目的主要是通过以下技术方案实现的 本专利技术提供了,所述方法包括 步骤A:客户端以用户设定的口令作为密钥,以客户端随机数和用户名作为数据,通过预定算法运算得到用户口令认证的校验值,并将由所述校验值和用户名组成的认证请求信息、客户端随机数携带在安全传输层协议报文中发送给服务器; 步骤B :服务器对接收到的安全传输层协议报文中的认证请求信息进行解析,并根据解析到的用户名获取数据库中预存储的用户口令; 步骤C:服务器通过同样的算法对获取到的预存储的用户口令进行运算,将运算得到的校验值与认证请求信息中的校验值进行比较,当确认二者相同时,用户口令认证成功; 步骤D :用户口令认证成功后,服务器和客户端继续进行安全传输层协议证书认证,直到安全传输层协议证书认证完成。进一步地,所述步骤B具体包括 服务器根据用户名查询数据库,如果无法获取该用户的用户口令,则用户口令认证失败;如果获取了用户口令,则执行步骤C。 进一步地,所述步骤C具体包括3 CI :服务器通过同样的算法对获取到的预存储的用户口令进行运算,将运算得到 的用户口令的校验值与认证请求信息中的校验值进行比较,如果不同,则执行步骤C2,否则 执行步骤C3 ; 步骤C2 :用户口令认证失败,将认证结果信息携带在安全传输层协议响应报文中 发送给该用户,并终止认证; 步骤C3 :用户口令认证成功,服务器继续分析安全传输层协议报文的其余部分, 并将认证结果信息携带在安全传输层协议响应报文中发送给该用户。 进一步地,所述步骤D具体包括 客户端收到安全传输协议响应报文后,根据其中的认证结果信息进行分析,如果 用户口令认证失败,则终止认证;如果用户口令认证成功,则继续分析报文的其余部分,生 成安全传输协议响应报文,发送给服务器; 客户端和服务器继续TLS证书认证,直到TLS认证完成。 其中,所述认证请求信息至少包括以下字段中的一个或多个 安全传输协议扩展类型、数据长度、校验值长度、校验值、用户名长度和用户名。所 述认证结果信息至少包括以下字段中的一个或多个 安全传输协议扩展类型、数据长度、认证结果值和失败原因类型。 本专利技术有益效果如下 本专利技术通过对标准的TLS报文进行扩展,在TLS证书认证过程中同时传输用户口 令认证信息,从而能够避免TLS证书认证后再次传递用户口令认证信息,减少了认证报文 交互次数,认证效率高,提高了认证速度。 本专利技术的其他特征和优点将在随后的说明书中阐述,并且,部分的从说明书中变 得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在所写的说明 书、权利要求书、以及附图中所特别指出的结构来实现和获得。附图说明 图1为本专利技术所述方法的流程示意图; 图2为本专利技术实施例所述方法的流程示意图。具体实施例方式本专利技术的核心思想为针对使用用户口令认证和TLS (Transport LayerSecurity Protocol,安全传输层协议)证书认证的双因子认证,在TLS证书认证过程中同时传输用户 口令认证信息,避免TLS证书认证后再次传递用户口令认证信息,减少了认证报文交互次 数,提高了认证速度。 下面结合附图来具体描述本专利技术的优先实施例,其中,附图构成本申请一部分,并 与本专利技术的实施例一起用于阐释本专利技术的原理。 如图1所示,图1为本专利技术所述方法的流程示意图,具体可以包括下列步骤 步骤101 :客户端产生TLS报文需要的客户端随机数,以用户的口令作为密钥,以 客户端随机数+用户名作为数据,进行HMAC(—种经加密的散列消息验证码,是一种使用加 密散列函数和密钥计算出来的一种消息验证码(MAC))运算得到用户口令认证的校验值。校验值和用户名组成认证请求信息,按照TLS扩展结构格式,编码认证请求信息,认证请求 信息数据结构为TLS扩展类型(2字节)+数据长度(l字节)+校验值长度(4字节)+校 验值+用户名长度(4字节)+用户名,其中TLS扩展类型值为2001 ,数据长度为其后所有字 段的字节数,长度编码使用网络字节序。然后该用户产生TLS报文需要的其他数据(TLS报 文中与证书认证有关的数据),与客户端随机数、认证请求信息一起组成完整的TLS报文, 发送给服务器。 步骤102 :服务器收到该用户的TLS报文后,读取其中的认证请求信息,分析得到其中的用户名,然后根据用户名查询数据库中预存储的用户口令,如果无法获取用户口令,说明此用户不存在,用户口令认证失败;如果获取了用户口令,则执行步骤103 ; 步骤103 :服务器进行同样的HMAC运算,将运算得到的用户口令的校验值与来自该用户认证请求信息中的校验值进行比较。如果不同,说明用户口令认证失败;如果相同,说明用户口令认证成功。 步骤103 :服务器按照TLS扩展结构格式编码认证结果信息,认证结果信息数据结 构为TLS扩展类型(2字节)+数据长度(l字节)+认证结果值(l字节)+失败原因类型 (2字节),其中TLS扩展类型值为2002,数据长度为其后所有字段的字节数,认证结果值1 代表认证成功,2代表认证失败;失败原因0代表无原因或不需要原因,1代表用户不存在,2代表用户口令错误,长度编码使用网络字节序。如果用户口令认证失败,服务器生成TLS 响应报文,将认证结果信息嵌入TLS报文中,发送给该用户,然后服务器终止认证。如果用 户口令认证成功,服务器继续分析TLS报文的其余部分,生成TLS响应报文,并将认证结果 信息嵌入到TLS响应报文中,发送给该用户。 步骤104 :该用户收到TLS响应报文后,读取其中的认证结果信息,如果用户口令 认证失败,则终止认证;如果用户口令认证成功,则执行步骤105。 步骤105 :继续分析TLS响应报文的其余部分,生成TLS响应报文,发送给服务器; 该用户和服务器继续TLS证书认证,直到TLS认证完成。所述TLS证书认证的具体认证过 程可以采用现有技术中已有的成熟方案,此处不再赘述。 为了便于理解本专利技术,下面以SSLVPN(SSL,安全套接层;VPN,虚拟专用网;SSLVPN 即采用SSL协议来实现本文档来自技高网...
【技术保护点】
一种双因子认证方法,其特征在于,所述方法包括:步骤A:客户端以用户设定的口令作为密钥,以客户端随机数和用户名作为数据,通过预定算法运算得到用户口令认证的校验值,并将由所述校验值和用户名组成的认证请求信息、客户端随机数携带在安全传输层协议报文中发送给服务器;步骤B:服务器对接收到的安全传输层协议报文中的认证请求信息进行解析,并根据解析到的用户名获取数据库中预存储的用户口令;步骤C:服务器通过同样的算法对获取到的预存储的用户口令进行运算,将运算得到的校验值与认证请求信息中的校验值进行比较,当确认二者相同时,用户口令认证成功;步骤D:用户口令认证成功后,服务器和客户端继续进行安全传输层协议证书认证,直到安全传输层协议证书认证完成。
【技术特征摘要】
一种双因子认证方法,其特征在于,所述方法包括步骤A客户端以用户设定的口令作为密钥,以客户端随机数和用户名作为数据,通过预定算法运算得到用户口令认证的校验值,并将由所述校验值和用户名组成的认证请求信息、客户端随机数携带在安全传输层协议报文中发送给服务器;步骤B服务器对接收到的安全传输层协议报文中的认证请求信息进行解析,并根据解析到的用户名获取数据库中预存储的用户口令;步骤C服务器通过同样的算法对获取到的预存储的用户口令进行运算,将运算得到的校验值与认证请求信息中的校验值进行比较,当确认二者相同时,用户口令认证成功;步骤D用户口令认证成功后,服务器和客户端继续进行安全传输层协议证书认证,直到安全传输层协议证书认证完成。2. 根据权利要求1所述的方法,其特征在于,所述步骤B具体包括服务器根据用户名查询数据库,如果无法获取该用户的用户口令,则用户口令认证失败;如果获取了用户口令,则执行步骤C。3. 根据权利要求1所述的方法,其特征在于,所述步骤C具体包括CI :服务器通过同样的算法对获取到的预存储的用户口令进行运算,将运算得到的用户口令...
【专利技术属性】
技术研发人员:李志超,
申请(专利权)人:北京天融信科技有限公司,
类型:发明
国别省市:11[中国|北京]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。