FIDOとは?従来の認証手法との違いを解説

※本記事は2020年9月8日に投稿したものの再編集版です。

FIDO(Fast Identity Online、ファイド)2は、生体認証などの認証用デバイスと、サーバーやクライアントとのやり取りを標準化した技術の最新規格です。
ここでは、FIDO2について解説いたします。

生体認証規格FIDO2を用いたシングルサインオンが可能なSSO製品についてはこちらをご覧ください。
SSOソリューション「KAMOME SSO」

生体認証に関する他の記事はこちらをご覧ください。
「生体認証の種類はいくつ?それぞれのメリットと問題点を解説」

FIDOとは?

「FIDO認証」とはパスワードに依存しない認証方式です。パスワードの代わりに、生体認証やPINコードなどを利用してログインすることができます。

従来の方法に比べ、ID・パスワードの漏えいやなりすましの対策として、本人確認がきちんと行うことができることに期待されています。

FIDO2登場の背景

従来の認証は、サーバーがIDとパスワード情報を管理し、クライアントから送られてくるID・パスワード情報を基に、サービスを提供するサーバーがアクセスするユーザーを識別し、アクセスを許可するのが一般的でした。このような「伝統的な」認証方式には三つの問題があります(図1)。

①成りすましサーバーにアクセスを誘導されたり、IDやパスワードを盗み取られたりする危険性がある
②複数サーバーでIDやパスワードを使いまわすユーザーは、1カ所のサーバーへの不正アクセスで被害が複数サーバーに拡大する可能性がある
③ユーザーがサーバーごとのパスワードを使い分けて覚えておくのは困難である

そこで2012年、このような課題を解決する規格を策定するためにPayPalやLenovoなど6社が業界団体としてFIDO Alianceを設立、2013年に最初のFIDO規格を発表しました。
2024年時点での最新のバージョンはFIDO2.0です。

FIDO2の特徴

FIDOでは、サーバーから認証を切り離し、ユーザーの手元に置く「認証器」と名付けたデバイスでユーザーを認証します(図2)。
認証器として想定しているのは、生体認証装置(Face IDやTouch ID)、外付けの認証装置(USBキー)、パソコンでログインするときに認証でスマホを使うような場合の独立した認証装置、の3種類です。

認証器を使うことで、
・サーバーがパスワードを管理する必要がなくなる
・パスワードに頼らず複数のサーバーにアクセスできるようになる
・ユーザーが複数のパスワードを覚える必要もなくなる
と様々なことが改善されます。

FIDOは認証器での認証そのものを規定しているわけではありません。ユーザーの手元でなされた認証とサーバーをどのように連携させるのかを規定しています。
またFIDOでは、ID/パスワードによる認証とUSBキーによる認証の組み合わせといったような、2要素認証も規格化しています。
2要素階認証でより厳密な認証もできるわけです。

FIDO2はクライアントにWebブラウザを想定しています。
WebサイトがWebブラウザのJavascriptを介して認証器の情報にアクセスできるようにする、というWeb Authentication APIを規定しています。
また、クライアントと外付けの認証器の間の通信もCTAP(Client To Authenticator Protocol)2というプロトコルで規定しています。

FIDO2の認証の仕組み

FIDO2は従来からあるクライアント、サーバーに加え、認証器とFIDOサーバーで構成します。
ユーザーがクライアントを通じて、サーバーが管理する認証が必要なコンテンツやアプリケーションにアクセスしようとすると(図2①)、
サーバーはまずFIDOサーバーに認証の開始を要求します(図2②)。FIDOサーバーは認証に必要な付加情報をサーバーに渡します(図2③)。
サーバーはその情報をクライアントに転送し(図2④)、クライアントは付加情報の中の認証指示に従って認証器を起動して付加情報を渡します(図2⑤)。

ユーザーを認証した認証器は、FIDOサーバーからクライアント、サーバー経由で送られてきた付加情報を、自身が持つ秘密情報(秘密鍵)で暗号化してFIDOサーバーに送信します(図2⑥)。この暗号は情報技術上「署名」と呼ばれるもので、認証器が公開する情報(公開鍵)によって復元(検証)できますが、悪意のある第三者が偽造することはできません。FIDOサーバーが公開鍵で情報を復元して、自身が送った付加情報を取り出せれば、認証が成功したことをサーバーに伝えます(図2⑦)。

FIDO2の利用イメージ

FIDO2対応の生体認証機能を備えるパソコンやスマートフォンを使う場合、デバイスの画面で認証が必要なサイトにアクセスすると生体認証が始まります。
指紋認証のようにユーザーが意識する必要がある場合は、画面に表示された指示に従って(指を置くなど)認証操作をします。
顔認証のように意識する必要がない場合には、認証動作なしに認証が必要なサイトにアクセスできるようになります。

このようにエンドユーザーはFIDO2を特別に意識したり、難しい操作を覚えたりする必要はありません。
USBキーといったデバイスを接続して認証したり、パソコンのログイン時に自分の手持ちのスマートフォンで認証したりする場合でFIDO2を使う場合でも、
特別に難しくはありません。

かもめエンジニアリングは、豊富な実績とノウハウに基づきFIDO2対応を含む、企業のシングルサインオン(SSO)導入をお手伝いしています。
ご興味がある方は、是非下記のお問い合わせフォームよりご連絡ください。

事業・商品・サービスに関するお問い合わせ

製品に関するお問い合わせはこちら

※フリーメールでのお問い合わせは受け付けておりません。

必須
必須
必須
必須
必須
必須
必須