4

许多银行提供一些令牌设备,以便为一次性使用创建密码。我想知道他们使用哪种 OTP 算法?是HOTP还是TOTP?

4

2 回答 2

4

正如 aiodintsov 所说,答案不能一概而论,但技术的选择实际上取决于银行。我的猜测是TOTP。但是让我给出一个选择的理由。

TOTP 使用 Unix 时间戳代替了客户端和服务器在事件计数器上保持同步的需要。该算法允许服务器选择它认为可接受的传入时间戳有多远,以校正时钟漂移。

当您从银行收到 OTP 时,通常会说您应该在一定时限内使用该 OTP,之后该 OTP 将过期。如果银行使用HOTP,则 OTP 无需在一段时间后过期,而是仅在您发出另一个请求并增加计数器后才会过期。

因此,下次您收到不要求您在时间限制内使用它的 OTP 时,请确保它是使用HOTP.

于 2012-09-07T00:50:12.030 回答
2

他们可以使用他们想要的任何东西,他们选择的任何散列函数。使用 HOTP 和 TOTP。参见 RFC 4226 和 RFC 6238。我曾经有一张完全符合 RFC 4226 的 HOTP 算法的测试卡,可以将其用于身份验证解决方案(为卡提供了密钥)。

于 2012-09-07T00:38:16.290 回答