使用 CTAP2 规范的移动身份验证器

Mobile Authenticator using CTAP2 specifications

我正在寻找使用 case/scenario 将智能 phone 设置为使用 CTAP2 规范的身份验证器。

我正在寻找用户将浏览器设置为与智能 phone 交互的用例,就像使用 Yubikey 或其他类似安全密钥时一样。我已经阅读了所有与之相关的文档,但不幸的是,我总是收到一篇使用 Yubikeys/其他 USB 设备作为验证器的文章。我期待在移动设备 phone 提供漫游身份验证器的情况下进行一些交互。

通过从概念上查看文档和 CTAP 规范,我知道这可以通过在 phone 和主机之间建立一些连接来完成:

建立连接后,移动身份验证器可以执行 CTAP2 协议,以便浏览器将其视为漫游身份验证器。我也期待看到使用某些支持 BLE 的设备的身份验证过程。我已经尝试在网站上使用 yubikey 安全密钥登录。但我想使用启用蓝牙的 Thetis BLE 密钥或手机本身来实现相同的流程登录机制。

任何见解都会非常有帮助。我也期待从事此特定用例的人们进行相互讨论。

首先,你需要遵循这个spec to develop your roaming authenticator. FIDO2 standard is recommended if you start the development now. There are 2 modules which may take your time to research & develop your authenticator: BLE, FIDO Crypto logic. This is the hardest work because there is no kind open source published for reference, you must be totally working with spec

其次,您可以在开发时使用这些客户端中的一个来测试您的身份验证器:

注意:现在不方便做iOS验证器。请检查此 issue 以了解原因

第三,您可以使用 FIDO Conformance Tools 来验证您的身份验证器。

最后,如果需要,您可以在 MDS 上获得认证并注册

我也在找同样的东西。对于截至 2020 年的未来读者,如果其他人正在寻找,以下资源会有所帮助。

您可以查看 https://github.com/solokeys/solo,它提供硬件和固件的开源实现。这是一个很好的起点。由于他们实施了 ctap,因此他们还使用 usb_gadget 隐藏了 linux.

的模拟

您还可以查看 https://github.com/github/SoftU2F,这是一个使用 mac 钥匙串的 MacOS u2f 软件。