我的银行的两因素身份验证

信息安全 验证
2021-09-08 07:40:18

我的银行需要一个安全加密狗。将借记卡放入读卡器并输入密码。

出现在银行网站上输入的 11 位数代码并授予访问权限。

但是,如果我想设置付款,他们会要求提供所有详细信息,然后生成一个 8 位数字,其中包括收件人的数据。然后我必须将我的卡放回读卡器,输入我的密码,然后输入这个 8 位代码。

然后阅读器生成一个新代码,该代码必须输入银行。如果这是正确的,则授权该操作。如果读者不与银行网站通信,它如何知道如何生成代码?

3个回答

在不知道它们实际使用什么的情况下,很难说实现是如何工作的。但很可能会是这样的:

  • 智能卡在芯片上嵌入了一个共享秘密,并且需要一个 PIN
  • 向您发送一个挑战,其中包括一个随机生成的值,通常是需要转移的金额,还可能包括一个时间参数(以限制签名随时间的有效性)。
  • 您使用共享密钥根据参数生成输出
  • 输出被发送到银行,他们执行相同的计算并查看是否匹配。当匹配时,他们确定您签署了交易。

这是通过基于时间的一次性密码算法完成的。它是一种根据共享密钥和当前时间计算一次性密码的算法。

更多技术细节,请阅读:https ://en.wikipedia.org/wiki/Time-based_One-time_Password_Algorithm

该解决方案使用芯片身份验证程序标准来使用 EMV 信用卡生成 OTP 并签署数据。

链接页面详细解释了该协议,但基本上它通过使卡执行标准交易来工作,并且交易结果的某些部分显示在屏幕上(然后银行可以对其进行加密验证)。IAI(发行人身份验证指标)值控制交易结果的哪些部分实际保留并显示在屏幕上。