TOTP 验证码
由密钥算出两步验证的动态码
验证码在你的浏览器里用 WebCrypto 算出,密钥不会上传也不会存下来。刷新页面即清空。
—
| 时间计数器 T | — |
|---|---|
| 当前 Unix 时间 | — |
| otpauth:// 链接 | otpauth://totp/Example?secret=JBSWY3DPEHPK3PXP&algorithm=SHA1&digits=6&period=30 |
TOTP(RFC 6238)就是把 HOTP 的计数器换成时间:T = floor(当前 Unix 秒 / 周期),再用密钥对 T 的 8 字节大端表示做 HMAC,最后按「动态截取」取 4 字节转成十进制取末 N 位。所以同一密钥在同一时间窗内,任何实现算出的码都必须一致——这也是它能离线校验的原因。
所有处理都在你的浏览器本地完成,数据不会上传到服务器。