去中心化的jwt(三)支付安全(三)RFC 6238 离线

定义了‌TOTP‌(Time-based One-time Password,基于时间的一次性密码)算法。该标准是双因素认证(2FA)的核心基石,被广泛应用于 Google Authenticator、Microsoft Authenticator 等验证器应用以及各类安全登录系统中 。‌‌

算法利用共享密钥(Secret Key)和当前 Unix 时间戳,通过 HMAC-SHA-1(或 SHA-256/SHA-512)哈希函数生成一次性密码 。

默认时间步长(Time Step)为‌30 秒‌,意味着生成的验证码每 30 秒自动刷新一次。

计算公式为 T=⌊(CurrentUnixTime−T0)/X⌋T=⌊(CurrentUnixTimeT0)/X⌋,其中 T0 通常为 0,X 为步长 。

容错机制‌:为应对客户端与服务端时钟不同步或网络延迟,验证系统通常会设置容错窗口(如接受前后相邻的时间步长内的密码)

 

hmacsha512(对称密钥,timestamp/30)

 

 

posted on 2026-08-23 22:27  silyvin  阅读(11)  评论(0)    收藏  举报