TOTP / 2FA 生成器
从 base32 密钥生成基于时间的一次性密码(2FA 验证码)。
TOTP 验证码使用 Web Crypto API 在您的浏览器本地计算,不上传任何内容,但请避免将真实的生产 2FA 密钥粘贴到任何网络工具中。
需要检查鉴权令牌?试试 JWT 解码器。
关于 TOTP / 2FA 生成器
此 TOTP 生成器将 base32 密钥转换为与您的身份验证器应用所显示相同的基于时间的一次性密码,并每秒自动刷新。从 2FA 设置界面粘贴密钥,即可立即获得实时 OTP,并配有倒计时条显示当前验证码的剩余有效时长。作为灵活的 2fa 验证码生成器,它支持 SHA-1、SHA-256 和 SHA-512、6 或 8 位验证码以及自定义周期,因此您几乎可以匹配任何服务或测试您自己的 MFA 实现。它专为测试双因素登录流程、调试身份验证器验证码生成或验证服务器 TOTP 输出的开发者、QA 工程师和 DevOps 打造。一切都使用 Web Crypto API 在您的浏览器本地计算,因此您的数据不会离开设备。
功能特性
- 从任意 base32 密钥生成实时的基于时间的一次性密码
- 每秒自动刷新验证码,并提供可视化的有效期倒计时
- 在 SHA-1、SHA-256 和 SHA-512 哈希算法之间切换
- 选择 6 或 8 位验证码以匹配您的服务
- 自定义时间周期,从 5 到 120 秒(默认 30 秒)
- 为便于阅读对验证码进行间隔格式化,并支持一键复制
- 完全在浏览器内使用 Web Crypto API 计算
如何使用 TOTP / 2FA 生成器
- 将您的 base32 密钥粘贴到密钥字段中。
- 选择位数、哈希算法和周期以匹配您的服务。
- 查看以大号数字显示并随之刷新的当前 TOTP 验证码。
- 在倒计时结束前点击复制按钮获取验证码。
示例
输入
密钥:JBSWY3DPEHPK3PXP
位数:6,算法:SHA-1,周期:30秒
输出
验证码:282 760(某个 30 秒窗口的示例;每个周期都会变化)
由 base32 密钥派生的 6 位 SHA-1 TOTP。实际数字取决于当前时间窗口。
常见错误与故障排除
- 粘贴密钥时出现「Invalid base32 character」错误。 — Base32 密钥仅使用 A-Z 和 2-7。请移除空格以及 0、1、8 或 9 等字符,它们常来自打错或由 QR 解码得来的密钥。
- 生成的验证码与身份验证器应用不匹配。 — 请确认位数、周期和哈希算法与服务一致。多数使用 6 位、30 秒和 SHA-1,但有些使用 8 位或 SHA-256/512。
- 验证码看起来正确却仍被拒绝。 — TOTP 依赖当前时间。请确保您的设备时钟准确;即便 30 秒的偏差也可能把您推入错误的时间窗口。
- 出现「Secret is empty」提示。 — 请输入来自 2FA 设置界面的 base32 共享密钥,而非 otpauth:// URI。只粘贴密钥字符串本身。
常见问题
- 什么是 TOTP 生成器?
- TOTP 生成器根据共享的 base32 密钥计算基于时间的一次性密码,生成与身份验证器应用所显示相同的轮换 2FA 验证码。此 ArrayKit TOTP 生成器在您的浏览器中实时计算它们。
- 如何用此 TOTP 生成器生成 2FA 验证码?
- 从服务的 2FA 设置界面粘贴 base32 共享密钥,设置位数、算法和周期以匹配,然后查看实时验证码。它每秒更新一次,并带有倒计时条。
- TOTP 生成器接受哪种密钥格式?
- 它接受来自服务 2FA 设置界面的 base32 共享密钥(字母 A-Z 和数字 2-7)。空格和填充会被自动忽略;此处不使用 otpauth:// URI。
- 支持哪些算法和位数?
- 您可以选择 SHA-1、SHA-256 或 SHA-512,6 或 8 位验证码,以及 5 到 120 秒的自定义周期,几乎可匹配任何 TOTP 服务。
- 为什么我的验证码与身份验证器应用不同?
- 通常是算法、位数、周期或设备时钟不匹配。请对齐这些设置并确保系统时间准确,因为验证码与当前时间窗口相关联。
- 我的 TOTP 密钥会被保密吗?
- 会。TOTP 生成器使用 Web Crypto API 在本地计算验证码,因此您的密钥不会离开设备,也不会上传到任何服务器。请避免在此粘贴真实的生产密钥。
相关工具
- JWT 解码器 — 解码 JWT 的头部和载荷,并查看 exp/iat(不做验证)。
- JWT 签名工具 — 从载荷和密钥创建并签名 JWT(HS256/384/512)——使用 Web Crypto。
- 哈希生成器 — 通过 Web Crypto API 生成 SHA-256 / SHA-1 / SHA-384 / SHA-512。
- 密码生成器 — 生成强随机密码并附带强度指示器(加密安全)。
- Base64 编码 / 解码 — 安全的 UTF-8 Base64 编码与解码。
- UUID 生成器 — 生成一个或多个随机的 UUID v4 值。
- 二维码生成器 — 从文本或 URL 生成二维码;可下载为 PNG 或 SVG。
- Unix 时间戳转换工具 — 在 Unix 时间戳与可读日期(本地和 UTC)之间转换。
全部 ArrayKit 工具