同的技术模式。软介质的主要是基于短信的动态口令技术。 2. 动态口令安全性分析 2.1 基于时间同步认证的安全分析 基于时间的同步认证技术是把流逝的时间作为变动因子,一般60s 内为有效时间。银行 在分发 E-token时与电子渠道用户绑定建立一一对应关系,使用唯一的128位种子将其初始 化。其内部芯片每分钟换一种不同算法,组合种子与当前时间,生成一个随机6 位数,也即 目前银行分发的E-token每 60s更新一次动态口令。银行端的认证系统与客户端的E-token 同时拥有对称密钥和相同的对称密钥算法,在设定好的相同时间更新计算出新的随机数字, 保证动态口令牌和网上银行服务器的单一认证,确保网上银行的安全性。用户登录网上银行 70 系统时,只需按下按钮,U盘大小的电子口令牌上方的液晶显示器每隔60s 就能变换出一组 六位的随机数字作为身份认证的口令。 但这种方式存在一个致命的弊端即口令的产生没有包含客户此次转账的任何信息,而且 客户端也没有对电子渠道如网银服务器进行验证即只能提供单向认证,易被网络钓鱼。针对 安全意识薄弱的客户实施攻击,通过“Token升级”等借口,向客户发送一个钓鱼网站,以 获取客户输入的关键信息(用户名+静态口令+动态口令),然后在60s 内瞬间完成恶意交易。 针对钓鱼网站攻击,目前各家行采取了一些有效措施:其一,为客户提供防伪验证信息 设置,在客户登录网银时,客户可根据输入的用户 ID,校验服务器返回的防伪验证信息是 否符合自己预留的信息。这种方式比较陈旧,无法躲避 MTIT 攻击。其二,结合短信渠道, 在转账确认时,向客户发送转账的关键要素及随机数,要求客户再次输入确认。这种方式很 好地解决了网络钓鱼攻击。 2.2 基于挑战/应答认证的安全分析 基于挑战/应答方式的非同步认证技术中,变动因子是由认证服务器产生的随机字序列, 同时它也是密码发生器生成密码的变动因子。主流的挑战/应答方式的动态密码身份认证方 式即 S/KEY 协议。基于摘要算法的 S/Key 系统,通过初始化和认证两个步骤来完成整个认 证过程: (1)初始化。通过选择一个随机口令字或由用户指定一个口令字,作为初始密码 I, 使用单向不可逆算法加密W 到 N 次得到 S1~Sn ,将得到的N 个密码的最后一个Sn 保留在 服务器中,用于后续校验,将其余的N-1 个密码(S1~Sn-1)交给用户作为密码,每次逆序使 用一个,直到S1 被使用后,需重新初始化。 (2)认证。认证服务器针对每一个在其中完成初始化的用户保留相应的Sn,用户在认 证时,将其最后一个密码Sn-1 提交给服务器,服务器将其用摘要算法处理后和保存的该用 户 Sn 比较,相同则认证成功,并将 Sn 抛弃,存储Sn-1,以此类推,直至W 被使用,则需 重新初始化。 同样这种方式也仅仅是一种单向认证方式,容易遭受 MITM 攻击和小数攻击。当用户向 服务器请求认证时,黑客截取服务器传来的种子和迭代值,并修改迭代值为较小值,假冒服 务器,将得到的种子和较小的迭代值发送给用户。用户利用种子和迭代值计算一次性口令, 黑客在此截取用户传来的一次性口令,并利用已知的单向散列函数一次计算较大迭代值的一 次性口令,就可以获得该用户后继的一系列口令,进而在一段时间内冒充合法用户而不被察 觉即小数攻击。 2.3 短信口令认证安全性分析 短信口令认证技术相对硬件介质的E-Token 更加环保且使用方便,客户发生账务类交易 时,不需要随身携带物理介质。当前各家银行推出的短信口令版网银,都基本上添加了安全 因子 salt即客户的交易信息。整个认证过程如图3所示。 ![]() (1)客户在柜面申请开通短信口令认证。此过程主要是将用户身份信息与认证服务器 的种子进行绑定,为用户分配一个唯一种子。 (2)客户登录网银,输入转账要素后,需要激活认证服务器,网银服务器收到客户的 认证请求后,会查询客户对应的种子信息,将种子Seed 和交易信息(如收款人账号、金额) 一并上送给认证服务器,认证服务器接收到输入后,会将其作为输入值,调用哈希函数散列 |