通行密钥 (通行密钥身份验证)

通行密钥

通行密钥

Passkeys /ˈpasˌkēs/
名词
通行密钥基于FIDO标准,是密码的替代品,能让用户在各种设备上更快、更方便、更安全地登录网站和应用程序。与密码不同,通行密钥始终保持强大功能,并可抵御网络钓鱼。

通行密钥简化了应用程序和网站的账户注册,易于使用,可在用户的大多数设备上使用,甚至可在物理距离较近的其他设备上使用。

为什么要使用通行密钥?
密码存在问题。

基于知识

不易于使用和记忆

容易被钓鱼、获取和重复使用

的组织在过去一年中遭受过网络钓鱼攻击*。

*HYPR,《2022年无密码安全状况报告》–点击此处下载报告。

传统的身份验证解决方案无法解决安全问题,并且/或者无法满足消费者大规模使用的需求。

通行密钥优化了FIDO身份验证的访问和可用性

组织可以在各种用例中使用通行密钥部署FIDO登录。通行密钥使用户能够在他们的许多设备(甚至是新设备)上访问他们的FIDO登录凭证,而无需在每个账户的每个设备上重新注册。另外,对于不需要同步的组织来说,与FIDO安全密钥或平台绑定的设备绑定通行密钥也是一种选择。

用户如何使用通行密钥?

当用户被要求登录应用程序或网站时,用户会使用与解锁设备(手机、电脑或安全钥匙)时相同的生物特征或PIN码来批准登录。应用程序或网站可以使用这种机制代替传统的(不安全的)用户名和密码。

这对…

下载我们的通行密钥标识风格指南文件。

常见问题

什么是通行密钥?

任何无需密码的FIDO凭证都是通行密钥。

通行密钥是一种密码替代品,能让用户在各种设备上更快、更方便、更安全地登录网站和应用程序。与密码不同的是,通行密钥可以抵御网络钓鱼,始终保持强大功能,而且在设计上没有共享的秘密。

它简化了应用程序和网站的账户注册,易于使用,可在用户的所有设备上使用,甚至可在物理距离内的其他设备上使用。

从技术角度看,通行密钥是FIDO凭证,可由浏览器发现,或置于本地应用程序中,或用于无密码身份验证的安全密钥中。通行密钥以加密密钥对取代密码,从而提高登录安全性,改善用户体验。加密密钥由终端用户设备(电脑、手机或安全密钥)提供,用于用户身份验证。

由手机或电脑操作系统管理的通行密钥通过云服务在用户设备之间自动同步。云服务还存储FIDO凭据的加密副本。在设计上,通行密钥也可以只在一个设备上使用,而且不能从该设备复制。此类通行密钥有时被称为“单设备通行密钥”。例如,物理安全密钥可以包含多个单设备通行密钥。

“通行密钥”是一个普通名词,就像你说“密码”一样。除句首外,应使用小写。“通行密钥”(复数形式为“passkeys”)是一个跨平台通用术语,而不是与任何特定平台绑定的功能。

在需要区分的情况下,通过云服务在用户设备之间同步的通行密钥一般称为“同步密钥”,而从未离开过单一设备的通行密钥(包括UAF应用程序上的)称为“设备绑定密钥”。

通行密钥有哪些用例?

通行密钥的主要用途是取代密码作为账户验证的第一/主要因素。

例如,用户可以使用手机上的通行密钥(而不是密码)登录网络服务。由于基于手机的通行密钥可以在用户的所有设备上同步,因此升级到新手机的过程可以实现无缝过渡。

用户如何体验通行密钥?

当用户被要求登录应用程序或网站时,用户会使用与解锁其设备(手机、电脑或安全钥匙)时相同的生物特征、PIN码或设备密码来批准登录。应用程序或网站可以使用这种机制代替传统的用户名和密码。

用户的生物识别信息安全吗?

是的。用户设备(手机、电脑、安全钥匙)目前进行的本地生物识别处理没有任何变化。生物识别信息和处理将继续留在设备上,不会发送到任何远程服务器上,服务器只看到生物识别检查成功的保证。

为什么通行密钥比密码+第二因素更好?

多年来,由于密码重复使用和数据库漏洞的普遍存在,密码一直是网络钓鱼攻击和凭证填充攻击的目标。

由于密码这一主要因素在多个方面存在根本性缺陷,因此业界普遍采用了分层附加第二因素的方法。但不幸的是,最常用的第二因素形式,如一次性密码(OTP)和电话审批,既不方便又不安全。它们可能被网络钓鱼,而且如今正在大规模地被网络钓鱼。

由于通行密钥是FIDO凭证,因此我们现在有了一个主要因素,它单独使用比“密码+OTP”或“密码+电话审批”的组合更安全。

通行密钥离开设备并同步到其他设备会很不安全吗?

通行密钥同步是端到端加密的,同步提供方拥有强大的账户安全保护。

此外,同步对于FIDO实现其使命至关重要,即通过在尽可能多的地方取代密码,使登录变得更简单、更安全。

这是因为,取代密码意味着在三个方面与密码“竞争”:

  • 速度:应比创建或使用密码更快。
  • 方便性:至少应与使用密码同样方便,甚至更方便。
  • 安全性:应防网络钓鱼,并保证每个应用程序/网站/服务的唯一性。

速度
创建通行密钥后,用户无需遵守密码的复杂要求。注册只需进行生物识别认证或输入PIN码,随后使用通行密钥登录也只需进行生物识别认证或输入PIN码,两者都比输入密码更快。

便利性
密码替代品的可用性必须与密码的便利性相竞争,而密码的主要可用性优势之一就是可以在任何设备上使用。

同步意味着用户的所有设备都可以使用同一个同步提供方提供的通行密钥。与密码一样,从其他设备访问网站也不需要经过凭证注册/创建流程–通过对FIDO 联盟的客户端到验证器协议(CTAP)的增强支持跨设备登录,该协议使用蓝牙低功耗(BLE)来验证物理距离。

如果加密密钥绑定在用户的计算机或移动设备上,那么每次用户更换新设备时,RP就必须重新使用其他身份验证方法(通常是基于知识的凭证,如密码)。在实际操作中,这往往意味着新设备的首次登录既不方便又容易被钓鱼。

通行密钥可以解决这个问题,因为在用户需要的时候,通行密钥就会出现在用户的设备上–从该设备第一次登录网站开始。最后但并非最不重要的一点是,用户经常忘记密码,也没有设置备份电子邮件和电话号码。有了通行密钥,用户只要带着设备就能登录,没有什么会被忘记的。由于通行密钥可以备份,因此可以更好地防止丢失。

安全性
通行密钥允许依赖方(它们经常面临网络钓鱼、凭证填充、密码数据库泄露等威胁)用FIDO凭证取代密码。FIDO为依赖方提供基于非对称加密技术的挑战-响应认证协议。这意味着可以防止网络钓鱼,并消除服务器上的敏感机密,从而在安全性方面向前迈出了一大步。

防网络钓鱼是FIDO身份验证的一个核心设计目标。无论加密密钥是否与硬件绑定,都能在登录时实现这一目标。此外,由于没有密码可供窃取,密码数据库的漏洞(可能成为黑客的目标)不再构成威胁。

在线服务,又称“依赖方(RP)”,如何使用通行密钥进行身份验证? 

依赖方将使用内置WebAuthn(用于网站)和平台FIDO API(用于应用程序)来使用通行密钥登录。通行密钥将内置支持主要的移动和桌面操作系统及浏览器。

各种操作系统平台的通行密钥可用性如何?

现在和不久的将来,内置通行密钥就会自动同步到用户的所有设备上:

  • 苹果公司宣布于2022年9月在iOS 16中提供支持,并于2022年10月在iPadOS 16和macOS Ventura中提供支持。
  • 谷歌宣布从2022年10月起在安卓系统中提供支持,2023年起在ChromeOS中提供支持。
  • 微软宣布在Windows Insiders Builds中提供支持,在2023年晚些时候和2024年全年提供更广泛的通行密钥支持。

大多数平台已经支持使用附近设备(如手机或安全密钥)的通行密钥登录。其中包括:

  • Windows上的Microsoft Edge和Google Chrome浏览器
  • MacOS上的Edge、Safari和Google Chrome浏览器
  • ChromeOS

另请参阅下两个问题,了解更多信息。

通行密钥使用相同的WebAuthn API进行访问,该API自2018年起已在所有平台和浏览器上使用。通行密钥的跨设备同步由操作系统透明管理。

通行密钥如何在用户的设备上使用?

设备操作系统平台正在实施一项功能,将设备(如手机或笔记本电脑)上的通行密钥同步到与用户平台账户(如iOS/macOS的Apple ID、Android和ChromeOS的Google账户、Windows的Microsoft账户)绑定的设备云。通行密钥的同步是端到端加密的。

当用户在自己的任何设备上创建通行密钥时,该密钥会同步到用户运行同一操作系统平台的所有其他设备上,这些设备也会登录到同一用户的平台账户中。因此,在一个设备上创建的通行密钥可以在所有设备上使用。

值得注意的是,如果用户获得了使用相同平台操作系统的新设备,并用自己的平台账户进行了设置,那么用户的通行密钥就会同步,并可在新设备上登录。

如果设备上没有RP的通行密钥,用户如何登录? 

举个例子最容易理解:假设用户有一部安卓手机,并且已经有了RP的通行密钥。现在,他们想在一台从未登录过的Windows电脑上登录RP网站。

用户访问Windows计算机上的RP网站。然后,他们会在RP的登录网页上看到一个“登录”按钮,并按下该按钮。用户现在可以选择使用其他设备登录RP。

当其他设备(比如手机)靠近Windows电脑(在BLE范围内)时,用户就会看到一个来自Android操作系统的弹出窗口。弹出窗口会询问(实质上)“我看到您正试图在附近的这台电脑上登录RP,以下是我拥有的账户”。用户选择一个账户后,Android操作系统会询问 “请执行解锁操作,以批准使用此账户登录计算机”。用户完成解锁后,就可以登录网站。

另外,用户也可以使用已在RP上注册的安全密钥设备,流程非常相似。在这种情况下,用户将访问Windows计算机上的RP网站。他们会在登录网页上看到一个“登录”按钮,然后按下该按钮。当RP要求进行身份验证时,用户可以插入其安全密钥设备,通过生物识别或PIN解锁安全密钥,然后登录网站。

无论用户的手机运行的是何种操作系统,也无论用户登录的目标设备(如电脑、平板电脑、电视等)使用的是何种操作系统和浏览器,也无论用户使用的是何种型号的FIDO兼容安全密钥,上述示例中描述的流程都能正常工作。

所述流程现在可用于Chrome操作系统、Windows、Mac和Linux上的Google Chrome浏览器和Microsoft Edge。

用户使用蓝牙在附近的设备上进行FIDO登录是否安全?

FIDO跨设备身份验证流程利用CTAP 2.2,使用蓝牙低功耗(BLE)来验证物理距离,但不依赖蓝牙安全属性来保证登录的实际安全性。CTAP传输被命名为“混合”,它在标准蓝牙安全特性的基础上使用了额外一层标准加密技术来保护数据。

通行密钥属于多因素身份验证吗?

通行密钥保存在用户的设备上(用户“所有”的东西),如果RP要求用户验证,则用户只能通过生物特征或PIN码(用户“所是”或“所知”的东西)来使用通行密钥。因此,使用通行密钥进行身份验证体现了多因素安全的核心原则。

依赖方(RP)可能会担心,通过平台供应商账户的单一因素(如密码),攻击者可以获得通行密钥。但在实践中,情况通常并非如此:平台供应商在验证用户身份并将通行密钥还原到用户设备时,会考虑用户密码之外的多种信号,其中有些信号用户可见,有些则不可见。

需要注意的是,一些监管制度仍有待发展,以承认通行密钥是正式列出的多因素形式之一。这是FIDO联盟积极参与的一个领域。

用户如何切换到新的移动平台作为登录设备(例如,从Android切换到iOS,反之亦然)? 

如果用户仍持有旧设备,则可以使用旧设备(如安卓设备)上的通行密钥登录用户在新设备(如iOS设备)上的账户。登录后,用户可在新平台账户中创建通行密钥。

如果用户拥有FIDO安全密钥,就可以用它在新设备上安全地进行身份验证。

如果用户没有旧设备或安全密钥,那么可将从新设备(可能来自不同供应商)登录的情况视为正常的账户恢复情况,并采取适当措施让用户登录。

FIDO安全密钥能否支持通行密钥?

是的,FIDO安全密钥目前支持单设备通行密钥,自2019年以来一直如此,当时FIDO2增加了对通过可发现凭据和用户验证进行无密码登录的支持。所有客户端平台和浏览器都已支持使用安全密钥。安全密钥供应商将来可能会选择支持通行密钥同步。

网络服务可以利用通行密钥来支持一系列用例。例如,如果用户换了新电脑,就可以就近(如插入USB或使用NFC)向电脑出示安全密钥,然后登录自己的在线账户。

由于所有通行密钥都是FIDO凭证,因此支持FIDO的网络服务将能够支持所有通行密钥的实现。

有特殊合规需求的特定环境可能需要保证只有一份加密密钥可用。FIDO安全密钥上的通行密钥是此类使用案例的最佳解决方案。

此外,如果用户丢失了所有其他移动设备和其他已同步通行密钥的设备,这种FIDO安全密钥可以作为恢复凭证。