FIDO 【Fast IDentity Online】
概要
FIDO(Fast IDentity Online)とは、生体認証(バイオメトリクス認証)や公開鍵暗号を組み合わせ、パスワード不要のオンライン認証を実現する技術。業界団体FIDO Allianceが仕様を策定している。従来、ネットワークを通じた利用者の認証はID(会員番号やユーザー名、メールアドレスなど利用者の識別名)とパスワードを入力して登録されたものに一致するか確かめるパスワード認証が基本で、パスワード漏洩によるなりすまし利用が深刻な社会問題となっている。
FIDOでは利用者が所有、保管する認証のための簡易な装置と公開鍵暗号を組み合わせ、パスワードのような秘密の情報のやり取りを行わずに安全にネットワーク越しの認証を行える手順を定義している。
UAF (Universal Authentication Framework)
最初の規格FIDO 1.0では、個人ごとに異なる人体の特徴を用いる生体認証(バイオメトリクス認証)が可能な認証装置を利用する方式を「UAF」(Universal Authentication Framework)として定義している。
認証装置内には公開鍵暗号の秘密鍵が記録されており、対になる公開鍵を認証サーバ側に伝えておく。ログイン時は装置に対して生体認証を行い、これが成功するとサーバに対して秘密鍵で署名したデータ(トークン)が送信される。サーバ側では利用者の公開鍵を用いてトークンを検証し、対になる秘密鍵で署名されたことを確認する。
公開鍵から対になる秘密鍵を割り出すことはできないため、公開鍵が第三者に知られても本人になりすますことはできない。また、生体認証の工程は装置内で完了するため、生体情報がネットワークを通じて送受信されることもない。
生体認証の具体的な手法(指紋認証、静脈認証、虹彩認証など)は制約せず、装置メーカー側で規定することができる。コンピュータなどの端末への実装や接続の方式も様々で、機器本体にセンサーを内蔵する方式や、外付けの認証装置をUSBなどで機器に接続して利用する方式がある。
U2F (Universal 2nd Factor)
FIDO 1.0ではもう一つの認証方式として、セキュリティキー用いる二段階認証「U2F」(Universal 2nd Factor)を規定している。これは通常のパスワード認証に異なる方式の認証を追加する二要素認証(二段階認証)を行う仕様で、秘密鍵を記録したセキュリティキー(ドングル)を機器に接続し、UAFと同じ手順で公開鍵暗号を応用した署名と検証を行う。キーは指先ほどの大きさでUSB接続の製品が多いが、NFCやBluetooth(BLE)などの接続方式も選択できる。
FIDO2/WebAuthn
FIDO2ではUAFとU2Fが統合されて「Web Authentication」(WebAuthn)となり、これにクライアントと認証装置の通信手順を定めたCTAP(Client-to-Authenticator Protocol)を加えて規格を構成する。WebAuthnはWeb技術の標準化団体であるW3Cに提案され、2019年に標準として勧告された。現在では主要なWebブラウザへの実装が完了している。