• 快捷搜索
  • 全站搜索

动态密码器工作原理介绍及优化方案

2015-02-27 17:23:24作者:中国工商银行股份有限公司软件开发中心 郑智鹏编辑:金融咨询网
工商银行面向电子银行客户推出了新一代的安全认证工具——工银电子动态密码器,为该行使用网上银行、电话银行、手机银行等电子银行渠道办理业务的客户提供了更加安全、可靠的身份认证方式。

近段时间,工商银行面向电子银行客户推出了新一代的安全认证工具——工银电子动态密码器,为该行使用网上银行、电话银行、手机银行等电子银行渠道办理业务的客户提供了更加安全、可靠的身份认证方式。

        笔者首先介绍了目前电子动态密码器的设计以及工作原理,并列举生成动态密码的几种方式,指出了电子动态密码器设计上的不足之处,并提出了两种的改进方案,使得动态密码器改良为一种免输入的设备,减少输入时间和输错概率,大大提高密码器的可用性。

一、电子动态密码器设计及工作原理

        工银电子动态密码器外观设计精巧,厚度只有3.2毫米,相当于2个一元硬币的厚度,尺寸比普通银行卡还小,易于携带。在安全技术上,该密码器是基于新一代动态密码技术的安全产品。与上一代动态密码技术相比,有以下两点改进。

        (1)增设了开机密码,防止了因密码器丢失而产生的风险;

        (2)采取了动态密码跟交易要素相绑定的安全策略,一个密码只能针对一个交易,当交易收款人、支付金额等要素被改变时,该密码立即失效,防止交易信息被劫持、交易要素被修改而带来的风险,安全性得到了进一步提升,对客户使用电子银行的保护更加全面。

        工银电子密码器最大的优点是无需连接电脑等设备,无需安装驱动程序,具有更好的浏览器兼容性,极大地便利了客户的操作;由于其可同时应用于网上银行、手机银行和电话银行渠道,对本身不具备USB接口无法使用U盾的iPhone、Android手机银行和iPad个人网上银行客户来说更加安全方便。

二、动态口令生成方式

        银行通常提供给用户两种动态口令。一种是固定数量的动态口令,最常见的就是刮刮卡。用户每次根据银行提示,刮开卡上相应区域的涂层,即可获得一个口令。刮刮卡成本低廉,使用方法简单,因此很多银行采用这种方法,如工商银行。另一种是硬件形式的动态口令,即电子令牌,也就是现在的电子密码器,它采用专用硬件,每次可以用自带的密码生成芯片得到一个当前可用的一次性动态密码,交通银行等就采用这种方式。

        一般来讲,每个客户端的电子令牌都有一个唯一的密钥,该密钥同时存放在服务器端,每次认证时令牌与服务器分别根据同样的密钥,同样的随机数和同样的算法计算出认证时的动态口令,从而确保口令的一致性和认证的成功。因为每次认证时,随机数的参数不同,每次产生的动态口令也不同。每次计算时参数的随机性可以确保每次口令不可预测,以保障系统安全。

        这些随机数是怎样产生的呢?动态口令随机数可分为以下几类。

        (1)口令为一个单向的前后相关的序列,系统只记录第N个口令。用户用第N—1个口令登录时,系统用单向算法算出第N个口令与自己保存的第N个口令匹配,以判断用户的合法性。由于N是有限的,用户登录N次后必须重新初始化口令序列。

        (2)时间同步:以用户登录时间作为随机因素。这种方式对双方的时间准确度要求较高,一般采取以分钟为时间单位的折中办法。在这种动态口令中,对时间误差的容忍可达±1分钟。

        (3)事件同步:通过某一特定的事件次序及相同的种子值作为输入,使用相同的算法运算出一致的密码,其运算机理决定了其整个工作流程同时钟无关,不受时钟的影响。它节省了用户每次输入挑战信息的麻烦,但当用户的挑战序列与服务器产生偏差后,需要重新同步。

        (4)挑战/应答,也叫异步认证方式。它比时间/事件同步方式操作相对烦琐,实现相对复杂,一般用于对安全性要求更高的场合,比如登录网上银行等需要附加认证的情形。当用户需要访问系统时,远程认证服务器根据用户的电子令牌资料产生一个随机的数字串,即“挑战码”,用户将该数字串输入到电子令牌中。电子令牌利用内置的种子密钥和算法计算出相应的应答数(通常也是一个数字串),目前动态密码器就是采用这种方式。

        (5)用户将应答数输入系统,系统根据所保存的该用户相应电子令牌信息(种子密钥和算法)计算出应答数,并与用户输入的应答数进行比较,如果两者相同,则认证通过。由于每个电子令牌的种子密钥不同,因此不同用户的电子令牌对同样的挑战数计算出应答数也并不相同。只有用户持有指定的电子令牌才能计算出正确的应答数以通过系统认证,从而可以保障该用户是持有指定电子令牌的合法用户。

        由于口令每次都变化,即使得到密码也没用,而且这种动态口令由专用算法生成,随机性高,不太容易被破解。传统的木马程序即使窃取到用户个人信息,拿去登录银行网页,也已经过期。因此,动态口令极大地提高了用户身份认证的安全性。

三、动态密码器优化方案

        尽管目前的动态密码器已经很安全、方便,但由于工商银行的动态密码器是带挑战码和时间因子的动态密码器,即每次都需要手工输入银行返回给客户的挑战码,密码器根据输入的挑战码和时间因子产生的密码,这个密码时效很短,很快就过期无效了。这要求使用人必须在短时间内输入挑战码并尽快使用密码。由于密码器设计时为了方便携带都做得很薄很小,每个按键都做得很紧密,使用人在短时间内要输入10位左右的随机数字,经常会输错,或者好不容易输入正确却发现已经超时,密码失效了,尤其对一些老年人此类问题很普遍。

        为此,提出一种免手工输入的动态密码器,有以下两种工作原理。

        1.针对手机设备,密码器内部和手机都增加NFC设备

        考虑到目前主流手机已经具备NFC功能,因此只需在密码器增加NFC设备,成本比较低。如图1所示,在交易的时候,银行生成挑战码,使用者只需持带有NFC功能的手机接触动态密码器,动态密码器就会通过NFC功能从手机端接收到挑战码,根据此挑战码马上生成交易密码。当然,为了保障交易安全,手机端在发送挑战码前必须先进行加密,动态密码器在接收到挑战码后需进行解密操作。

动态密码器工作原理介绍及优化方案-图1.jpg

        2.针对电脑/iPad等设备,密码器增加一个摄像头设备

        在交易时,电脑生成挑战码,并用二维码进行展现,然后使用者持密码器对二维码进行扫描,以便获取挑战码(如图2所示)。

动态密码器工作原理介绍及优化方案-图2.jpg

        上述提供的两种方法,密码器采用单方向数据流,能确保密码器仍处于一个封闭环境,不可能被远程破解和控制(U盾是双方向数据流,数据从电脑上进入U盾认证处理,然后认证数据又返回到电脑上),而且这种密码器能够免手工输入,减少输入时间和输错概率,大大提高密码器的可用性。

(文章来源:《中国金融电脑》杂志)

扫码即可手机
阅读转发此文

本文评论

相关文章