仕様概要
FIDO Allianceは、シンプルで堅牢な認証のための3セットの仕様を公開しました。FIDO Universal Second Factor(FIDO U2F)、FIDO Universal Authentication Framework(FIDO UAF)、およびClient to Authenticator Protocols(デバイス間連携仕様、CTAP)です。 CTAPはW3CのWebAuthn(Web認証)仕様を補完するものです。 これらは併せてFIDO2として知られています。
全てのFIDOプロトコルは、公開鍵暗号方式に基づいており、堅牢なフィッシング耐性を有しています。(詳細な情報は、 How FIDO Worksをご覧下さい)。これらのプロトコルは、幅広いユースケースと導入シナリオを提供します。
技術仕様はこちらよりダウンロードしてご覧下さい。
FIDO2
FIDO2は、W3C Web認証仕様と、それに対応するFIDO アライアンスのClient-to-Authenticator Protocol(CTAP)で構成されています。FIDO2は、埋め込まれた(またはバインドされた)認証器(バイオメトリクスやPINなど)または外部(またはローミング)認証器(FIDOセキュリティキー、モバイルデバイス、ウェアラブルなど)を使用した、パスワードレス、2要素および多要素のユーザー体験をサポートします。
FIDO2内の仕様は次のとおりです。
W3C WebAuthn(Web認証)
Web認証は、FIDO認証のサポートを可能にするためにブラウザおよびプラットフォームに組み込まれている標準Web APIを定義しています。
CTAP2
CTAP2を使用することにより、パスワードレス、第2要素、または多要素の認証体験を実現するために、USB、NFC、またはBLEを介したFIDO2対応ブラウザおよびオペレーティングシステムでの認証に外部認証システム(FIDOセキュリティキー、モバイルデバイス)を使用できます。
CTAP1
従来FIDO U2Fと呼んでいたCTAP1を使用すると、FIDO2対応ブラウザおよびUSB、NFC、またはBLEを介したオペレーティングシステムでの認証に、既存のFIDO U2Fデバイス(FIDOセキュリティキーなど)を使用できます。
FIDO UAF
FIDO UAFはパスワードレスの認証体験をサポートしています。 FIDO UAFにより、ユーザーはFIDO UAFの仕組みがインストールされたデバイスを持ち運びます。これにより、指をスワイプしたり、カメラを見たり、マイクに向かって話したり、PINを入力したりするなどのローカル認証メカニズムを選択することで、デバイスをオンラインサービスに登録できます。FIDO UAFプロトコルにより、オンラインサービスは、どのメカニズムがユーザに提示されるのかを選択することが可能です。

一旦デバイスが登録されれば、ユーザがサービスに対して認証する必要があるときはいつでも、単にローカル認証動作を繰り返すだけで済みます。その登録されたデバイスから認証するときには、ユーザーは自身のパスワードをもう入力する必要はありません。FIDO UAFでは、指紋+ PINなどの複数の認証メカニズムを組み合わせた認証体験も可能にしています。
FIDO U2F
FIDO U2Fは2段階認証をサポートしています。FIDO U2Fにより、オンラインサービスのユーザーログインに強力な2番目の要素を追加することで、既存のパスワードインフラストラクチャのセキュリティを強化できます。ユーザーは従来と同様にユーザー名とパスワードでログインします。オンラインサービスではまた、いつでもユーザーに第2要素であるデバイス(例えばFIDOセキュリティキー)を提示するように促すことができます。強力な2番目の要素によって、オンラインサービスはセキュリティを犠牲にすることなくパスワード(4桁のPINなど)の簡略化が可能となります。

登録および認証中に、ユーザーはUSBデバイスのボタンを押すか、NFCまたはBLEをタップするだけで2要素目の要素を提示します。 ユーザーは、Webブラウザの組み込みサポートを利用してプロトコルをサポートするすべてのオンラインサービスに渡りFIDO U2Fデバイスを使用できます。
FIDO2のリリースにより、U2FはCTAP1へ名称が変更となりました。