桂林新闻_桂林最新热点新闻

当前位置:主页 > 本地动态 >

银行的动态口令令牌是什么原理?

   记者:admin    上传时间:2019-03-06 11:50    已有 人阅读了该文章

  有网银的少年们一般都收到过银行给的这样一个令牌,俗称动态口令,在支付的时候输入自己的密码和动态口令上的动态密码,就能完成验证,银行就相信你不是坏人了,今天我们来简述一下这个动态口令令牌是个什么原理。

  如图的RSA SecurID SID700是当前市面上流行使用的动态口令令牌,在笔者准备资料的过程中发现国内描写动态口令的野生博客有不少谬误,其中大多是对银行这一套认证机制结构的不了解,所以首先要强调的是:

  在大众用户手中的动态口令令牌,并不使用任何对称或者非对称加密的算法,在整个银行的认证体系中,动态口令令牌只是一个一次性口令的产生器,在其中运行的主要计算仅包括时间因子的计算和散列值的计算。

  图示给出了动态口令的工作原理,突出了整个认证机制中的动态口令部分,我们可以清楚看到在最左边和最右边有完全相同的两个流程,这里分别代表了用户的令牌卡和银行服务器的验证机器做的工作。本文的重点就在这两个完全相同的流程上。

  在用户从银行手中拿到动态口令令牌卡的时候,在令牌卡的内部已经存储了一份种子文件(即图中钥匙所代表的seed),这份种子文件在银行的服务器里保存的完全一样的一份,所以对于动态口令令牌来说,这种方式是share secret的。另外在令牌硬件上的设置中,假使有人打开了这个令牌卡,种子文件将会从令牌卡的内存上擦除(待考证)。

  令牌卡中有了种子文件,并实现了TOTP算法,在预先设置的间隔时间里它就能不断产生不同的动态口令,并显示到屏幕上,而银行服务器上跟随时间做同样的计算,也会得到和令牌卡同样的口令,用作认证。

  那么TOTP算法具体做了什么操作呢?在RFC6238中有详细的算法描述,这里也会做简单的叙述。

  TOTP是来自 HOTP [RFC4226] 的变形,从统筹上看,他们都是将数据文件进行散列计算,只是HOTP的因子是事件因子,TOTP将因子换成了时间因子,具体的TOTP计算公式(其中的HMAC-SHA-256也可能是 HMAC-SHA-512):

  公式中的 HMAC是密钥相关的哈希运算消息认证码(Hash-based Message Authentication Code),HMAC运算利用哈希算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出。而公式中给出的哈希算法是 SHA-256,这种哈希算法目前并没有好的破解办法。

  1、时间同步型动态口令对令牌卡和服务器的时间同步要求很高,时间误差会造成整个令牌的失灵,所以每一次用户成功使用令牌认证,服务器都会做相应的时间误差矫正。

  2、种子文件的产生使用了一种AES-128 变形而来的算法, AES-128 也是目前顶尖级的对称加密技术。

  EA旗下Respawn工作室宣布他们的最新作是免费吃鸡游戏《Apex英雄》而非传统3A游戏《泰坦天降3》。 有不少玩家对此表示惋惜,免费吃鸡是什么鬼,难道还不够泛滥吗? 并没有。Respawn执行制作人D

  《Apex英雄》达成百万玩家在线TB/s恐怖带宽!全球首款7nm游戏显卡Radeon VII首发评测

  2月20日下午两点,小米将在北京推出年度旗舰小米9。本次发布会快科技全程图文直播和报道,敬请关注。 为了感谢各位读者一如既往的支持,此次发布会直播我们将送出:红米Note 5A一台。 注册用户

相关阅读

重点新闻

宣汉县胡家镇“三项加法

近年来,宣汉县胡家镇积极探索,创新思路,将干部准确定位,让干部准确站队,不断加强干部队伍的建设,为胡家的发展提供坚实的保障。 帮扶+实战,做细后备干部培养。制订了《……[阅读全文]

新闻综合报导