跳到正文
>_ITDITDWeb 安全平台

术语表

什么是双因素认证(2FA)— 与两步验证的区别、各方式的强弱

双因素认证(2FA)是在密码之外,再叠加一种「不同种类的证明」来确认本人身份的机制。本文从防御视角讲解它与常被混淆的两步验证的区别、SMS・身份验证器应用(TOTP)・通行密钥各方式的强弱、以及如何选择,并刻意不写攻击手法。

发布于 2026-07-02 更新于 2026-07-02 1 分钟阅读

「就算我的密码泄露了,单凭这一点也没人能进来」——这正是双因素认证(2FA)带来的保障。下面梳理它与常被混淆的两步验证的区别,以及各方式的对比(不写攻击手法)。

「两个因素」与「两个步骤」——区别在哪

两个词看着相似,但只要抓住目标就很简单。认证因素分为三个类别:

知识
你知道的东西:密码、PIN、安全问题
持有
你拥有的东西:手机、身份验证器应用、物理密钥、能收到短信的号码
生物
你本身:指纹、面容、虹膜

双因素认证(2FA)混合两个不同的类别(例如密码 = 知识 + 身份验证器应用 = 持有)。要点是:即使一个被攻破,另一个类别仍然屹立,攻击者也进不来。相比之下,两步验证(2SV)只意味着「确认两次」,两个步骤可以是同一类别(密码 + 安全问题是两个步骤但不是两个因素)。所以若真想要强度,关键在于混合不同的类别

方式的强弱:归根结底看「能不能对钓鱼网站出示」

即便开启了 2FA,强度也会因方式而大不相同。决定性因素是:你会不会一不小心把「证明」交给假网站。

强 ── 通行密钥 / 物理密钥(FIDO2)

签名绑定到域名——从结构上无法对假网站出示(抗钓鱼)

中 ── 身份验证器应用(TOTP)

比 SMS 强,但验证码要由人来读——所以可能被交给假网站

弱 ── SMS / 邮件验证码

易受 SIM 交换和中继攻击;但仍强于仅有密码

2FA 方式的强度归根结底看『能不能对钓鱼网站出示』。越靠上越强。

弱:SMS / 邮件验证码

  • 人读取并输入验证码——所以可能被直接交给假网站
  • 暴露于 SIM 交换和中间人(AiTM)钓鱼之下
  • 但仍明显强于仅有密码(远胜于没有)

强:通行密钥 / 物理密钥(FIDO2)

  • 签名绑定到网站的域名——不可能对假网站出示
  • 甚至能抵御中间人钓鱼(抗钓鱼 MFA)
  • 身份验证器应用(TOTP)居于两者之间——比 SMS 强,但仍可能对假网站出示

本站的观点:先开启,再转向『交不出去』的方式

2FA 最常见的失败,是在「哪个最强」上想太多,结果一个都没开。优先级很清楚——先在每个账户上开启某种 2FA,然后把王国之钥级别的账户(邮箱、域名、支付)提升到无法对钓鱼网站出示的方式(通行密钥)。本站不把「靠小心识破假网站」算作一种防御策略。与其依赖人的警觉,不如倾向那些在结构上就无法把证明交给假网站的方式。

接下来阅读

FAQ

Q双因素认证和两步验证是同一回事吗?
A

严格来说不是。双因素认证(2FA)会组合两种不同的「因素」——知识(密码)、持有(手机、密钥)、生物(指纹、面容)。而两步验证(2SV)只是指「确认两次」,这两步未必是不同的因素(例如密码加安全问题都属于知识——是两步但不是两个因素)。实践中二者大量重叠,但目标是混合不同的类别,这样攻破一个也进不来。

Q基于 SMS 的 2FA 还值得用吗?
A

值得。它明显强于仅有密码,能挡下大多数因密码重用或泄露而来的账户被盗。但 SMS 是 SIM 交换和中间人钓鱼的首要目标,作为一种方式它属于最弱的一档。正确的理解是「远胜于没有,但不是终点」。在条件允许处,请迁移到身份验证器应用(TOTP)或通行密钥。

Q我该选哪种方式?
A

经验法则是:越难对钓鱼网站出示的方式越强。从强到弱:通行密钥/物理安全密钥(FIDO2)> 身份验证器应用验证码(TOTP)> SMS/邮件。对于「王国之钥」级别的账户——邮箱、你的域名、支付——请优先选用通行密钥这类抗钓鱼方式。务实的做法是:先在所有账户开启某种 2FA,再把最重要的账户提升到最强方式。