问题标签 [fido]

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 投票
0 回答
18 浏览

testing - 测试自动化生物识别流程

我必须自动化一个包含 FIDO2 安全设备支持的身份验证流程的测试。我们使用 cypress 框架进行 e2e 测试自动化,目前正在寻找一种解决方案来通过 cypress 测试框架来实现这一点。

0 投票
3 回答
250 浏览

authentication - 多个 Android 应用程序(同一设备)可以使用 FIDO 2 协议共享相同的密钥对以进行无密码身份验证吗?

问题陈述:

我想使用 FIDO2 协议(通过提供 SDK)解决 Android 应用程序上的用户身份验证,而无需为同一设备上的不同应用程序执行多个注册仪式。例如,如果用户已经在 Android 应用 A 中注册(生成公钥-私钥对),则他/她不需要在 Android 应用 B 中注册(假设 App A 和 App B 在同一设备上) .

可能的解决方案是什么(据我所知):-

  1. 与应用程序 A 和 B 集成的通用 SDK,以提供身份验证。
  2. 单独的身份验证应用程序。

我想继续使用解决方案 1,因为解决方案 2 可能不可取,因为它需要额外的步骤来下载额外的应用程序(身份验证应用程序)。

我现在能实现什么:- 我们能够通过为应用 A 和应用 B 维护单独的私钥来对应用 A 和应用 B 的用户进行无密码身份验证。

在此处输入图像描述 在上图中:-

  1. 用户 XYZ 登录到应用程序 A 并在此设备上向应用程序 A 注册自己。
  2. 在注册步骤中,认证者会生成一个公私密钥对。
  3. PrivateKey_1(PrivateKey) 被创建并存储在 Keystore 中,PublicKey_1(PublicKey) 被创建并与服务器共享。
  4. 现在假设用户 XYZ 想要登录应用程序 B。用户 XYZ 重复相同的过程以将他注册到应用程序 B。
  5. 在这个过程中,PrivateKey_2 被创建并存储在 Keystore 中,PublicKey_2 被创建并与服务器共享。
  6. 因此,在上述场景中,用户 XYZ 能够分别使用私钥 PrivateKey_1 和 PrivateKey_2 在 App A 和 App B 上进行身份验证。

我想知道以下场景的可行性? 我想对应用程序 A 和应用程序 B 的用户 XYZ 进行无密码身份验证,其中应用程序(应用程序 A 和应用程序 B)可以使用相同的凭据(公钥和私钥对)并且不需要执行重复的注册仪式(创建公共和私钥)用于同一设备上的同一用户,用于共享公共 SDK(应用 A 和应用 B)的多个应用。

在此处输入图像描述 在上图中:-

  1. 用户 XYZ 登录到应用程序 A 并在此设备上向应用程序 A 注册自己。
  2. 在这个过程中,PrivateKey_1 被创建并存储在 Keystore 中,PublicKey_1 被创建并与服务器共享。
  3. 用户 XYZ 想要登录应用程序 B。
  4. 应用 B 应该能够使用先前生成的凭据(由应用 A)验证用户 XYZ。

这甚至可能吗?我的理解有什么差距吗?

任何建议和帮助都是非常可观的:) :)

0 投票
1 回答
18 浏览

playwright - 剧作家 - 绕过 Fido2 u2f

我正在使用 Playwright 来自动化我正在使用 Fido2 u2f 的网站上的内容。我无法在无头模式下运行它,因为我需要准备好在提示时触摸我的 u2f。这很烦人。

有没有办法在我不必点击的情况下接受 u2f?通过代码。

谢谢你。