密码、2FA 与 Passkeys 简明概述(小篇幅文章)
Source: Dev.to

介绍
现在谈这个可能有点晚了,但——你在使用 Passkeys 吗?
在网络和现代技术的发展史中,出现并消失了多种身份验证方式。如果只关注主要的几种,主流的演进路径是:
Password → 2FA/MFA → Passkey
如今,Passkeys 被视为最安全的选项,并被定位为官方的 W3C 标准——实际上是“新的默认”方案。
话虽如此,仍有许多服务依赖仅密码或 2FA/MFA 登录,所以我们生活在一个多种身份验证方式共存的世界中。
这是一篇简短的文章,但我想简要 整理 这些身份验证方式的演进。
什么是密码?
密码 是,不用说,就是你记住并自行输入的“秘密短语”。
在网络早期,许多服务仅依赖这种简单的认证方式。然而,由于其安全弱点,单密码认证已逐渐被淘汰,尤其是在大型平台上。
优点
- 简单易用,任何人都能上手
缺点
- 易被窃取,风险高
- 常在多个服务间重复使用,导致更大暴露风险
- 服务器端的数据泄露超出用户控制,个人努力无法防止
什么是 2FA(双因素认证)?
2FA 通过添加 一步 来加强基于密码的登录,从而提升安全性。
这种方法如今被广泛使用,许多人已经熟悉。短信验证码、认证器应用和电子邮件验证是典型示例。通过组合它们,系统要求:
“你知道密码” + “你可以在设备上确认代码”。
这种两步过程显著提升安全等级。
优点
- 即使密码泄露,攻击者也难以轻易突破
缺点
- 比仅使用密码的登录多了步骤
- 并非所有 2FA 方法都一样(例如,短信相对薄弱,TOTP 应用适中,像 FIDO2 这样的硬件密钥则很强)
- 代码仍可能通过钓鱼攻击被窃取
什么是 Passkey?
Passkey 由 Apple、Google 和 Microsoft 等主要科技公司推广,目前被定位为 W3C 标准——密码的 “继任者”。这种全新的身份验证方式在近几年受到广泛关注,尤其因为它 彻底消除了对密码的需求。
你的设备会存储一个加密密钥(私钥),在登录时,设备会自动使用你的 PIN 码或生物识别(面部或指纹)来证明你的身份。
优点
- 无需密码 → 盗窃或数据泄露的风险极低
- 快速便捷,由设备级保护和生物识别提供安全保障
缺点
- 并非所有服务都已支持;仍在推广中
- 若丢失设备,无法仅凭记忆或重新创建密钥——备份与同步至关重要
简单比较三种方法
| 类别 | Password | 2FA (MFA) | Passkey |
|---|---|---|---|
| 核心机制 | 输入记忆的字符串 | Password + 额外的验证码 | 使用存储在设备上的私钥进行签名(无需密码) |
| 谁持有密钥? | 用户(记忆) | 用户(记忆 + 代码发送设备) | 设备(私钥) |
| 认证流程 | 发送密码 → 匹配检查 | Password → 短信/应用验证码 | 生物识别或 PIN 解锁私钥进行签名 |
| 安全级别 | 低 | 中 | 高(抗钓鱼) |
| 优势 | 简单且广泛支持 | 比密码更安全 | 快速、安全且无密码 |
| 劣势 | 容易泄露或重复使用 | 额外步骤;验证码可能被窃取 | 设备丢失时需要备份 |
| 主要风险 | 被盗、重复使用、数据泄露 | 通过验证码中继进行钓鱼 | 设备被盗 + PIN 暴露 |
| 可用性 | 随处可用 | 大多数主流服务支持 | 正在扩展,但尚未普及 |
结论
在本文中,我仅仅整理了自己对身份验证技术的理解,只关注高层概念,而没有深入技术细节。如果有任何解释显得不完整,敬请谅解。
当你把这三种方法并排比较时,Passkeys 确实提供了极其强大的安全性——但它们并非完美。过去的每一种身份验证方式也都有各自的优点和缺点。有趣的是,即使在如此先进的技术世界里,我们仍未研发出“完美无缺”的身份验证系统。
感谢阅读!




