服务器端动态口令时间偏移自动校正方法

文档序号:7779394
服务器端动态口令时间偏移自动校正方法
【专利摘要】本发明公开了一种服务器端动态口令时间偏移自动校正方法,根据动态口令的接收时间决定令牌装置发送的动态口令是否认证成功,所述方法包括,在上一次动态口令认证成功时,保存上一次动态口令认证时间T1和上一次动态口令时间偏移量T2,接收到当前动态口令时,根据T1、T2和当前动态口令认证时间T3计算当前动态口令时间偏移量T4,根据T4和服务器预设的认证时间窗口,计算当前动态口令的认证时间范围,根据服务器接收到当前动态口令的时间是否落在所述认证时间范围内时,决定当前动态口令认证是否成功。本发明的方法,根据认证服务器和令牌装置之间的时间偏移趋势,统一了动态口令的时间偏移计算方法,自动化程度高,可靠性强。
【专利说明】服务器端动态口令时间偏移自动校正方法
【技术领域】
[0001 ] 本发明涉及电子认证领域,尤其涉及一种服务器端动态口令时间偏移自动校正方法。
【背景技术】
[0002]动态口令认证方式有事件型和时间型两种。事件型令牌是通过按键产生不同口令,在服务器端进行认证,而时间型令牌则是令牌装置和服务器随着时间间隔(30秒、60秒等)根据相同的动态口令种子和动态口令生成算法同步产生动态口令,服务器判断接收到的动态口令与本地生成的动态口令是否相同,以进行动态口令的认证。
[0003]对于时间型动态口令认证方式,不管使用手机令牌或硬件令牌,获取时间都是从各自终端的硬件模块中获取。然而令牌装置和认证服务器之间会出现时间上的不一致,从而造成产生的动态口令不一致,导致认证失败。而当前动态口令认证过程中一旦出现认证双方时间不匹配的情况时,主要是提示用户进行令牌时间同步过程,而这个过程是静态的、死的方法,是一个固定的偏移量。在进行令牌装置同步时,认证服务器计算一个时间上的偏移量,然后到了认证时就会在当前的时间量上增加或减少这个偏移量,以达到时间的匹配。但是这个方法有一个致命的缺点,就是这个偏移量是固定的,而令牌装置和认证服务器的时间偏移量不是一个固定值,而是某种趋势量,这样就造成了令牌装置要频繁的与认证服务器进行动态口令的时间同步。这种频繁同步时间的认证方式不仅麻烦,而且有安全漏洞,增加出错的概率,还可能造成服务器的不稳定。
[0004]因此,需要一种操作简便、计算准确的服务器端动态口令时间偏移自动校正方法,不再是频繁进行令牌装置和认证服务器的时间同步修正,而是使用固定算法进行时间认证,提高认证服务器的准确性和稳定性。

【发明内容】

[0005]针对现有服务器端动态口令时间偏移自动校正方法频繁进行时间同步的技术问题,本发明提供了一种服务器端动态口令时间偏移自动校正方法,不需要重复无休止的计算,而是根据令牌装置和认证服务器的时间偏移趋势,计算每次动态口令的时间偏移量,再结合时间窗口范围来解决动态口令的偏移问题,本发明的算法简单,逻辑性强,减少了认证服务器的运算负载,提高了认证服务器的稳定性和自动化程度。
[0006]为了实现上述目的,本发明提供了一种服务器端动态口令时间偏移自动校正方法,根据动态口令的接收时间决定所述动态口令是否认证成功,所述动态口令由令牌装置发送,所述方法包括,在上一次动态口令认证成功时,保存上一次动态口令的认证时间Tl和上一次动态口令的时间偏移量T2 ;接收到当前动态口令时,根据Tl、T2和当前动态口令的认证时间T3计算当前动态口令的时间偏移量T4 ;根据T4和服务器预设的认证时间窗口,计算当前动态口令的认证时间范围;服务器接收到当前动态口令的时间落在所述认证时间范围内时,决定当前动态口令认证成功,否则决定当前动态口令认证失败;其中,动态口令的时间偏移量是服务器接收动态口令时间和令牌装置发送动态口令时间之间的偏移量,动态口令的认证时间是令牌装置生成动态口令的时间;其中,在上一次动态口令认证成功时,服务器根据动态口令的时间性推导出令牌装置发送动态口令的时间,以计算出上一次动态口令的时间偏移量T2。
[0007]可选地,所述根据T1、T2和当前动态口令的认证时间T3计算当前动态口令的时间偏移量T4的计算公式为(T3-T1)/T3=T4/(T4+T2)。
[0008]可选地,所述服务器预设的认证时间窗口为60秒。
[0009]可选地,所述服务器包括存储器,在上一次动态口令认证成功时,保存上一次动态口令的认证时间Tl和上一次动态口令的时间偏移量Τ2。
[0010]可选地,所述令牌装置为手机令牌,所述服务器为云服务器。
[0011]本发明由于采用了上述技术方案,从而具有以下优点:本发明的服务器端动态口令时间偏移自动校正方法,改造了现有技术中服务器对每次动态口令的频繁且不同的时间偏移量计算模式,根据令牌装置和认证服务器的时间偏移趋势,计算每次动态口令的时间偏移量,减少了认证服务器的计算量和计算时间,同时减少了认证用户的等待时间,提高了动态口令认证系统的安全性和可靠性。
【专利附图】

【附图说明】
[0012]图1是本发明一种服务器端动态口令时间偏移自动校正方法的方法流程图;
[0013]图2是本发明一种服务器端动态口令时间偏移自动校正方法的认证原理示意图;
[0014]图3是使用本发明一种服务器端动态口令时间偏移自动校正方法的动态口令服务器的结构示意图。
【具体实施方式】
[0015]下面结合附图对本发明的【具体实施方式】做详细的说明。
[0016]首先,请参考图1,图1为本发明一种服务器端动态口令时间偏移自动校正方法的方法流程图,根据动态口令的接收时间决定所述动态口令是否认证成功,所述动态口令由令牌装置发送,所述方法包括下列步骤:
[0017]步骤101:在上一次动态口令认证成功时,保存上一次动态口令的认证时间Tl和上一次动态口令的时间偏移量Τ2 ;
[0018]步骤102:接收到当前动态口令时,根据Tl、Τ2和当前动态口令的认证时间Τ3计算当前动态口令的时间偏移量Τ4 ;
[0019]步骤103:根据Τ4和服务器预设的认证时间窗口,计算当前动态口令的认证时间范围;
[0020]步骤104:服务器接收到当前动态口令的时间落在所述认证时间范围内时,决定当前动态口令认证成功,否则决定当前动态口令认证失败;
[0021]其中,动态口令的时间偏移量是服务器接收动态口令时间和令牌装置发送动态口令时间之间的偏移量,动态口令的认证时间是令牌装置生成动态口令的时间;在上一次动态口令认证成功时,服务器根据动态口令的时间性推导出令牌装置发送动态口令的时间,以计算出上一次动态口令的时间偏移量Τ2。[0022]其中,所述根据T1、T2和当前动态口令的认证时间T3计算当前动态口令的时间偏移量T4的计算公式为(T3-T1)/T3=T4/(T4+T2)。
[0023]其中,所述服务器预设的认证时间窗口为60秒,所述服务器包括存储器,在上一次动态口令认证成功时,保存上一次动态口令的认证时间Tl和上一次动态口令的时间偏移量Τ2,所述令牌装置为手机令牌,所述服务器为云服务器。
[0024]另外,这里对服务器和令牌装置之间产生时间偏移量的原因进行说明,一般地,动态口令认证时的时间偏移量源于以下原因:1)令牌装置的时间是由晶振模块产生的,晶振模块存在偏差,尽管晶振模块偏差的幅度不同,但这部分的偏差都是正向的;2)用户输入动态口令到动态口令被服务器接收,这之间也存在时间偏差。这部分的时间偏差主要是由用户输入延迟、网络传输延迟所造成的。基于这些因素,只要解决了时间偏差问题,再结合时间窗口范围就能解决动态口令偏移的问题。
[0025]另外,晶振,是晶体振荡器。晶体振荡器中,石英晶体振荡器使用最普遍,石英晶体振荡器是一种高精度和高稳定度的振荡器,被广泛应用于彩电、计算机、遥控器、移动终端等各类振荡电路中,以及通信系统中用于频率发生器、为数据处理设备产生时钟信号和为特定系统提供基准信号。国际电工委员会(IEC)将石英晶体振荡器分为4类:普通晶体振荡(SPX0),电压控制式晶体振荡器(VCX0),温度补偿式晶体振荡(TCX0),恒温控制式晶体振荡(OCXO)。目前发展中的还有数字补偿式晶体振荡器(DCXO)微机补偿晶体振荡器(MCXO)
坐寸ο
[0026]接着,参考图2继续对本发明进行说明,图2是本发明一种服务器端动态口令时间偏移自动校正方法的认证原理示意图,所述认证原理对本发明的时间认证计算公式(Τ3-Τ1)/Τ3=Τ4/(Τ4+Τ2)进行了说明。由于每次服务器认证时都要有个时间校正的过程。时间校正的过程其实就是在正常的时间上加减一个时间偏移量,而这个偏移量是由直角三角形相似性定理推导而来。图2中,Α、B为动态口令,X轴表示认证时间,Y轴表示时间偏移量。虚线AE和虚线BD分别表示本次动态口令认证的时间偏移量。这样第一次有效认证时,动态口令的时间偏移量就是AE,而第二次认证的时间偏移量是BD+DC,BD表示新的偏移量,而DC是最后一次成功认证时的偏移量,这样根据直角三角形相似性原理就可以计算出新的偏移量BD,公式为AD/(0E+EC)=BD/(BD+DC)。其中,AD为当前时间减去最后一次成功认证时间,0E+EC当前时间,BD为新的补偿量,DC为最后一次记录的偏移量。这里,AD即T3-T1,0E+EC即T3,BD即要计算的时间偏移量T4,BD+DC即T4+T2。这里的公式只是一个计算时间偏移量的公式,并不是说在认证时直接简单在当前时间上加减这个偏移量。为了保证认证的成功率,在服务器验证动态口令时还要考虑服务器预设的时间窗口的大小。如果时间窗口的大小为60秒,那么在当前时间上加减这个偏移量后的上下一分钟的范围内收到的动态口令都是有效的。
[0027]最后,参照图3对本发明进行说明,图3是使用本发明一种服务器端动态口令时间偏移自动校正方法的动态口令服务器的结构示意图。服务器为动态口令服务器1,所述动态口令服务器I包括处理器11、存储器12和通信接口 13,处理器11和存储器12、通信接口 13分别连接,所述动态口令服务器I通过通信接口 13与用户手持的令牌装置2进行数据交互。
[0028]本领域技术人员应该认识到,上述的【具体实施方式】只是示例性的,是为了使本领域技术人员能够更好的理解本专利内容,不应理解为是对本专利保护范围的限制,只要是根据本专利所揭示精神所作的任何等同变更或修饰,均落入本专利保护范围。
【权利要求】
1.一种服务器端动态口令时间偏移自动校正方法,根据动态口令的接收时间决定所述动态口令是否认证成功,所述动态口令由令牌装置发送,其特征在于,所述方法包括: 在上一次动态口令认证成功时,保存上一次动态口令的认证时间Tl和上一次动态口令的时间偏移量T2 ; 接收到当前动态口令时,根据T1、T2和当前动态口令的认证时间T3计算当前动态口令的时间偏移量T4 ; 根据T4和服务器预设的认证时间窗口,计算当前动态口令的认证时间范围; 服务器接收到当前动态口令的时间落在所述认证时间范围内时,决定当前动态口令认证成功,否则决定当前动态口令认证失败; 其中,动态口令的时间偏移量是服务器接收动态口令时间和令牌装置发送动态口令时间之间的偏移量,动态口令的认证时间是令牌装置生成动态口令的时间; 其中,在上一次动态口令认证成功时,服务器根据动态口令的时间性推导出令牌装置发送动态口令的时间,以计算出上一次动态口令的时间偏移量T2。
2.根据权利要求1所述的服务器端动态口令时间偏移自动校正方法,其特征在于: 所述根据T1、T2和当前动态口令的认证时间Τ3计算当前动态口令的时间偏移量Τ4的计算公式为(Τ3-Τ1)/Τ3=Τ4/(Τ4+Τ2)。
3.根据权利要求1所述的服务器端动态口令时间偏移自动校正方法,其特征在于: 所述服务器预设的认证时间窗口为60秒。
4.根据权利要求1所述的服务器端动态口令时间偏移自动校正方法,其特征在于: 所述服务器包括存储器,在上一次动态口令认证成功时,保存上一次动态口令的认证时间Tl和上一次动态口令的时间偏移量Τ2。
5.根据权利要求1所述的服务器端动态口令时间偏移自动校正方法,其特征在于: 所述令牌装置为手机令牌,所述服务器为云服务器。
【文档编号】H04L9/32GK103647647SQ201310655442
【公开日】2014年3月19日 申请日期:2013年12月6日 优先权日:2013年12月6日
【发明者】谈剑锋, 杨波, 顾立平 申请人:上海众人网络安全技术有限公司
再多了解一些
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1