0

我已经使用浏览器在我的示例应用程序中注册了一个 yubikey 用户,使用navigator.createfido2 和 yubikey。现在我想在不使用浏览器的情况下使用 Python fido2 进行身份验证。

我正在尝试使用python-fido2。给定公钥、rp 详细信息和来自服务器的质询,我如何在 yubikey 中进行身份验证?

4

1 回答 1

1

根据您的 WebAuthn 服务器的实现,通常有两个身份验证端点,例如 1) startAuthentication 和 2) finishAuthentication。

startAuthentication 端点通常会返回要传递给身份验证器的 getAssertion 方法的参数,例如 rpId、质询、允许列表等...)

然后将 getAssertion 方法的结果传递给 finishAuthentication 端点。

credential.py中的第 106 行演示了如何获取断言:

assertions, client_data = client.get_assertion(rp["id"], challenge, allow_list, pin=pin)

get_assertion() 方法返回断言和客户端数据。您的应用程序必须以 WebAuthn 服务器所需的任何格式将此数据传递到您的 finishAuthentication 端点。

于 2019-10-21T21:17:07.300 回答