通行密钥 (Passkey)
通行密钥 (Passkey) 是什么?
通行密钥 (Passkey)一种抗钓鱼的 FIDO2/WebAuthn 凭据,使用绑定设备或可同步的非对称密钥对,以加密挑战-响应取代密码。
passkey 是由认证器(智能手机、安全密钥或平台钥匙串)生成并存储,并在依赖方处注册的公钥凭据。它建立在两项标准之上:W3C 的 WebAuthn API(Level 1 于 2019 年 3 月 4 日成为推荐标准,Level 2 于 2021 年 4 月 8 日,Level 3 仍在草案阶段)以及 FIDO 联盟的 CTAP2 客户端到认证器协议——二者合称 FIDO2。登录时用户用生物识别或 PIN 解锁认证器,设备用私钥对服务器下发的一次性挑战进行签名,服务器再用此前注册的公钥验证签名。
由于私钥永不离开安全单元,且断言以加密方式绑定到依赖方的来源(rpId),passkey 能够抵御密码复用、钓鱼、重放,以及 Evilginx 等大多数中间人代理工具——攻击者域名无法匹配被签名的来源。Apple 在 2022 年 WWDC 推出面向消费者的 passkey;Google 于 2023 年将其设为默认登录方式,Microsoft 于 2024 年对消费者账户跟进。可同步的 passkey(iCloud Keychain、Google 密码管理器、1Password)可跨设备恢复,而绑定到 YubiKey 等硬件密钥的设备级 passkey 则为企业场景提供最高强度。残余风险主要集中在账户恢复回退机制以及对云同步提供商的信任。
flowchart TD
subgraph R[注册]
A[用户] -->|生物识别/PIN 解锁| B[认证器生成密钥对]
B -->|公钥 + 凭据 ID| C[依赖方存储公钥]
end
subgraph V[认证]
D[服务器发送随机挑战] --> E[认证器用私钥签名挑战<br/>并绑定到 rpId]
E -->|已签名断言| F{签名有效<br/>且来源匹配?}
F -->|是| G[授予访问]
F -->|否| H[拒绝 - 阻止钓鱼/重放]
end● 示例
- 01
在 iPhone 上使用存储在 iCloud Keychain 中的 passkey 登录 Google。
- 02
使用 YubiKey 上的企业 passkey 向 Microsoft Entra ID 进行认证。
● 常见问题
通行密钥 (Passkey) 是什么?
一种抗钓鱼的 FIDO2/WebAuthn 凭据,使用绑定设备或可同步的非对称密钥对,以加密挑战-响应取代密码。 它属于网络安全的 身份与访问 分类。
通行密钥 (Passkey) 是什么意思?
一种抗钓鱼的 FIDO2/WebAuthn 凭据,使用绑定设备或可同步的非对称密钥对,以加密挑战-响应取代密码。
如何防御 通行密钥 (Passkey)?
针对 通行密钥 (Passkey) 的防御通常结合技术控制与运营实践,详见上方完整定义。
通行密钥 (Passkey) 还有哪些其他名称?
常见的别称包括: FIDO passkey, 同步凭据。