在线 2FA 验证码生成

37 个工具

根据密钥本地生成 6 位 2FA 验证码,支持密钥或 UID|密码|2FA(第 3 段)。

免费使用,无需注册。JSON、密码、2FA 等工具在浏览器本地处理。

在线 2FA 验证码生成

根据密钥本地生成 6 位 2FA 验证码,支持密钥或 UID|密码|2FA(第 3 段)。

免费

介绍

把两步验证设置页给你的密钥粘进来,这里会算出验证器应用会给出的同一个 6 位数字,按标准的 30 秒窗口刷新。密钥由你眼前这个页面使用,不会发往任何地方。

使用方法

每行一个 Base32 密钥,或者从二维码里拷出来的 otpauth:// 链接,也可以是 uid|password|secret 三段格式,其中只读第三段。验证码立即出现,随时钟滚动。

TOTP 到底是什么

服务和你各自持有同一个密钥。两边把它和取整到 30 秒槽位的当前时间一起送进一个标准函数,得到同样的六位数字。生成过程不传输任何东西,这也是验证器在飞机上照样能用的原因。它同时意味着一个码事后拿不回来:槽位过去,那个数字就没了,下一个和它毫无关系。

可以粘进来什么

Base32 密钥是常见情况,而且能容忍设置页喜欢加进去的那些空格。otpauth:// 链接可以用,还顺带把账号标签带了进来。uid|password|secret 这种格式出现在导出的凭据清单里,只有第三段会被读取。一次几行会出几个码,这也是它作为一个页面而不是一个输入框存在的理由。

数字对不上的时候

三个原因覆盖了绝大多数。机器时钟漂移排第一,解决它靠打开自动对时,而不是反复重粘密钥。带了不可见字符的密钥排第二,通常来自 PDF 或聊天消息。第三是某个服务商签发了不是 6 位 30 秒的东西,那样任何通用生成器都对不上。

当备用而不是当主验证器

手机在另一个房间时,用一个浏览器标签页进账号是件好事。但它是个糟糕的密钥保管处,因为这里不备份、不同步,也扛不住一次缓存清理。主要因素请放在你自己控制的应用或硬件密钥里,把这里当成在错误的时刻庆幸它存在的那个后备。

什么留在你的机器上

密钥和算出来的验证码都留在页面里。没有账号,没有同步,也没有任何一次请求带着密钥出去。这同时取消了找回的可能:密钥丢了,这个页面帮不上忙,只有签发它的那个服务能。

常见问题

为什么和手机上的不一样?

几乎总是时钟。TOTP 从当前时间推出数字,所以一台快一分钟的机器会算出不同的码。先确认这台机器的时间是自动同步的,再确认密钥粘进来时没有夹带空格。

能直接粘二维码吗?

图片不行,但它背后的 otpauth:// 链接可以。多数设置页会在二维码旁边给出文本版本,任何二维码阅读器也能给你同一串。

它会给我备用码吗?

不会。备用码是你要保护的那个服务签发的,和共享密钥无关,请按那个服务的要求另行保存。

在共用电脑上用安全吗?

密钥在标签页打开期间留在里面,所以在不属于你的机器上,用完请清空输入框并关掉标签页。把密钥当成密码本身来对待。

为什么是 6 位和 30 秒?

这是几乎所有服务在用的默认值。如果某个服务商签发的密钥用了不同的位数或周期,这里算出的码和它对不上。

相关工具

在线 2FA 验证码生成 | CheckKit