userVerification 深度解析

本文档讨论了 WebAuthn 中的 userVerification,以及在通行密钥创建或身份验证期间指定 userVerification 时产生的浏览器行为。

WebAuthn 中的“用户验证”是什么?

通行密钥基于公钥加密技术构建。创建通行密钥时,系统会生成公钥/私钥对,私钥由通行密钥提供方存储,公钥则会返回给信赖方 (RP) 的服务器进行存储。服务器可以使用配对的公钥验证由同一通行密钥签名的签名,从而对用户进行身份验证。公钥凭据上的“用户存在”标志 (UP) 可证明有人在身份验证期间与设备进行了互动。

用户验证是一种可选的安全层,旨在断言在身份验证期间在场的是正确的人,而不仅仅是某个人,正如用户在场断言所断言的那样。在智能手机上,这通常通过使用屏幕锁定机制来完成,无论是生物识别信息还是 PIN 码或密码。在通行密钥注册和身份验证期间,身份验证器数据中返回的“UV”标志会报告是否执行了用户验证