为何FIDO蓝牙安全密钥失效?无配对WebAuthn/BLE连接实现疑问
问题解答
1. 谷歌Titan蓝牙密钥召回后,FIDO是否禁用蓝牙密钥?
并没有。2019年谷歌Titan蓝牙密钥召回是因为该产品自身的硬件/固件缺陷,并非FIDO标准存在问题。FIDO联盟始终将BLE(蓝牙低功耗)作为WebAuthn的官方传输方式之一,后续市面上也持续推出符合FIDO2标准的蓝牙安全密钥,这类设备可以正常用于WebAuthn的注册与认证。
2. 第三方应用实现免配对BLE与WebAuthn客户端连接是否可行?
完全可行,WebAuthn标准本身支持BLE的无配对(Just Works)连接模式,无需用户手动完成配对操作。但需要满足以下核心条件:
- 你的第三方BLE设备必须严格遵循FIDO2的CTAP2 over BLE传输规范,支持无配对的加密通道建立逻辑
- 对接的WebAuthn客户端(如Chrome、Firefox等现代浏览器,或自定义认证客户端)需支持免配对的BLE连接流程
- 应用侧需实现CTAP2协议的完整消息交互,以及符合FIDO规范的BLE服务与特征交互
实现要点参考
- 先完成FIDO CTAP2核心协议的开发,包括
makeCredential(注册)和getAssertion(认证)的消息处理 - BLE部分需使用FIDO指定的服务UUID:
0000fffd-0000-1000-8000-00805f9b34fb,以及对应的控制点、数据输入/输出特征UUID - 免配对的关键是采用BLE的LE Secure Connections Just Works模式,连接时自动生成临时加密密钥,跳过手动配对码确认步骤
- 注意平台权限限制:比如Android端需要申请蓝牙权限(
BLUETOOTH、BLUETOOTH_ADMIN)以及位置权限(用于BLE扫描)
你当前已实现手动配对的连接,只需将BLE连接流程切换为Just Works无配对模式,同时确保设备和客户端都支持该模式,即可实现免配对的注册与认证。
内容的提问来源于stack exchange,提问作者Jihwan Hwang
相关产品推荐
相关产品推荐

