FIDO U2F 设备可以用于对称加密吗?

信息安全 加密 密码管理 u2f 菲多
2021-08-31 10:22:31

据我了解,U2F主要用于身份验证。它使用挑战-响应方案来检查用于登录的设备是否与基于共享密钥的注册期间使用的设备相同。所以这个过程的结果是一个是/否的答案。

有没有办法使用 U2F 设备以对称方式加密数据,例如本地密码管理器?

2个回答

不,U2F 指定的密钥不能执行对称加密操作。它们仅用于为质询/响应过程提供公钥、证明证书和签名数据,并使用其内部私钥。可以在https://fidoalliance.org/specifications/overview/阅读规范

不,不可能从 U2F 设备中获得一些恒定的值/字节,这些值/字节对于特定设备是唯一的,以后可以用作加密密钥,主要是因为 FIDO 隐私问题:“识别设备将揭示一个唯一标识符设备跨越不相关的来源,侵犯了用户的隐私。” (c) FIDO 规范。

另一方面,这就是为什么 U2F 签名功能也不能用于获取一些以后可以用作加密密钥的常量值的原因:

  1. U2F 设备签署由客户端和设备创建的摘要(U2F 将签名计数器添加到摘要)。因此,即使客户端两次提供相同的数据,每个新签名也将是唯一的。
  2. 当 U2F 设备生成一个新的 KeyHandle(ECDSA 对)时,它使用自己的随机值。因此,即使您为第二个请求提供相同的数据,它也永远不会生成相同的 KeyHandle。

根据 FIDO 理念,U2F 密钥主要用于确保 Authentication Service 和远程客户端之间的信任。当您想将 U2F 密钥用于其他身份验证/安全场景时,请注意可以应用的十几种攻击。