首页/安全/等保与合规速查/TOTP 动态口令:实现与校验要点
密码与认证合规50 条

TOTP 动态口令:实现与校验要点

TOTP(基于 RFC 6238)以共享密钥与时间窗生成一次性口令,适合作为持有因素补齐双因素认证;服务端应校验时间窗、防重放并保护共享密钥。

等保与合规速查安全更新于 2026-10-12

命令行生成与校验

命令行生成与校验
# 生成当前动态码(base32 密钥)
oathtool --totp -b JBSWY3DPEHPK3PXP
# 校验:允许前后 1 个时间窗(30 秒步长)
oathtool --totp -b JBSWY3DPEHPK3PXP -w 1
共享密钥等同于长期口令凭据:应加密存储、绑定单用户,重置流程需身份核验并留痕。

易错点

  • 校验窗口过大:增大被重放与暴力尝试的空间
  • 同一验证码可重复使用:应记录已用码并在窗口内去重

数据来源与参考

  • RFC 6238(TOTP)
  • RFC 4226(HOTP)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌