专利名称:一种基于ecc算法的身份认证系统和身份认证方法
技术领域:
本发明涉及一种基于ECC算法的身份认证系统和身份认证方法。
背景技术:
身份认证是信息安全的基石。用户在访问任何系统之前,都首先要通过某种 身份认证机制来验证用户的身份是否合法。身份认证成功后,才能根据用户的合 法身份访问系统的某些资源或者进行某项操作。
传统的对称加密算法生成动态口令对算法的保密性要求较高;传统HASH算 法生成动态口令方式是不可逆的,现已有学者找到了MD5、 SHA0和SHA1的碰 撞,部分HASH算法将会退出历史舞台。
ECC和RSA算法一样是非对称可公开算法,密码强度比RSA高,运算速度比 RSA快,相比RSA而言,更适用于动态口令生成。
发明内容
本发明的的是提供了一种基于ECC算法的身份认证系统和身份认证方法, 解决了现有技术中密码强度不够、生成动态口令不可逆、安全性较低、系统消耗 大等问题。
一种基于ECC算法的身份认证系统,包括客户端接口、动态口令生成装置、 应用终端、认证服务器、管理系统和数据库,其特征在于客户端接口与动态口 令生成装置相连接,客户端接口与应用终端相连接,应用终端与认证服务器相连 接,认证服务器与管理系统相连接,认证服务器与数据库相连接,管理系统与数 据库相连接。所述的动态口令生成装置包括内存、时间计数器、ECC加密芯片、 按钮和液晶屏,内存与ECC加密芯片相连接,时间计数器与ECC加密芯片相连接, ECC加密芯片与显示屏相连接,ECC加密芯片可与按钮相连接。所述的认证服务 器利用时间漂移技术设置有可调控动态时间窗口。所述的认证服务器提供了丰富 的认证接口。所述的应用终端为是指需要身份认证的服务器。所述的显示屏为液晶显示屏。
一种基于ECC算法的身份认证方法,其特征在于,包括如下步骤
1) 动态口令生成装置按用户给予指令或自动设定,将存储在内存中的令牌 序列号和时间计数器上的当前时间提供给ECC加密芯片进行加密处理,生成的动 态口令传送给显示屏;
2) 用户从显示屏得到动态口令;
3) 用户在客户端接口将动态口令输入到应用终端的开始界面的密码框内;
4) 用户通过应用终端得到用户的帐户名称和密码,如果设置了PIN码,则 需要在密码的前面部分包括PIN码;
5) 在数据库中取出这个用户的信息和用户绑定的令牌的信息,如果读取信 息失败将退出认证并返回错误信息,如果读取信息成功将进行下一步操作;
6) 把刚才返回的信息中的令牌序列号和服务器的当前时间通过ECC算法产 生对应的动态口令;
7) 把输入的密码和上一步产生的口令进行比较,如果用户设置了PIN码, 则在比较时,还需要在动态口令前加上PIN码,如果比较成功将返回成功消息号, 如果比较失败将返回错误消息号;
8) 把这次的认证过程组成认证日志数据,插入到数据库中。 当动态令牌装置和服务器的时间误差大于时间窗口后,可以利用时间漂移技
术调整时间窗口的范围;也可手动校时,手动校时的步骤如下
1) 通过管理系统得到动态口令装置的令牌序列号和两个连续的动态口令;
2) 从后台数据中获得这个令牌的数据;
3) 输入连续的两个动态口令和令牌序列号;
4) 然后把当前连续两分钟的时间和令牌序列号通aECC算法产生两个连续 的动态口令和输入的动态口令做比较,如果成功则不需要校时,直接正确退出, 如果失败则把下一分钟的连续两分钟时间和和令牌序列号通过ECC算法产生两 个连续的动态口令和输入的动态口令做比较,如果成功则进行校时,如果失败则 当前时间的上一分钟的连续两分钟时间和和令牌序列号通过ECC算法产生两个 连续的动态口令和输入的动态口令做比较,如果成功则进行校时,如果失败采用 当前时间的前后两分钟,直到分钟数超过了窗口时间为止。本发明的优点是可以提高动态口令身份认证的安全性能、加快认证中心的 验证速度、减少系统空间消耗、节约网络带宽。
图1为本发明中基于ECC算法的身份认证系统的架构示意图; 图2为本发明的系统中动态口令生成装置的生成动态口令的流程图; 图3为本发明中基于ECC算法的身份认证方法的流程图; 图4为本发明中的手动校时的流程图。
具体实施例方式
一种基于ECC算法的身份认证系统,包括客户端接口、动态口令生成装置、 应用终端、认证服务器、管理系统和数据库,其特征在于客户端接口与动态口
令生成装置相连接,客户端接口与应用终端相连接,应用终端与认证服务器相连 接,认证服务器与管理系统相连接,认证服务器与数据库相连接,管理系统与数
据库相连接。所述的动态口令生成装置包括内存、时间计数器、ECC加密芯片、 按钮和液晶屏,内存与ECC加密芯片相连接,时间计数器与ECC加密芯片相连接, ECC加密芯片与显示屏相连接,ECC加密芯片可与按钮相连接。所述的认证服务 器设置有可调控动态时间窗口。所述的认证服务器提供了丰富的认证接口。所述 的应用终端为是指需要身份认证的服务器。所述的显示屏为液晶显示屏。
动态口令装置按系统设置时间周期生成一个随机动态口令,每个动态口令只 在系统设置有效时间周期内有效,每个动态口令只能使用一次。认证服务器利用 时间漂移技术设置有可调控动态时间窗口,系统允许该时间窗口内的动态口令通 过认证。管理系统用于用户操作、管理员操作、权限设置、参数设置,数据库备 份。数据库,用于存储用户信息、管理员信息、令牌信息、操心日志、认证日志、 系统信息。动态口令装置与认证服务器之间的时间窗口可以根据登录间隔时间或 不同调用而进行动态调整。当用户使用的动态口令的时间误差超过了系统设定的 时间窗口范围,用户可以到指定网站或客服,通过输入连续两个密码来校正时间。 每个动态令牌可与多个应用服务器上的多个帐户绑定。所述的应用终端指所有需 要身份认证的服务器。
一种基于ECC算法的身份认证方法,其特征在于,包括如下步骤
1)动态口令生成装置按用户给予指令或自动设定,将存储在内存中的令牌序列号和时间计数器上显示的当前时间提供给ECC加密芯片进行加密处理,生成
的动态口令传送给显示屏;
2) 用户从显示屏得到动态口令;
3) 用户在客户端接口将动态口令输入到应用终端的开始界面的密码框内;
4) 用户通过应用终端得到用户的帐户名称和密码,如果设置了PIN码,则 需要在密码的前面部分包括PIN码
5) 在数据库中取出这个用户的信息和用户绑定的令牌的信息,如果读取信 息失败将退出认证并返回错误信息,如果读取信息成功将进行下一步操作;
6) 把刚才返回的信息中的令牌序列号和服务器的当前时间通过ECC算法产 生对应的动态口令;
7) 把输入的密码和上一步产生的口令进行比较,如果用户设置了PIN码, 则在比较时,还需要在动态口令前加上PIN码,如果比较成功将返回成功消息号, 如果比较失败将返回错误消息号;
8) 把这次的认证过程组成认证日志数据,插入到数据库中。 当动态令牌装置和服务器的时间误差大于时间窗口后,可以调整时间窗口的
范围,也即手动校时,手动校时的步骤如下
1) 通过管理系统得到动态口令装置的令牌序列号和两个连续的动态口令;
2) 从后台数据中获得这个令牌的数据;
3) 输入连续的两个动态口令和令牌序列号
4) 然后把当前连续两分钟的时间和令牌序列号通^ECC算法产生两个连续 的动态口令和输入的动态口令做比较,如果成功则不需要校时,直接正确退出, 如果失败则把下一分钟的连续两分钟时间和和令牌序列号通过ECC算法产生两 个连续的动态口令和输入的动态口令做比较,如果成功则进行校时,如果失败则 当前时间的上一分钟的连续两分钟时间和和令牌序列号通过ECC算法产生两个 连续的动态口令和输入的动态口令做比较,如果成功则进行校时,如果失败采用 当前时间的前后两分钟,直到分钟数超过了窗口时间为止。
本发明实行双因子认证机制来进行身份认证,动态口令由时间因子和随机数 因子通过高强度ECC非对称椭圆算法产生,不易被剽窃,不易被破解,不易被推 测出后续密码。认证服务器可以对一个时间窗口内的动态口令进行验证。
权利要求
1.一种基于ECC算法的身份认证系统,包括客户端接口、动态口令生成装置、应用终端、认证服务器、管理系统和数据库,其特征在于客户端接口与动态口令生成装置相连接,客户端接口与应用终端相连接,应用终端与认证服务器相连接,认证服务器与管理系统相连接,认证服务器与数据库相连接,管理系统与数据库相连接。
2. 如权利要求1所述的一种基于ECC算法的身份认证系统,其特征在于所 述的动态口令生成装置包括内存、时间计数器、ECC加密芯片、按钮和液 晶屏,内存与ECC加密芯片相连接,时间计数器与ECC加密芯片相连接, ECC加密芯片与显示屏相连接。
3. 如权利要求1所述的一种基于ECC算法的身份认证系统,其特征在于所 述的ECC加密芯片与按钮相连接。
4. 如权利要求1所述的一种基于ECC算法的身份认证系统,其特征在于所 述的认证服务器通过时间漂移技术设置有可调控动态时间窗口。
5. 如权利要求1所述的一种基于ECC算法的身份认证系统,其特征在于所 述的认证服务器提供了丰富的认证接口 。
6. 如权利要求1所述的一种基于ECC算法的身份认证系统,其特征在于所 述的应用终端为是指需要身份认证的服务器。
7. 如权利要求2所述的一种基于ECC算法的身份认证系统,其特征在于所 述的显示屏为液晶显示屏。
8. —种基于ECC算法的身份认证方法,其特征在于,包括如下步骤1) 动态口令生成装置按用户给予指令或自动设定指令,将存储在内存 中的令牌序列号和时间计数器上的当前时间提供给ECC加密芯片进 行加密处理,生成的动态口令传送给显示屏;2) 用户从显示屏得到动态口令;3) 用户在客户端接口将动态口令输入到应用终端的开始界面的密码框 内;4) 用户通过应用终端得到用户的帐户名称和密码,如果设置了PIN码, 则需要在密码的前面部分包括PIN码;5) 在数据库中取出这个用户的信息和用户绑定的令牌的信息,如果读 取信息失败将退出认证并返回错误信息,如果读取信息成功将进行下一步操作;6) 把刚才返回的信息中的令牌序列号和服务器的当前时间通过ECC算 法产生对应的动态口令;7) 把输入的密码和上一步产生的口令进行比较,如果用户设置了PIN 码,则在比较时,还需要在动态口令前加上PIN码,如果比较成功将 返回成功消息号,如果比较失败将返回错误消息号;8) 把这次的认证过程组成认证日志数据,插入到数据库中。
9.如权利要求6所述的一种基于ECC算法的身份认证方法,其特征在于当 动态令牌装置和服务器的时间误差大于时间窗口后,通过时间漂移技术 调整时间窗口的范围;也可手动校时,手动校时的步骤如下1) 通过管理系统得到动态口令装置的令牌序列号和两个连续的动态口 令;2) 从后台数据中获得这个令牌的数据;3) 输入连续的两个动态口令和令牌序列号;4) 然后把当前连续两分钟的时间和令牌序列号通过ECC算法产生两个 连续的动态口令和输入的动态口令做比较,如果成功则不需要校时, 直接正确退出,如果失败则把下一分钟的连续两分钟时间和和令牌 序列号通过ECC算法产生两个连续的动态口令和输入的动态口令做 比较,如果成功则进行校时,如果失败则当前时间的上一分钟的连 续两分钟时间和和令牌序列号通过ECC算法产生两个连续的动态口 令和输入的动态口令做比较,如果成功则进行校时,如果失败采用 当前时间的前后两分钟,直到分钟数超过了窗口时间为止。
全文摘要
一种基于ECC算法的身份认证系统和身份认证方法,包括客户端接口、动态口令生成装置、应用终端、认证服务器、管理系统和数据库,其特征在于客户端接口与动态口令生成装置相连接,客户端接口与应用终端相连接,应用终端与认证服务器相连接,认证服务器与管理系统相连接,认证服务器与数据库相连接,管理系统与数据库相连接。本发明的优点是可以提高动态口令身份认证的安全性能、加快认证中心的验证速度、减少系统空间消耗、节约网络带宽。
文档编号H04L9/32GK101626291SQ20081004027
公开日2010年1月13日 申请日期2008年7月7日 优先权日2008年7月7日
发明者谈剑锋 申请人:谈剑锋