2FA.HK FAQ
TOTP 验证码为什么每 30 秒刷新一次?
Q: TOTP 验证码为什么每 30 秒刷新一次?
TOTP 验证码根据密钥和当前时间片计算。常见设置是每 30 秒生成一个新验证码,用来减少验证码被重复使用或长时间暴露的风险。
TOTP 是 Time-based One-Time Password 的缩写,也就是基于时间的一次性密码。它会使用 2FA 密钥和当前时间作为输入,计算出一个短时间内有效的动态验证码。
很多平台默认使用 30 秒作为一个时间片。也就是说,在同一个 30 秒时间窗口内,使用相同密钥通常会生成相同的验证码;进入下一个时间窗口后,验证码会自动变化。
这种设计的好处是验证码不会长期有效。即使某个验证码被他人看到,也只能在很短时间内使用,降低了被重复利用的风险。相比固定密码,TOTP 动态验证码更适合用于登录确认、敏感操作验证和账号安全保护。
不过,30 秒刷新并不代表密钥本身安全。如果 2FA 密钥泄露,攻击者仍然可以持续生成新的验证码。因此,真正需要保护的是密钥,而不仅仅是某一次生成出来的 6 位验证码。
如果你发现验证码总是错误,可以检查系统时间是否准确。因为 TOTP 依赖时间计算,时间偏差过大会导致验证码和平台服务端计算结果不一致。

