试图将我的头包裹在 FIDO 协议套装上。
前提
- Authenticator 有一个主私钥(也称为 attestation key)
- 在注册仪式期间,验证者签署挑战和其他几个参数以及新生成的公钥,并通过 WebAuthN 协议将其发送到 FIDO 通用服务器。并且生成的私钥存储在本地的身份验证器中。
问题
- FIDO服务器如何验证authenticator生成的公钥的完整性(简单地说服务器如何验证证书链回信任根)?这是假设身份验证器和 Web 客户端之间存在中间人攻击的范围。
- 服务器是否内置了相应的认证密钥/主私钥的公钥(复制CA模型)?
- 如果是这样,所有的 fido 身份验证器在创建时是否都具有相同的主密钥(无论是软件模块还是硬件模块)?如果不是,制造商和 FIDO 服务器如何跟上正在创建和部署的大量物理身份验证器和软件模块?