6. Resynchronization (重新同步)
6. Resynchronization (重新同步)
由于客户端和验证服务器之间可能存在时钟漂移, 我们建议将验证器设置为在拒绝之前证明者可以 "不同步" 的时间步数的特定限制。
此限制可以在接收到 OTP 值时从计算的时间步长向前和向后设置。如果按建议将时间步长设置为 30 秒, 并且验证器设置为仅接受向后两个时间步长, 则最大经过时间漂移将约为 89 秒, 即计算时间步长中的 29 秒和向后两个时间步长的 60 秒。
这意味着验证器可以对当前时间执行验证, 然后对每个向后步骤执行另外两次验证 (总共 3 次验证)。在成功验证后, 验证服务器可以根据时间步数记录令牌检测到的时钟漂移。在此步骤后收到新的 OTP 时, 验证器可以使用根据令牌记录的时间步长时钟漂移数调整的当前时间戳验证 OTP。
此外, 重要的是要注意, 证明者未向验证系统发送 OTP 的时间越长, 证明者和验证者之间累积的时钟漂移 (可能) 就越长。在这种情况下, 如果漂移超过允许的阈值, 上述自动重新同步可能不起作用。应使用额外的认证措施来安全地认证证明者并明确重新同步证明者和验证者之间的时钟漂移。