1

如果由于某种原因手机时钟/日历关闭了很长时间,会发生什么情况。TOTP(基于时间的 OTP)算法是否生成无效令牌?时区是否在令牌正确中起作用,或者客户端和服务器是否都与网络时间协议服务器通信以确保一切都同步?

4

1 回答 1

2

是的,如果时钟不同步,则 totp 将无法验证。但是除非您知道客户端时钟错误并且服务器时钟正确,否则说令牌无效在语义上是不正确的。

不,只要系统设置正确,时区就无关紧要 - 两个设备都应将哈希基于公共数据。通常使用 UTC 或 GMT。可能让您的计算机显示正确的挂钟时间,但配置为错误的时区。如果是这种情况,它将无法正确地将时间转换为公共时区。

使用 NTP 是保持准确时间的一种解决方案(如果您有互联网连接,也是一种便宜的解决方案),但还有其他解决方案。

身份验证将支持多少时钟抖动取决于实现的算法。

于 2017-11-09T23:31:37.107 回答