问题标签 [webauthn]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
851 浏览

yubico - 如何在 Node.js 中解析 attestationObject

我已经在 Node.js 中模拟了来自前端的响应,如下所示。

attestationObject 参数是 Yubikey 签署挑战并将其转换为 base64 以传输到节点服务器后返回的参数。

我得到的是一个 ArrayBuffer { byteLength: 226 } 但我不知道如何处理它。

我知道我需要检查已签名的域名,并且我需要使用用户凭据存储一些内容,以便他们可以再次登录。

我知道有很多选择,我只想获得最低限度的无密码注册和登录工作。

0 投票
1 回答
2824 浏览

javascript - navigator.credentials 在本地服务器上为空

这是我的问题:我尝试使用凭据管理 API 访问我的 webapp 上的身份验证器: navigator.credentials.create()并且navigator.credentials.get()

当我在 localhost 上执行我的代码时我没有问题,并且 webapp 正在询问我的安全密钥。但是,当我在本地服务器上使用完全相同的代码时,navigator.credentials尽管我使用的是相同的浏览器,但它是未定义的。

未捕获的类型错误:无法读取未定义的属性“创建”

(window.PasswordCredential || window.FederatedCredential)返回false,仅在我的服务器 192.168.xx 上,但我不知道为什么。我在 Chrome 74 上。

我该如何解决这个问题?
谢谢您的帮助。

0 投票
2 回答
1011 浏览

android - BLE 未在 Chrome 浏览器中检测到

我正在尝试通过蓝牙将我的 Android 应用程序与网络连接。但是 Chrome 浏览器没有检测到我的蓝牙智能手机。我正在使用 Google-FIDO2-Android API。

我正在使用 Chrome 浏览器 74.0.3729.157(64 位)、Nexus Phone、MacBook Pro(Mojave-10.14.5)。

我该如何继续?

0 投票
1 回答
901 浏览

android - 如何让 WebAuthn 与漫游验证器一起工作?

W3C 最近批准了Web Authentication:一种用于访问 Public Key Credentials 的 API,通常称为WebAuthn

在第 6.2.1 节中,建议指出,“例如,集成到移动设备中的平台身份验证器可以通过蓝牙将其自身用作漫游身份验证器。在这种情况下,客户端将仅将其识别为漫游身份验证器,而不是作为平台验证器。”

是否有任何代码示例可用于在移动设备上创建 WebAuthn 漫游身份验证器并通过低功耗蓝牙使其可用?

这篇文章《终极帐户安全现在就在您的口袋里》承诺,您的 Android 手机可以用作漫游验证器来登录您的 Google 帐户(只是您的 Google 帐户;一个适度但良好的开始)。

我能够将我的新 Pixel 3A 手机作为安全密钥关联到我的 Google 帐户:

两步验证

当我进行身份验证时,我会在 Chrome 浏览器的 Web 身份验证页面上看到以下屏幕:

检查你的手机

但是,我的手机没有任何反应。该过程只是超时。

有没有人让这个基本的例子工作?

是的,我的工作站(运行最新版本的 Windows 10)和我的 Pixel 3A(运行 Android Pie)都打开了蓝牙;我可以配对设备。

0 投票
2 回答
2282 浏览

android - Android WebView 支持 WebAuthn?

我不是 android 开发人员,并且坚持使用 android 的东西。我希望这里有人可以帮助我。

我正在我的网站上实现 WebAuthn/FIDO2,它与浏览器完美配合。但是当我在我的 android 应用程序(android.webkit.webview)中打开我的网站时,它给了我错误

我在我的网站中使用的代码示例类似于:

在我的应用程序中打开https://webauthn.io/显示“当前不支持此浏览器”

我们不能以某种方式更新 webView 吗?

我正在使用 sdk 版本(API 26,Android 8.0 oreo)

有什么解决方法吗?

提前致谢!

0 投票
1 回答
132 浏览

webauthn - 为什么用 webauthn 代替挑战?

对于服务器生成的和客户端生成的挑战,以下字符串是不同的:

  • +->-
  • /->_
  • =-> (空白处)

为什么我们需要做替换来解决这个问题?

源代码供参考。

0 投票
1 回答
148 浏览

javascript - Webauthn API 和外部设备?

我想基于WebAuthnAPI在我的混合 Web 应用程序上实现身份验证。

我现在想做的是,用户也可以在移动设备上通过指纹或 USB 登录。

这是否可以通过适配器 + USB 指纹扫描 或适配器 + USB 2FA 设备来实现

0 投票
2 回答
591 浏览

postman - 通过 REST 工具测试 WebAuthn?

是否可以通过休息工具在本地进行测试。我已经创建了后端来为注册新凭据生成挑战等,但是如果没有 WebAuthn 响应,如果我创建了正确的方法来消化来自 WebAuthn 的响应对象,我将不知所措。

0 投票
3 回答
454 浏览

android - 无法读取/写入 FIDO2 特征

我正在为 FIDO2 构建一个 Android 身份验证器。我被读/写特性卡住了。我正在使用 Mac - Chrome 75。Chrome 可以检测到我的 Android BLE 身份验证器。在检测到我的 BLE Authenticator 后,onCharacteristicReadRequest()从验证器端调用。在里面onCharacteristicReadRequest()我正在使用下面编写的代码,但之后没有来自客户端的响应。

我已经尝试过版本为 0b01000000 的 U2F。它工作正常。当我移动 FIDO2 版本 0b100000 时,我遇到了这个问题。我正在从身份验证器宣传 fido 服务和设备信息服务。这两个服务都添加了 Thread.sleep(1000) 间隔。我无法按顺序添加这两项服务。当我按顺序添加这两个服务时,我得到ArrayIndexOutofBoundException.

我不知道这两个问题是否相互关联。如果我做错了什么,请纠正我。

客户端应在预期 fidoServiceBitFieldversion 之后读取/写入特征。

0 投票
1 回答
244 浏览

android - FIDO2 - 获取身份验证器信息问题

我正在开发 Android 身份验证器。配对后,我从 webauthn 客户端获取 {-125,0,1,4} 字节数组。当我解码这个数组时

-125 (0x83) - MSG
1 (0x01) - 数据长度
4 (0x04) - AuthenticatorGetInfo

我不确定这个数组中的 0 。请让我知道这个 0 是否有任何含义。

对于这个请求,我将响应作为 CBOR 数据发送。

00a60182684649444f5f325f30665532465f563202816b686d61632d73656372657403506435323965353235383533343133663304a462726bf5627570f564706c6174f469636c69656e7450696ef505190400069f01ff

我正在使用 Fido Status 通知上述数据,如下所示。

之后,我没有收到来自 webauthn 客户端的任何请求/响应。我正在为每个 kKeepAliveMillis(500ms) 发送值为 PROCESSING(0x01) 的 KEEPALIVE(0x82) 命令。我的实施有什么问题吗?

请帮助我进行此操作。提前致谢。