# 1. AuthenticatorAttestationResponse/AssertionResponse/CBOR/COSE 在协议层的工程价值 A 两者返回的数据结构完全相同,仅名字不同 B 前者用于注册(含 attestationObject),后者用于断言(含 signature、authenticatorData) ✓ 正确答案 C 两者都是 JSON 格式,可直接解析 D 断言响应不包含 clientDataJSON
# 2. WebAuthn(navigator.credentials.create/get) A create 用于登录,get 用于注册 B get 返回的凭证含 attestationObject C 两者都不需要 challenge D get 用于登录,create 用于注册,两者都需安全上下文 ✓ 正确答案
# 3. 平台认证器(指纹、Face ID、Windows Hello) A 平台认证器是外接 USB 安全密钥 B 平台认证器无法做生物识别 C 平台认证器必然跨设备同步 D 平台认证器内置于设备(Windows Hello、Face ID 等),通过安全硬件存储私钥 ✓ 正确答案
# 4. WebAuthn 标准与 FIDO2 的关系 A 两者是同一标准的两个别名 B WebAuthn 是 FIDO2 中面向 Web 前端的标准,FIDO2 还包含 CTAP ✓ 正确答案 C WebAuthn 与 FIDO2 完全无关 D FIDO2 是 W3C 标准,WebAuthn 是 FIDO Alliance 标准
# 5. WebAuthn 的认证流程,注册与断言的挑战-响应? A 注册与断言都需要服务端生成随机 challenge 并由认证器签名,服务端验证 ✓ 正确答案 B challenge 由前端本地生成即可 C 断言不需要 challenge D challenge 可被重复使用以提升性能
# 6. navigator.credentials.create() 的 authenticatorSelection(residentKey、userVerification、authenticatorAttachment)在注册流程的配置与用户体验影响? A userVerification 只对登录有效,注册时无用 B residentKey 设为 required 会强制创建可发现凭证,但可能排除不支持该能力的认证器 ✓ 正确答案 C authenticatorAttachment 只能设为 cross-platform D 三个字段都设为 required 就能最大化兼容性
# 7. CTAP 2.2 在现代前端项目的工程价值 A CTAP 2.2 是浏览器与认证器之间的协议,新增 largeBlob、hmac-secret 等能力,前端通过 WebAuthn extensions 间接使用 ✓ 正确答案 B CTAP 2.2 与 WebAuthn 完全无关 C 前端直接调用 CTAP 2.2 API D CTAP 2.2 只支持密码认证
# 8. FIDO2 的 Attestation 在凭证验证的工程价值 A Attestation 是登录时必选项,用于验证密码 B Attestation 与 CBOR 无关 C Attestation 只能在服务器端生成 D Attestation 用于证明凭证由受信任认证器生成,但消费级场景常选择忽略以降低信任库维护成本与隐私风险 ✓ 正确答案
# 9. Passkeys 跨设备同步(iCloud Keychain、Google Password Manager) A Passkey 同步不需加密 B Passkey 只能在一台设备上使用,无法同步 C 同步由平台负责(iCloud Keychain、Google Password Manager),私钥通常端到端加密并绑定账户 ✓ 正确答案 D 同步 passkey 与硬件安全密钥安全性完全相同
# 10. largeBlob 与 transactionPayments extensions 的工程价值 A 两者都用于密码同步 B 两者都已被浏览器强制禁用 C largeBlob 用于存储大块数据,transactionPayments 用于认证器上确认交易上下文 ✓ 正确答案 D transactionPayments 用于存储密码
# 11. Backup Eligibility 与 State 在多设备的工程价值 A 两者都表示凭证的密码强度 B 两者只在服务器端生成 C 两者表示凭证是否具备被同步备份的能力以及当前是否已被备份 ✓ 正确答案 D 两者与多设备无关
# 12. Authenticator Attachment(platform/cross-platform)的工程价值 A authenticatorAttachment 只有 platform 一种取值 B authenticatorAttachment 在登录后才能确定 C 该字段与用户体验无关 D platform 指设备内建认证器更便捷,cross-platform 指跨设备硬件密钥;前端可用于 UI 分支与安全策略 ✓ 正确答案
# 13. CTAP 2.2 CDA 跨设备认证的现状 A CDA 已完全被所有浏览器统一支持 B CDA 只能在单台设备内完成 C CDA 与 WebAuthn 无关 D CDA 通过另一台设备(如手机)完成认证,常经 Hybrid/QR 传输,但浏览器支持仍不一致 ✓ 正确答案
# 14. Passkey 与平台认证器,跨设备同步的实现? A 平台认证器私钥永远绑定单设备,无法同步 B Passkey 与平台认证器无关 C 同步不需要任何加密 D 同步依赖平台账户体系与端到端加密,私钥可随账号在设备间恢复 ✓ 正确答案
# 15. WebAuthn 的安全属性,防钓鱼与防重放? A 防钓鱼依赖用户识别假页面 B 防重放依赖固定密码 C 两者都没有机制保障 D 防钓鱼靠 origin/rpId 绑定,防重放靠一次性随机 challenge 与签名计数器 ✓ 正确答案
# 16. WebAuthn 与 MFA,作为第二因素的集成? A WebAuthn 只能作为唯一认证方式 B 作为第二因素时无需 challenge C 可作为第二因素,在密码等验证后调用 credentials.get 做断言,并需设计降级路径 ✓ 正确答案 D 第二因素不支持 allowCredentials
# 17. WebAuthn 的 userHandle(user.id)与多账号,同一 RP 下多凭证的区分、user.displayName 更新与账号迁移的边界? A userHandle 只用于展示,不影响凭证 B userHandle 用于区分同一 RP 下不同账号,凭证严格绑定 RP 与 userHandle,账号迁移需重新注册或保持 userHandle 稳定 ✓ 正确答案 C displayName 变更会使凭证失效 D 同一 RP 下每个凭证都用同一个 userHandle