当前位置: 首页 > 知识库问答 >
问题:

关于FIDO2 webauthn和U2F的几个公开问题

欧阳洲
2023-03-14

>

  • 我在多个地方读到,由于U2F没有用户的概念,所以它可以用作登录的因素之一(在MFA中),但对于无密码来说并不理想,而webauthn有用户的概念,这可以帮助使用无密码。我的问题是webauthn为允许这样做而增加的额外内容是什么?是的,我们在创建凭据时传递用户信息,但最终返回的是一个凭据id(它似乎非常类似于keyhandle)并用于关联用户(在服务器上)。据我所知,webauthn def的优点是可以使用不同的身份验证器(不仅仅是U2F密钥),除此之外,webauthn还添加了什么使无密码变得更容易。

    CTAP描述浏览器和操作系统如何通过USB、NFC或BLE通信介质与兼容的身份验证设备建立通信。我们可以说CTAP是一种应用层协议吗(像FTP一样?)

    当我在我的android手机上使用指纹功能验证使用webauthn时,浏览器与OS通信(反过来弹出验证器)是否使用CTAP2?ufc、nfc、ble、internal从哪来的?

  • 共有1个答案

    谭敏学
    2023-03-14

    规范在摘要中将其具体称为应用层协议:

    https://fidoalliance.org/specs/fido-v2.0-ps-20190130/fido-client-to-authenticator-protocol-v2.0-ps-20190130.html

    从浏览器到浏览器和OS到OS的实现会有所不同。Windows10现在提供了一个本机API,它位于Windows Hello的顶部,并且标准化了与身份验证器设备的交互。在此之前,Windows上的浏览器有自己的实现和自己的UI。给定的CTAP2实现将包括对规范中定义的1个或多个传输的支持,每个传输具有特定于该传输需求的绑定。该规范值得一读。

     类似资料:
    • 我目前正在尝试用cubey地形制作一个基本游戏,类似于Minecraft classic。我的第一个问题: 如何在VBO中存储多维数据集列表,然后在更改该数据时重新生成该列表?我当前呈现的立方体如下所示: 我知道我需要使用和来修改VBO,但是如何存储多维数据集并在需要时删除它们?我应该使用ArrayList吗?另外,有人告诉我,我渲染立方体的方式是错误的,因为每个人都说我只渲染一个具有新坐标的立方

    • 如果我想为spring quartz使用cron触发器,quartz是使用java系统时间还是操作系统时间执行作业? 我计划有一个属性文件来保存我所有的cron触发器。如果有人去更改cron触发器以执行一个任务,那么quartz会自动接收文件中的更改吗?或者,如果这不是默认行为,我有没有办法告诉quartz如何执行此操作。 我最近一直在读spring批处理管理控制台。听起来像是一个很好的重新安排作

    • 下面引用的文章是一篇名为《如何编写Java卡小程序:开发人员指南》的文章的一部分,作者是陈志群。 我在这里看到了 一旦选择了一个小应用程序,JCRE就会将所有后续的APDU命令(包括SELECT命令)转发给小应用程序的进程()方法。在进程()方法中,小应用程序解释每个APDU命令,并执行命令指定的任务。对于每个命令APDU,小应用程序通过发回响应APDU来响应CAD,该响应APDU将处理命令APD

    • a)是否有一种方法来确保AltBeacon广告是唯一的。从某种意义上说,其他人不会错误地在他们的信标中使用相同的UUID,主要和次要ID。因为如果发生这种情况,我们的应用程序有可能识别另一家公司的信标并出现故障,反之亦然。 所以,我想知道目前在AltBeacon规范和库本身中是否有任何解决方案(变通方法)?还是他们在排队?我不确定,这是否是可以在库级别本身完成的事情,或者Android级别或者可能

    • 为了理解代码在不同操作系统中运行时挂起的原因,我不得不调试不同的eclipse插件。我在一些Java文件中看到了以下代码: 基于Java中的本机方法是什么以及应该在哪里使用它们?,我知道本机方法用于执行用不同编程语言编写的函数。但我有两个问题: 当使用输入调用loadLibrary时,实际会发生什么情况?loadLibrary在哪里查找SWT库,如何更改它?在Linux中,获取库的等效命令是什么(

    • 做作业的时候,算法的实现洪流填满了。我正在为这个指南编写一个程序:http://en.wikipedia.org/wiki/flood_fill。我有一些问题: 指定函数中的参数替换任何字符的颜色是否正常,我不知道这些坐标最初是什么颜色? 算法正确吗?例如,我在维基百科中编写了它,但我的程序的结果如下: 我的代码: