两步验证怎么运作:密码之外的第二道锁
双因素到底是什么
"因素"指的是证据的类型:你知道的东西(密码)、你拥有的东西(手机)、你本身的东西(指纹)。两步验证 = 密码(知道)+ 验证码(拥有)。攻击者就算偷到密码,没有你手机里的密钥,也算不出正确的码。
绑定的本质:交换一次密钥
在网站安全设置里点"开启两步验证"时,发生的事情是:
- 网站生成一段随机密钥(秘密)。
- 网站把密钥编成一个二维码显示在屏幕上。
- FreeOTP 扫码,把密钥存进手机本地(Keystore 加密)。
- 从此双方用同一把密钥各自算数:网站算出的数 == FreeOTP 算出的数,验证通过。
密钥只在绑定那一刻出现过一次(以二维码形式)。之后它不再传输——这也是为什么码能离线生成。
登录时的流程
- 输入用户名密码(第一因素)。
- 网站要求"输入验证器上的代码"。
- 打开 FreeOTP,点对应令牌,出来一个 6 位数。
- 30 秒内把数填进网站,通过。

关键推论
- 码不对 ≠ 账号坏了:多数是时间漂移或用错令牌,可修。
- 手机丢了 ≠ 永远锁死:前提是你留了恢复代码(网站在你开启 2FA 时给的一次性备用码)。
- 删了 App ≠ 解绑:密钥没了但网站端的绑定还在,要用恢复代码登进去重新配。
相关页面
- TOTP/HOTP 细节:一次性密码的两种算法
- 绑定第一步:扫码绑定令牌
- 备用码怎么用:恢复代码的正确用法