通行密钥是一种更安全、更易用的密码替代方案。用户可以使用设备的内置解锁机制(例如图案、PIN 码、密码或生物识别信息,如指纹或人脸识别)登录网站和应用。Credential Manager API 基于 Web Authentication 标准构建,可简化通行密钥身份验证流程的集成。
通行密钥的优势
与其他身份验证机制相比,通行密钥具有诸多优势。
- 改进的登录体验:用户可以使用指纹或人脸识别等方法进行身份验证,而无需输入密码,从而获得更顺畅、更快速的登录体验。
- 提高安全性:通行密钥使用公钥加密技术,因此服务提供商的数据泄露不会导致账号被盗用。通行密钥基于不受网络钓鱼攻击影响的行业标准 API 和协议。
- 跨设备和平台的统一体验:用户可以在不同设备之间同步通行密钥,因此无论使用哪种设备或平台(包括 Windows、iOS 和 Linux),都能享受简化的身份验证流程。
- 在新设备上顺畅地进行身份验证:通行密钥支持恢复凭据,以便用户在新设备上顺畅地登录。
- 减少登录时的摩擦:通行密钥不需要用户记住密码,从而减少了忘记密码带来的摩擦。
如需查看说明这些优势的示例,请参阅采用通行密钥的应用的案例研究。
通行密钥在 Credential Manager 中的运作方式
在信赖方客户端应用和信赖方应用服务器中使用 Credential Manager API,以创建基于通行密钥的身份验证解决方案。
创建通行密钥的步骤可总结如下:
- 您的客户端应用会从应用服务器请求创建凭据所需的选项。
- 您的客户端应用使用这些选项向 Credential Manager API 发送请求,以生成公钥/私钥对。
- 公钥存储在应用服务器上,私钥安全地存储在用户设备上的凭据提供程序(例如 Google 密码管理工具)中。
使用通行密钥登录的步骤如下:
- 您的客户端应用从应用服务器请求凭据请求选项,应用服务器会在其响应中发送质询。应用服务器会安全地存储此质询,以供日后验证。
- 用户同意使用通行密钥(通过设备屏幕解锁操作表示同意)后,凭据提供程序会使用存储的私钥对质询进行签名,从而创建已签名的断言。
将已签名的断言发送到应用服务器,并执行以下检查:
- 如果验证与存储的验证相符。
- 如果可以使用公钥验证断言中的签名。
如果应用服务器成功验证了断言,则用户会登录。
Android 版本兼容性
Credential Manager 的通行密钥实现适用于搭载 Android 9(API 级别 28)及更高版本的设备。
跨平台支持
通行密钥与多种操作系统兼容,包括 Android、Microsoft Windows、macOS 和 iOS。它们还适用于各种热门浏览器,例如 Chrome、Microsoft Edge 和 Safari。
如需查看 Chrome 和 Android 上的支持状态,请参阅支持的环境。如需了解如何向网站添加通行密钥,请参阅网页上的通行密钥。
支持各种设备类型
通行密钥可在其他 Google 开发的设备规格上使用,包括 Android、Wear OS 和 Android XR。如需了解详情,请参阅设备规格。