首页 / 2FA 详解:短信验证码 vs 验证器应用 vs 硬件密钥

2FA 详解:短信验证码 vs 验证器应用 vs 硬件密钥

光靠密码还不够——这三种常见的第二重验证到底能防住什么。

双重验证(2FA)要求你在登录时提供密码之外的另一样东西——一个验证码、一次点击确认,或一把物理密钥——这样即使密码被盗,单靠密码也无法闯入你的账户。但并非所有 2FA 强度都一样。以下是这三种常见方式的真实对比。

短信验证码

通过短信发送到你手机的验证码。比完全没有 2FA 要好,但它是最弱的一种:SIM 卡劫持(攻击者说服你的运营商把你的号码转移到他们的 SIM 卡上)和 SS7 网络拦截都能在不接触你设备的情况下绕过它。只有在服务方没有更好选择时才使用它。

验证器应用(TOTP)

像 Google Authenticator、Authy,或内置于 Proton Pass、Bitwarden 和 1Password 中的验证器,会生成一个每 30 秒变化一次的 6 位数字验证码,由你设备本地根据共享密钥计算得出——接收它不需要传输任何数据,这就已经防住了 SIM 卡劫持。它的弱点是钓鱼攻击:一个伪造的登录页面仍然能骗你实时把验证码输入到攻击者的网站上。

硬件安全密钥(FIDO2 / WebAuthn)

一把物理密钥(YubiKey、Google Titan 等),登录时轻触或插入即可确认身份。与验证码不同,它会先用密码学方式确认你确实在真实网站上,才会响应——伪造页面根本得不到有效响应,这使它成为唯一真正能抵御钓鱼攻击的常见方式。代价是需要购买一把密钥并随身携带。

通行密钥(Passkey)——更新的选择

通行密钥使用和硬件密钥相同的 FIDO2 技术,但凭据保存在你的手机或电脑上,而不是单独的设备中,通过指纹、面容或 PIN 解锁。它和硬件密钥一样能抵御钓鱼攻击,也不需要额外购买任何东西,但不同网站的支持程度不同,跨设备同步的方式也不一样——详见我们的术语表条目。

到底该用哪一种?

按优先级排序:为最重要的账户(主邮箱、密码管理器、银行、工作账号)使用硬件密钥或通行密钥;其他账户使用验证器应用;只有在服务方真的没有更好选择时才用短信。大多数密码管理器——包括我们密码管理器对比中的那些——现在都能自行存储和生成验证码,所以你不需要另外安装一个应用。

相关术语: 双重身份验证(2FA) · 通行密钥(FIDO2) · 主密码

常见问题

有 2FA 总比没有好吗?

是的。即使是最弱的常见选项短信验证码,也能挡住绝大多数只掌握了被盗密码的自动化攻击。开启服务方提供的任何一种 2FA,而不要为了等更好的选项而完全跳过。

我能用密码管理器代替单独的验证器应用吗?

可以——Proton Pass、Bitwarden 和 1Password 都能直接生成验证码,更方便。代价是:如果有人攻入你的密码管理器,就等于同时拿到了两重验证。

如果我丢失了硬件密钥或手机怎么办?

任何靠谱的服务都允许你注册备用方式——第二把密钥、备用代码,或第二部手机——请在需要之前就设置好,而不是事后才做。

通行密钥会完全取代密码吗?

这是目标,但推广是渐进的——大多数支持通行密钥的网站仍允许回退使用密码,很多网站目前还完全不支持通行密钥。