この資料はFIDOについて調べた内容を、自分なりに解釈してまとめた内容となっています。不適切な説明がされている可能性もあるのでその点はご注意ください。
Fast Identity Onlineの略語で、従来のID/Passwordによる本人認証に代わる認証技術としてFIDO Allianceによって規格の策定と普及推進が行われている
- FIDO Alliance
- 2012年に設立
- https://fidoalliance.org
- 知識
- パスワードや秘密の質問など、本人しか知らないこと
- 所有
- セキュリティキーなど、本人しか持ってない特定のデバイス
- 生体
- ユーザ自身の指紋や虹彩、静脈や顔など
- 知識要素のみによる認証
- パスワードの使い回しによるリスト攻撃
- 中間者攻撃(e.g. フィッシングサイト)に対する耐性がない
- パスワード管理が煩雑になりがち
- 安全性
- 利便性
- 標準化
標準的な公開鍵暗号方式を採用することで堅牢な認証を実現している
FIDO認証プロセスでは、ローカルな検証とオンライン認証の2つのプロセスに分離されてプロトコル標準化されている。そのため、サーバ側の処理を変えずに、多様なローカル検証方式をとれる。
- 多要素認証 (所有 + 知識 or 生体)
- 認証に公開鍵暗号方式を採用することで、クレデンシャル情報が外部に漏れるのを防ぐ
- リスト攻撃に耐性あり
- 認証器はサービス(origin)毎に鍵のペアを保管している
- フィッシングに耐性あり
- FIDO 1.0
- UAF (Universal Authentication Framework)
- U2F (Universal Second Factor) (i)
- FIDO 2.0
- WebAuthn (Web Authentication) (ii)
- CTAP2 (Client to Authenticator Protocol)
(i) FIDO2の登場によりCTAP1に名称変更 (ii) WebAuthnはW3Cとして仕様化
- パスワードレス型
- 生体情報(生体)と、署名(所有)による2要素認証
- 代表的な認証器
- BioPass FIDO2
- YubiKey Bio
- パスワード補完型
- パスワード(知識)と、署名(所有)による2要素認証
- 代表的な認証器
- YubiKey
- Titan
- FIDO認証の対応プラットフォーム拡大を目的に結成されたプロジェクト
- WebAuthnとCTAPで構成されている
- WebAuthn (Web認証)
- 主要なWebプラットフォーム(OSやブラウザ)でFIDO認証を利用するための仕様
- ブラウザから認証器にアクセスするためのAPIも規格化
- CTAP2と連携するものだが、CTAP1も利用可能
- CTAP2 (デバイス間連携仕様)
- UAFとU2Fを統合したもの
- 内部・外部認証器に対して認証処理を委ねるためのプロトコルを規定
- パスワードレス(生体認証)、第二要素、または多要素の認証をサポート
- UAFとU2Fを統合したもの
FIDO認証では、クライアント、サーバ、認証器の3つのロールが存在し、それぞれ異なる事業者から提供される可能性がある。各製品の仕様への適合性や相互接続性、及び認証器のセキュリティの確保は非常に重要である。そこでFIDOアライアンスは、各ロールを検証する認定試験を設けている。
- 機能試験
- 適合性テスト
- 相互接続性テスト
- 認証器のセキュリティ認定レベル試験
- 生体認証部品の試験