多年来,Big Tech 一直坚持认为密码的死亡指日可待。多年来,这些保证只不过是空洞的承诺。密码替代方案(例如推送、OAUTH 单点登录和受信任的平台模块)引入了与其解决的一样多的可用性和安全问题。但现在,我们终于迎来了一个真正可行的密码替代方案。
新的替代方法称为密码。通常,密钥是指在硬件中存储身份验证信息的各种方案,这个概念已经存在了十多年。现在不同的是,微软、苹果、谷歌和其他公司组成的财团围绕着一个由 FIDO 联盟主导的单一密钥标准进行了统一。对于大多数人来说,不仅密码比密码更容易使用;它们还完全抵抗凭证网络钓鱼、凭证填充和类似的帐户接管攻击。
周一,PayPal表示,美国用户将很快可以选择使用基于 FIDO 的密码登录,加入 Kayak、eBay、Best Buy、CardPointers 和 WordPress 作为提供密码替代方案的在线服务。最近几个月,微软、苹果和谷歌都更新了他们的操作系统和应用程序以启用密码。密钥支持仍然参差不齐。例如,存储在 iOS 或 macOS 上的密钥可以在 Windows 上运行,但反向尚不可用。不过,在接下来的几个月里,所有这些都应该得到解决。
究竟什么是密钥?
Passkeys 的工作原理与 FIDO 身份验证器几乎相同,它允许我们使用我们的手机、笔记本电脑、计算机和 Yubico 或 Feitian 安全密钥进行多因素身份验证。就像存储在这些 MFA 设备上的 FIDO 身份验证器一样,密钥是不可见的,并且与 Face ID、Windows Hello 或设备制造商提供的其他生物识别读取器集成。除了物理拆卸设备或使其受到越狱或生根攻击之外,没有办法检索存储在身份验证器中的密码秘密。
即使对手能够提取密码秘密,他们仍然必须提供指纹、面部扫描,或者——在没有生物识别功能的情况下——与令牌相关联的 PIN。更重要的是,硬件令牌使用 FIDO 的跨设备身份验证流程或 CTAP,它依赖蓝牙低功耗来验证身份验证设备与尝试登录的设备物理上是否接近。
到目前为止,基于 FIDO 的安全密钥主要用于提供 MFA,即多因素身份验证的缩写,除了正确的密码外,还需要有人提供单独的身份验证因素。FIDO 提供的其他因素通常以用户拥有的东西(包含硬件令牌的智能手机或计算机)的形式出现,以及用户拥有的东西(指纹、面部扫描或其他永远不会离开设备的生物特征)的形式。
到目前为止,针对符合 FIDO 的 MFA 的攻击一直供不应求。例如,最近突破 Twilio 和其他顶级安全公司的高级凭证网络钓鱼活动未能针对 Cloudflare 失败,原因有一个:与其他目标不同,Cloudflare使用了符合 FIDO 的硬件令牌,这些令牌对攻击者使用的网络钓鱼技术免疫。被破坏的受害者都依赖于较弱形式的 MFA。
但是,除了密码之外,硬件令牌还可以提供一种或多种身份验证因素,而密钥则完全不依赖于密码。相反,密钥将多个身份验证因素(通常是手机或笔记本电脑以及用户的面部扫描或指纹)整合到一个包中。密钥由设备操作系统管理。根据用户的选择,它们还可以使用 Apple、Microsoft、Google 或其他提供商提供的云服务,通过端到端加密与用户的其他设备同步。
密钥是“可发现的”,这意味着注册设备可以通过加密隧道自动将密钥推送到另一台尝试登录用户站点帐户或应用程序的注册设备。登录时,用户使用相同的生物特征或设备上密码或 PIN 对自己进行身份验证,以解锁其设备。这种机制完全取代了传统的用户名和密码,提供了更轻松的用户体验。
FIDO 的执行董事兼首席营销官 Andrew Shikiar 说:“用户不再需要为每项服务注册每台设备,FIDO(以及任何公钥密码术)长期以来就是这种情况。“通过启用私钥跨操作系统云安全同步,用户只需注册一次服务,然后基本上在所有其他设备上预先注册该服务。这为最终用户带来了更好的可用性,并且——非常重要的是——允许服务提供商开始停用密码,作为帐户恢复和重新注册的一种方式。”
Ars 评论编辑 Ron Amadeo上周写道:“密码只是直接与网站交换 WebAuthn加密密钥。人类无需告诉密码管理器生成、存储和调用一个秘密——这将一切都是自动发生的,比旧文本框支持的秘密要好得多,并且强制执行唯一性。”
试用密钥
我想想象一下密码是如何工作的,但现在,真正提供密码的网站或应用程序很少,如果有的话。所以我访问了这个由安全公司 Hanko 创建的演示站点。当我在适用于 iOS 16 的 Chrome 上创建帐户时(两者最近都开始支持密码),演示网站让我可以选择使用密码而不是密码来保护它。序列如下所示:
从这里开始,我可以在运行 Ventura 或更高版本的 Mac 上使用 Chrome 或 Safari 使用密码自动登录到该站点。至少,理论上我应该。不幸的是,我手头没有 Mac,所以我尝试使用密码从 Windows 10 机器登录帐户。因为跨不同操作系统使用密码更复杂,我不得不使用二维码来获取 Windows 中的 Edge 浏览器以从 iCloud 检索密码。流程看起来像这样。
请记住,两个设备必须能够通过蓝牙相互连接。无法使用密码的读者应首先检查蓝牙连接问题。
虽然我没有在 macOS 上测试密码,但 Ars 高级技术记者 Andrew Cunningham 在他对 Ventura 的广泛评论中做了。一个要点:支持密钥的非 Safari 浏览器无法直接访问存储在 iCloud 中的密钥,因此需要额外的步骤。
支持从附近设备进行密码登录的平台包括:
- Windows 上的 Edge 和 Chrome
- macOS 上的 Edge、Safari 和 Chrome
- 铬操作系统
随着 Apple 发布的 iOS 16 和 macOS Ventura 以及 Google 推出新的 Android 支持,现在几乎所有移动设备都会自动将密钥同步到用户的所有设备。微软已表示计划在 2023 年提供同步支持。
随着 Microsoft、Apple、Google 和其他公司推出额外或新的支持,预计该流程将得到简化。一旦这个过程进一步成熟,期待关于这个主题的更深入的文章。