跳转到主要内容

双重认证的重要性

本文约需 10 分钟阅读

无论设置多么强大的密码,仍然存在仅靠密码无法防御的攻击手段。 如果密码通过钓鱼诈骗被窃取, 或从服务商的数据库中泄露,密码的强度就毫无意义。 应对这些风险的有效手段是 「两步验证」。 本文将介绍两步验证的原理与设置方法、各种方式的比较,以及与密码结合增强安全性的方法。

仅靠密码的局限性

即使使用 passtsuku.com 的强度计生成了具有 128 位以上熵的密码,仅凭密码强度也无法应对以下类型的攻击。

  • 钓鱼攻击:将用户引导至虚假登录页面,诱骗其输入密码
  • 键盘记录器:恶意软件记录键盘输入并窃取密码
  • 服务器端泄露:服务提供商的数据库被黑客入侵,密码被泄露
  • 社会工程学:利用人类心理弱点套取密码

这些攻击的共同点在于,它们都利用了"仅依赖密码这一个要素进行认证"的结构性弱点。当认证依赖于单一要素时,一旦该要素被攻破,整个账户就会变得毫无防护。根据 Microsoft 2024 年的安全报告,启用了两步验证的账户与仅使用密码的账户相比,未授权访问的风险降低了 99.9%。截至 2025 年,这一趋势没有改变,随着利用 AI 的钓鱼攻击不断增加,两步验证的重要性进一步提升。

这个数字背后的原理很简单。攻击者要入侵账户,不仅需要窃取密码,还需要同时成功获取物理设备或伪造生物特征信息 - 这是完全不同类型的攻击 - 因此攻击难度呈指数级上升。这就是"纵深防御"的本质,也是安全领域中 Defense in Depth 理念的基础。

什么是两步验证?

两步验证 (2FA: Two-Factor Authentication) 是一种在登录时除密码外还要求另一个认证要素的机制。认证要素大致分为三类。

  • 知识要素:只有本人知道的信息(密码、PIN 码、安全问题)
  • 持有要素:只有本人持有的物品(智能手机、安全密钥、IC 卡)
  • 生物要素:本人的身体特征(指纹、面部、虹膜)

两步验证将不同类别的两个要素组合使用。例如,密码(知识要素)与智能手机认证应用(持有要素)的组合是最常见的。即使密码泄露,攻击者如果没有实际持有智能手机就无法登录,从而防止未授权访问。

需要注意的是,「两步验证」和「多因素认证」 (MFA: Multi-Factor Authentication) 容易被混淆,但严格来说是不同的。 两步验证是指登录过程分为两个步骤, 而多因素认证是指使用不同类别的多个认证要素。 例如,输入密码后再回答安全问题的方式属于「两步」, 但由于两者都是知识要素,所以不属于「多因素」。从安全角度来看, 组合不同类别要素的多因素认证更加稳固。

两步验证的主要方式与比较

认证应用 (TOTP)

Google Authenticator 和 Microsoft Authenticator 等认证应用会生成基于时间的一次性密码 (TOTP: Time-based One-Time Password)。每 30 秒生成一个新的 6 位数代码,登录时输入该代码。

TOTP 的原理是将服务器和应用共享的密钥(种子)与当前时间组合,计算 HMAC-SHA1 哈希值,从中导出 6 位数字。由于代码是离线生成的,不存在通信被截获的泄露风险。它已在 RFC 6238 中标准化,是目前最推荐的两步验证方式。

SMS 认证

这种方式通过 SMS 向注册的电话号码发送一次性验证码。 虽然易于设置,但存在SIM 卡交换攻击 (攻击者冒充用户向运营商申请补办 SIM 卡)和 SMS 被截获等风险。美国 NIST(国家标准与技术研究院)在 2016 年的 SP 800-63B 指南中将 SMS 认证定位为「受限」的认证手段, 建议迁移到更安全的方式。 适合作为认证应用不可用时的替代方案。

安全密钥 (FIDO2 / WebAuthn)

这种方式通过将 YubiKey 等物理安全密钥插入 USB 端口或通过 NFC 触碰来进行认证。 FIDO2 协议在认证时由浏览器对连接域名进行加密验证, 因此即使被引导到虚假网站,认证信息也不会被发送。 这种「来源验证」机制使其对钓鱼攻击具有最强的抵抗力。 Google 在 2018 年要求所有员工(约 85,000 人)使用安全密钥, 此后因钓鱼导致的账户入侵报告为零。

关于 FIDO2 兼容的安全密钥,FIDO2 安全密钥相关书籍 (Amazon)也可供参考。

各方式比较

选择哪种方式取决于安全需求与便利性之间的平衡。以下整理了三种主要方式的特点。

认证方式安全性防钓鱼能力设置便捷性成本推荐对象
SMS 认证免费其他方式不可用时的替代方案
认证应用 (TOTP)免费推荐大多数用户使用
安全密钥 (FIDO2)最高最高¥150 - ¥400处理金融或机密信息的用户

一个常见的误解是"SMS 认证很危险,不应该使用"这种极端观点。这并不准确。即使是 SMS 认证,与仅使用密码的认证相比,也能大幅降低未授权访问的风险。但即使使用认证应用,攻击者也可能大量发送认证请求使用户疲于应对,这种手法被称为MFA 疲劳攻击。重要的是避免"完全不设置两步验证"的状态,即使 SMS 是唯一的选择,也应该启用。

在主要服务上设置两步验证

许多主要服务都支持两步验证。以下介绍代表性服务的设置位置。

Google 账户

在 Google 账户的"安全性"设置中选择"两步验证"。可以选择认证应用、SMS 或安全密钥进行设置。由于 Google 账户与 Gmail、云端硬盘、YouTube 等众多服务关联,应最优先启用两步验证。

Apple ID

在 iPhone 的"设置"中点击您的姓名,在"登录与安全性"中启用"双重认证"。受信任的设备上会显示 6 位验证码,保护整个 Apple 生态系统。

Amazon

在 Amazon 的"账户服务"中选择"登录和安全",从"两步验证设置"中启用。由于网购账户关联了信用卡信息,强烈建议设置两步验证。

金融机构与网上银行

许多银行和证券公司提供通过一次性密码令牌或应用进行的两步验证。 由于这些账户直接关联金融资产,请选择可用的最强认证方式。 与保护邮箱账户一样, 金融机构账户应最优先设置两步验证。

密码与两步验证的组合

启用了两步验证并不意味着可以忽视密码强度。两步验证只是"额外的防御层",密码仍然是第一道防线。

理想的安全措施是将 passtsuku.com 生成的强密码(16 个字符以上、4 种字符类型、80 位以上的熵)与认证应用的两步验证相结合。通过这种双层防御,除非密码泄露和物理设备被盗同时发生,否则账户将保持安全。但也存在针对登录后会话的攻击,因此了解会话劫持防范也很重要。

未来,通过通行密钥实现的 无密码认证预计将普及,届时密码本身将不再需要。 然而,截至 2024 年,支持通行密钥的 服务仍然有限,在过渡期间,强密码与两步验证的组合仍是最现实的防御策略。

实施两步验证时的注意事项

  • 安全保管恢复代码:设置两步验证后,大多数服务会发放恢复代码(备用代码)。请将这些代码打印在纸上并保存在安全的地方,以防智能手机丢失或损坏。如果在未保存恢复代码的情况下丢失智能手机,可能会面临完全无法访问账户的锁定风险。
  • 在多个设备上设置认证应用:为防止主要智能手机不可用,建议在平板电脑等其他设备上也设置认证应用。
  • 优先使用认证应用而非 SMS:从安全角度出发,请优先设置认证应用 (TOTP) 而非 SMS 认证。由于存在 SIM 卡交换攻击和利用 SS7 协议漏洞进行截获的风险,应尽量避免使用 SMS。

两步验证设置清单

请按照以下清单,从最重要的账户开始依次设置两步验证。

  • 为邮箱账户(Gmail、Outlook 等)设置认证应用
  • 为金融机构(银行、证券、加密货币交易所)设置最强的认证方式
  • 为社交媒体账户(X、Instagram、Facebook)设置认证应用
  • 为电商网站(Amazon 等)设置两步验证
  • 为云存储(Google Drive、Dropbox、iCloud)设置两步验证
  • 将各服务的恢复代码打印在纸上,保存在安全的地方
  • 将认证应用的备份(导出功能)保存到其他设备
  • 使用 passtsuku.com 为每个服务生成独特的强密码,并与两步验证结合使用

提高密码强度和启用两步验证,两者都很重要,不应只做其中之一。通过使用 passtsuku.com 生成强密码并与两步验证结合,可以大幅提升在线账户的安全性。

想进一步了解两步验证实施步骤的读者,多因素认证实践指南 (Amazon)可供参考。

现在就能做的事

  1. 打开 Google 账户的"安全性"设置,启用认证应用(Google Authenticator 或 Microsoft Authenticator)的两步验证
  2. 最优先为邮箱账户和金融服务设置两步验证
  3. 将恢复代码打印在纸上,保存在家中安全的地方
  4. 使用 passtsuku.com 为每个服务生成 16 个字符以上的独特密码,并与两步验证结合
  5. 依次为社交媒体和电商网站等其余服务设置两步验证

常见问题

两步验证和双因素认证有什么区别?
两步验证是进行两次认证的总称,双因素认证是将「知识」「持有」「生物特征」中不同的两种组合的方式。SMS 验证码属于「持有」因素。
SMS 认证安全吗?
SMS 认证比没有好,但存在 SIM 卡交换攻击和 SS7 协议漏洞被拦截的风险。建议使用更安全的认证应用或硬件密钥。
设置两步验证的优先顺序是什么?
首先是邮箱账户(用于密码重置),然后是金融服务、云存储和社交媒体。如果邮箱被入侵,所有其他账户都会面临风险。

这篇文章对您有帮助吗?

相关术语

XHatena