一种基于事件的一次性口令认证系统令牌重同步方法

文档序号:7997722阅读:229来源:国知局
专利名称:一种基于事件的一次性口令认证系统令牌重同步方法
技术领域
本发明涉及互联网安全身份认证技术,具体涉及在一次性口令认证系统中,当硬件令牌和认证服务器发生失步时的一种基于事件的令牌重同步方法。属于计算机和信息安全技术领域。
背景技术
一次性口令认证技术为用户进行身份认证时提供随机生成的和每次不同的认证口令,解决传统的静态口令容易被盗的危险。一次性口令认证已被越来越广泛的应用于电子商务,网络游戏,网上银行等任何一种需要进行身份认证的网络平台上。现有的各种一次性口令认证技术及方案大多提供硬件令牌和认证服务器,所述硬件令牌用于为用户在有认证需求时随机提供认证口令;所述认证服务器用于接收用户认证时传来的用户名和用户口令,并根据用户名查找相关因子计算口令副本,并将口令副本与用户传来的用户口令进行对比,以验证用户是否认证成功。由于硬件令牌和认证服务器分别通过口令生成因子计算用户口令和口令副本,因此,很容易发生由于用户误操作等原因引起的口令生成因子不同步的问题(即发生令牌失步),使得失步后的认证操作均无法成功。目前的各种一次性口令认证方案没有提供的解决该失步问题的有效方法,特别的,对于基于事件的一次性口令认证系统,硬件令牌和认证服务器间的口令同步通过内置计数器实现,计数器值随着某种事件的触发不断递增。一般的,在硬件令牌中,用户点击按钮一次,则计数器值加一;在认证服务器中,认证成功一次,则计数器值加一,如果用户不断点击硬件令牌上的按钮而不进行认证操作,则会导致硬件令牌中的计数器值不断增加,而认证服务器中的计数器值保持不变,使得两者发生失步。本发明针对基于事件的一次性口令认证系统中的令牌失步问题,考虑不同应用场景,在保证系统可靠性,灵活性的基础上提供完整的令牌重同步方法,主要特点有:1.本发明适用于基于时间的一次性口令认证系统,令牌重同步方法基于硬件令牌和认证服务器中的计数器值完成。2.令牌重同步方法基于预设窗口大小,分为窗口内重同步和窗口外重同步两个方面。3.窗口内重同步由客户端和认证服务器自动完成,窗口外重同步由管理员参与完成。

发明内容
1、目的:本发明的目的是为了提供一种基于事件的一次性口令认证系统令牌重同步方法,该方法基于预先设定的窗口大小,分为窗口内重同步和窗口外重同步两个方面,完成硬件令牌和认证服务器失步后的重同步操作。2、技术方案:所述技术方案如下:
本发明一种基于事件的一次性口令认证系统令牌重同步方法,其包括窗口内重同步和窗口外重同步两个方面,两者的关系是:系统预先设定窗口值大小,当硬件令牌和认证服务器计数器失步次数小于或等于窗口值大小则进行窗口内重同步;当硬件令牌和认证服务器计数器失步次数大于窗口值大小则进行窗口外重同步。发明所涉及方法的整体执行流程图如图1所不。所述窗口内重同步是指:系统通过预先配置的方式设置窗口大小,当进行窗口内重同步操作时,硬件令牌首先计算一个客户口令,并发送至认证服务器,认证服务器根据当前计数器值计算服务器口令,如果客户口令和服务器匹配,则窗口内重同步成功,将计数器值加一。如果不匹配,服务器将计数器值加一后重新计算服务器口令,再与客户端口令进行比较,如果匹配,则窗口内重同步成功,如果不匹配则重复上述过程,此过程重复次数不能超过窗口值大小,窗口内重同步由认证服务器自动完成,执行流程图如图2所示。窗口大小的选取很关键,取值过大会降低认证强度,增加攻击者伪造身份成功的概率,取值过小会频繁引起窗口外重同步,影响系统的正常运行。所述窗口外重同步是指:如果失步次数超出窗口值大小,则说明有可能存在恶意攻击行为,此时应当进行更高强度的重同步操作。窗口外重同步不可由系统自动完成,需要管理员参与完成。管理员在验证用户合法性后,通过令牌获取三个连续的客户口令,按照先后次序发送至认证服务器。认证服务器将计数器值逐次加一,并重复计算服务器口令,直到有三组连续的服务器口令与客户口令均匹配,则窗口外重同步成功。执行流程图如图3所
/Jn ο窗口外重同步在三个连续动态口令同时匹配时才能成功,如果前一口令匹配,而后一 口令不匹配,则窗口外重同步要重新执行,这样严格保证了同步结果的正确性。但其执行流程较复杂,应当设定适当的窗口大小,在保证系统安全的基础上防止频繁进行窗口外重同步操作。综上所述,本发明提供一种基于事件的一次性口令认证系统令牌重同步方法,该方法基于预先设定的窗口大小,分为窗口内重同步和窗口外重同步两个方面,并通过硬件令牌和认证服务器中的计数器值完成硬件令牌和认证服务器失步后的重同步操作。本发明所涉及方法的具体步骤如下所述:本发明一种基于事件的一次性口令认证系统令牌重同步方法,其具体步骤如下:步骤一:系统预先设定重同步窗口大小;步骤二:硬件令牌生成客户口令,并发送至认证服务器;步骤三:认证服务器进行窗口内重同步,即基于计数器值生成服务器口令,并比较客户口令和服务器口令是否一致,如一致,则向客户端反馈重同步成功,否则服务器将计数器值和重复计算次数同时加一;步骤四:判断重复计算次数是否大于窗口值大小,如是,则通知客户端进行窗口外重同步,否则重复执行步骤三和步骤四,直至认证成功,或进入窗口外重同步。如出现认证成功,则令牌重同步方法执行结束,否则继续执行步骤五及其后各步骤,完成窗口外重同
I K
少;步骤五:执行窗口外重同步,即硬件令牌生成第一个客户口令,并发送至认证服务器。认证服务器计算第一个服务器口令,并验证第一个客户口令和第一个服务器口令是否一致,如一致,则通知客户端生成第二个客户口令,否则将服务器计数器值加一后重新计算第一个服务器口令,并验证第一个客户口令和新生成的第一个服务器口令是否一致。重复该步骤,直至出现第一个客户口令和第一个服务器口令一致,则进入步骤六;步骤六:硬件令牌生成第二个客户口令,并发送至认证服务器,认证服务器讲计数器值加一后计算第二个服务器口令,并验证第二个客户口令和第二个服务器口令是否一致,如一致,则通知客户端生成第三个客户口令,进入步骤七。否则,重新执行步骤五;步骤七:硬件令牌生成第三个客户口令,并发送至认证服务器,认证服务器将计数器值加一后,计算第三个服务器口令,并验证第三个个客户口令和第三个个服务器口令是否一致,如一致,则通知客户端重同步成功。否则,重新执行步骤五。所述七个步骤中,步骤一至步骤四概括了窗口内重同步过程。步骤四至步骤七概括了窗口外重同步过程;步骤一至步骤四确保,在窗口内重同步时需要在窗口值大小内存在一致口令才能重同步成功;步骤五至步骤七确保,在窗口外重同步时需要连续三个口令一致才能重同步成功。3、优点和功效:优点:本发明一种基于事件的一次性口令认证系统令牌重同步方法,它的主要优点是:方法高效,计算简单,运算所花时间少,运行速度快,占用系统内存空间小,可抵抗针对认证系统的蛮力攻击。功效:本发明为基于事件的一次性口令认证系统提供通用的令牌重同步方法,解决令牌和认证服务器间的失步问题,并抵抗蛮力攻击,提出基于窗口大小值的计数器重同步方法。其可以确保认证系统的正常运行,并确保身份认证系统的安全性。


图1基于事件的一次性口令认证系统令牌重同步方法执行流程图;图2窗口内重同步流程图;图3窗口外重同步流程图;图中符号说明如下:0TP_C:硬件令牌生成的客户口令;0TP_S:认证服务器生成的服务器口令;C0UNT_S:认证服务器中用于生成口令的计数器值。
具体实施方式
:前文已将本发明的基于事件的一次性口令认证系统令牌重同步方法进行了完整、详细的介绍,下面,结合各附图,对本发明的技术特点和实施方式作进一步的描述。本实施实例,提供了完整的基于事件的一次性口令认证系统令牌重同步方法,参见图1,是所述基于事件的一次性口令认证系统令牌重同步方法流程图,具体包括:步骤101,系统预先设定重同步窗口大小;步骤102,硬件令牌生成客户口令,并发送至认证服务器;步骤103,认证服务器接收步骤102中发送来的客户口令,同时,基于计数器值生成服务器口令,并比较客户口令和服务器口令是否一致。
步骤104,如果步骤103中判断的结果是客户口令和服务器口令一致,则进入步骤104,向客户端反馈重同步成功。步骤105,如果步骤103中判断的结果是客户口令和服务器口令不一致,则进入步骤105,服务器将计数器值和重复计算次数加一。步骤106,服务器判断重复计算次数是否大于步骤101中设定的窗口值大小。如果判断结果为重复计算次数大于窗口值大小,则再次执行步骤103。步骤107,如果步骤106中的判断结果为重复计算次数步大于窗口值大小,则进入步骤107,开始窗口外重同步。步骤108,开始执行窗口外重同步后,硬件令牌计算第一个客户口令,并发送至服务器。步骤109,服务器受到步骤108发来的第一个客户口令后,计算第一个服务器口令。步骤110,服务器判断第一个服务器口令和第一个客户口令是否一致。步骤111,如果步骤110的判断结果是第一个服务器口令和第一个客户口令不一致,则进入步骤111,服务器将计数器值加一,然后进入步骤109,重新计算第一个服务器口令。步骤112,如果步骤110的判断结果是第一个服务器口令和第一个客户口令一致,则进入步骤112,由硬件令牌计算第二个客户口令,并发送至服务器步骤113,认证服务器将计数器值加一,并计算第二个服务器口令。步骤114,服务器比较第二个服务器口令是否与第二个客户口令一致,如果判断结果为第二个服务器口令是否与第二个客户口令不一致,则重新执行步骤109。步骤115,如果步骤115的判断结果为第二个服务器口令是否与第二个客户口令一致,则进入步骤115,由硬件令牌计算第三个客户口令,并发送至服务器。步骤116,认证服务器将计数器值加一,并计算第三个服务器口令步骤117,服务器比较第三个服务器口令与第三个客户口令是否一致,如果判断结果为第三个服务器口令与第三个客户口令不一致,则重新执行步骤109步骤118,如果步骤117的判断结果为第三个服务器口令与第三个客户口令一致,则进入步骤118,此时,窗口外重同步成功,则向客户端反馈重同步成功。至此,本发明一种基于事件的一次性口令认证系统令牌重同步方法执行过程结束。本发明主要对基于时间的一次性口令认证系统的令牌和服务器计数器失步的问题,提出了基于窗口值大小的令牌重同步方法,该方法分为窗口内重同步和窗口外重同步两个方面。本发明申请书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
权利要求
1.一种基于事件的一次性口令认证系统令牌重同步方法,其特征在于:该方法包括如下具体步骤如下: 步骤一:系统预先设定重同步窗口大小; 步骤二:硬件令牌生成客户口令,并发送至认证服务器; 步骤三:认证服务器进行窗口内重同步,即基于计数器值生成服务器口令,并比较客户口令和服务器口令是否一致,如一致,则向客户端反馈重同步成功,否则服务器将计数器值和重复计算次数同时加一; 步骤四:判断重复计算次数是否大于窗口值大小,如是,则通知客户端进行窗口外重同步,否则重复执行步骤三和步骤四,直至认证成功,或进入窗口外重同步。如出现认证成功,则令牌重同步方法执行结束,否则继续执行步骤五及其后各步骤,完成窗口外重同步;步骤五:执行窗口外重同步,即硬件令牌生成第一个客户口令,并发送至认证服务器。认证服务器计算第一个服务器口令,并验证第一个客户口令和第一个服务器口令是否一致,如一致,则通知客户端生成第二个客户口令,否则将服务器计数器值加一后重新计算第一个服务器口令,并验证第一个客户口令和新生成的第一个服务器口令是否一致。重复该步骤,直至出现第一个客户口令和第一个服务器口令一致,则进入步骤六; 步骤六:硬件令牌生成第二个客户口令,并发送至认证服务器,认证服务器讲计数器值加一后计算第二个服务器口令,并验证第二个客户口令和第二个服务器口令是否一致,如一致,则通知客户端生成第三个客户口令,进入步骤七。否则,重新执行步骤五; 步骤七:硬件令牌生成第三个客户口令,并发送至认证服务器,认证服务器将计数器值加一后,计算第三个服务器口令,并验证第三个个客户口令和第三个个服务器口令是否一致,如一致,则通知客户端重同步成功。否则,重新执行步骤五。
所述七个步骤中,步骤一至步骤四概括了窗口内重同步过程。步骤四至步骤七概括了窗口外重同步过程;步骤一至步骤四确保,在窗口内重同步时需要在窗口值大小内存在一致口令才能重同步成功;步骤五至步骤七确保,在窗口外重同步时需要连续三个口令一致才能重同步成功。
2.一种基于事件的一次性口令认证系统令牌重同步方法,其特征在于:该方法包括窗口内重同步和窗口外重同步两个方面。
所述窗口内重同步,是指只要重复计算口令次数小于窗口大小且找到相一致的客户口令和服务器口令,则窗口内重同步成功; 所述窗口外同步,是指窗口内重同步不成功时执行的进一步重同步过程,在该窗口外重同步过程中,只要有连续三个客户口令和服务器口令相一致,则重同步成功。
全文摘要
一种基于事件的一次性口令认证系统令牌重同步方法,针对基于事件的一次性口令认证系统中硬件令牌和认证服务器由于计数器值不一致而导致的令牌失步问题,提供令牌重同步方法。该方法基于预先设定的窗口大小,以计数器值作为同步因子,分为窗口内重同步和窗口外重同步两个方面。当硬件令牌和服务器的失步次数在窗口大小内,则执行窗口内重同步,只要重复计算口令次数小于或等于窗口大小,且能找到一组一致的客户口令和服务器口令,则重同步成功;否则,进行窗口外重同步,此时只要有连续三组客户口令和服务器口令相一致,则重同步成功,该重同步方法的完整执行流程分为七个步骤。本发明方法高效,计算简单,运算所花时间少,运行速度快,占用系统内存空间小,可抵抗针对认证系统的蛮力攻击。
文档编号H04L29/06GK103138928SQ20111039375
公开日2013年6月5日 申请日期2011年12月1日 优先权日2011年12月1日
发明者李慧娟, 刘博 , 李为宇, 张薇, 周炼赤 申请人:李慧娟, 刘博 , 李为宇
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1