Hasty Briefsbeta

双语

Implementing TOTP two-factor authentication in 2025

a year ago
  • #Authentication
  • #TOTP
  • #Security
  • TOTP(基于时间的一次性密码)是目前最流行的双因素认证方式(由于SIM卡交换漏洞问题,已排除短信验证方式)。
  • 2019年一项分析显示,许多验证器会接受非标准参数,导致生成错误代码,迫使服务商为保持兼容性而采用默认安全参数。
  • 2025年测试表明,各类验证器对SHA1和SHA256算法的支持参差不齐,即便指定SHA256,部分仍默认使用SHA1算法。
  • iOS版谷歌验证器会拒绝52字符密钥的SHA1算法,但接受32字符密钥的SHA256算法,突显了实现标准的不一致性。
  • 对网站运营者的建议仍与2019年一致:采用SHA1算法、32字符密钥、30秒有效期和6位数验证码以确保广泛兼容性。
  • 额外安全措施包括:避免明文存储TOTP密钥、实施备用验证码等恢复机制,以及记录已使用的验证码。
  • 在URI中添加'image'和'color'等可选参数可提升用户体验,多数客户端会忽略这些非必要参数而不会引发问题。