从任意密钥生成 TOTP 验证码
将 Base32 格式的 2FA 密钥转换为符合 RFC 6238 标准的实时一次性验证码 —— 完全在浏览器中计算。
otpauth:// URI(可选)
输入有效密钥以预览 otpauth:// URI。
当前验证码
••• •••
关于 TOTP 验证码生成器
此工具按照 RFC 6238 标准生成基于时间的一次性密码(TOTP),这与 Google Authenticator、Authy 等身份验证应用所使用的算法相同。粘贴设置双重验证时获得的 Base32 编码密钥,此工具即可通过 Web Crypto API,完全在浏览器中计算出当前、上一个和下一个验证码。
功能:
- 符合 RFC 6238 标准,支持 SHA-1、SHA-256 或 SHA-512
- 可配置位数(6 或 8)和时间周期(30 秒或 60 秒)
- 实时倒计时环,显示距离下一个验证码的时间
- 100% 本地处理 —— 密钥永远不会离开你的浏览器
如何生成 TOTP 验证码
- 将 Base32 密钥粘贴到输入框中
- 根据你的账户设置选择位数、周期和算法
- 观察当前验证码随倒计时环实时更新
- 复制验证码,或可选生成 otpauth:// URI 以供参考
常见问题
什么是 TOTP 验证码?
基于时间的一次性密码(TOTP)是由共享密钥和当前时间生成的一串短数字验证码,每 30 或 60 秒变化一次。它是大多数用于双重验证(2FA)的身份验证应用背后所依据的标准。
在这里输入我真实的 2FA 密钥安全吗?
所有计算都在你的浏览器本地完成 —— 密钥不会被发送到任何地方,也不会被记录或存储。不过,在任何网页中输入真实的生产环境 2FA 密钥都存在一定的固有风险(例如遭到入侵的浏览器扩展)。用于学习、测试,或使用你自己掌控的密钥是安全的;对于真正敏感或共享账户的密钥,请格外谨慎。
此工具支持哪些算法和设置?
支持 SHA-1(几乎所有身份验证应用默认使用的算法)、SHA-256 和 SHA-512,可生成 6 位或 8 位验证码,周期为 30 秒或 60 秒,覆盖了 RFC 6238 定义的全部范围。
为什么我的验证码和身份验证应用中的不一致?
最常见的原因包括:设备时钟不同步(TOTP 依赖时间),算法、位数或周期与账户实际使用的设置不匹配(大多数服务使用 SHA-1、6 位、30 秒),或密钥输入有误。请仔细核对各项设置以及设备的时钟。
此工具会存储或传输我的密钥吗?
不会。密钥完全在你的浏览器内存中通过 Web Crypto API 解码和使用。离开页面后,任何内容都不会发送到服务器、被记录或保存。
密钥应该是什么格式?
一个 Base32 编码的字符串(字母 A-Z 和数字 2-7)—— 与服务提供手动 2FA 设置密钥(而非二维码)时显示的格式相同。空格、小写字母和缺失的填充符都会被自动容许。
隐私
所有计算都通过 Web Crypto API 在你的浏览器本地完成。你的密钥永远不会被上传、记录或存储 —— 但与任何网页工具一样,除非你了解其中的风险,否则应避免粘贴真正敏感的生产环境密钥。