FIDO Alliance 发布了三套规范,以实现更简单、更强大的用户身份验证:FIDO Universal Second Factor (FIDO U2F)、FIDO Universal Authentication Framework (FIDO UAF) 和 Client toAuthenticator Protocols (CTAP)。 CTAP是对 W3C的Web Authentication(WebAuthn)规范的补充;它们一起被称为FIDO2。
FIDO标准使用标准公钥加密技术,通过称为通行密钥的加密密钥对提供防网络钓鱼身份验证。 FIDO从设计之初就旨在保护用户隐私和防止网络钓鱼。 每个通行密钥都是唯一的,并与在线服务域绑定。 协议不提供可被不同在线服务用于跨服务协作和跟踪用户的信息。 如果使用,生物识别信息永远不会离开用户的设备。
请在规范下载页面阅读技术规范。
除了满足技术要求外,FIDO Alliance还制定了进一步的安全要求,需要实施这些要求以增强每个设备的安全保障。这些要求在 Certified Authenticator Levels 页面上的 Authenticator 认证 计划中进行了介绍。
FIDO2
FIDO2 由 W3C Web 身份验证规范和来自 FIDO Alliance的相应客户端到Authenticator协议 (CTAP) 组成。 FIDO2 支持使用嵌入式(或绑定)身份验证器(如生物识别或 PIN)或外部(或漫游)身份验证器(如 FIDO 安全密钥、移动设备、可穿戴设备等)的 无密码、第二因素和多因素用户体验。

FIDO2的规范是:
W3C WebAuthn
WebAuthn 定义了一个标准Web API,该API被内置到浏览器和平台中,以实现对FIDO身份验证的支持。
CTAP2
CTAP2允许在支持FIDO2的浏览器和操作系统上通过以下方式使用外部验证器(FIDO安全密钥、移动设备)进行验证 USB、NFC或BLE 实现无密码、第二因素或多因素身份验证体验。
CTAP1
CTAP1是FIDO U2F的新名称,它允许在支持FIDO2的浏览器和操作系统上通过以下方式使用现有的FIDO U2F设备(如FIDO安全密钥)进行身份验证 USB、NFC或BLE 实现第二因素体验。
FIDO UAF
FIDO UAF支持无密码体验。 使用FIDO UAF时,用户携带安装了FIDO UAF堆栈的设备。 然后,他们可以选择一种本地验证机制,如刷手指、看摄像头、对着麦克风说话、输入PIN码等,将自己的设备注册到在线服务中。 FIDO UAF协议允许服务选择向用户展示哪些机制。

注册后,用户只需在需要验证服务时重复本地验证操作即可。 用户从该设备进行身份验证时,不再需要输入密码。 FIDO UAF还允许结合多种身份验证机制(如指纹和PIN码)的体验。
FIDO U2F
FIDO U2F支持第二因素体验。 FIDO U2F允许在线服务为用户登录添加强大的第二因素,从而增强现有密码基础设施的安全性。 用户使用之前的用户名和密码登录。 该服务还可以随时提示用户出示第二因素设备(如FIDO安全密钥)。 强大的第二因素可使服务简化密码(如4位数的PIN码),同时不影响安全性。

在注册和身份验证的过程中,用户只需按下USB设备上的按钮或点击NFC或BLE就可以显示第二个因素。 用户可以利用网页浏览器的内置支持,在所有支持该协议的在线服务中使用其 FIDO U2F设备。
随着FIDO2的发布,U2F被重新命名为CTAP1。