FIDO認証

認証に関係するエンティティの表現:サーバー、Webブラウザー、およびデバイス。

FIDO(Fast IDentity Online)認証は、高速、シンプル、強力な認証のための一連の標準です。

これらの標準は、Google、Microsoft、Mozilla、Yubicoなどのさまざまな組織の代表者との業界団体であるFIDOAllianceによって開発されています。この標準により、フィッシング対策、パスワードなし、および多要素認証が可能になります。強力な認証の実装と使用を容易にすることで、オンラインUXを向上させます。

Googleアカウント、Dropbox、GitHub、Twitter、Yahoo Japanなど、ウェブで最も人気のあるツールやアプリのいくつかは、すでにFIDO認証を使用しています。


  • ユーザーが勝ちます。ユーザーは、高速で安全な認証フローの恩恵を受けます。

  • 開発者が勝ちます。アプリとウェブの開発者は、シンプルなAPIを使用してユーザーを安全に認証できます。

  • 企業が勝ちます。サイトの所有者とサービスプロバイダーは、ユーザーをより効果的に保護できます。

FIDO認証はどのように機能しますか?

FIDO認証フローでは、証明書利用はAPIを使用してユーザーのオーセンティケーターと対話します。

依拠者

WebアプリとWebサーバー間の安全なリンクの表現。

証明書利用者は、バックエンドサーバーとフロントエンドアプリケーションで構成されるサービスです

応用

認証や登録の流れの間に、アプリケーションは次のようにクライアント側のAPIを使用していますWebAuthnおよびAndroid向けFIDO2をオーセンティケータを持つユーザーの資格情報を作成し、検証します。

これには、サーバーからオーセンティケーターに暗号化チャレンジを渡し、検証のためにオーセンティケーターの応答をサーバーに返すことが含まれます。

サーバ

サーバーは、ユーザーの公開鍵の資格情報とアカウント情報を保存します。

認証または登録フロー中に、サーバーはアプリケーションからの要求に応答して暗号化チャレンジを生成します。次に、チャレンジへの応答を評価します。

FIDO Allianceは、サーバーソリューションを含む、認定されたサードパーティ製品のリストを維持しています。多数のオープンソースFIDOサーバーも利用できます。詳細については、 WebAuthnAwesomeを参照してください。

オーセンティケーター

ユーザーがモバイルデバイスでWebアプリにログインしようとしています。

FIDOオーセンティケーターはユーザー資格情報を生成します。ユーザークレデンシャルには、公開鍵と秘密鍵の両方のコンポーネントがあります。公開鍵はサービスと共有されますが、秘密鍵はオーセンティケーターによって秘密にされます。

オーセンティケーターは、ユーザーのデバイスの一部、またはハードウェアやソフトウェアの外部部分にすることができます。

オーセンティケーターは、登録認証という2つの基本的な相互作用で使用されます。

登録

登録シナリオでは、ユーザーがWebサイトでアカウントにサインアップすると、オーセンティケーターはサービスでのみ使用できる新しいキーペアを生成します。公開鍵とクレデンシャルの識別子はサーバーに保存されます。

認証

認証シナリオでは、ユーザーが新しいデバイスでサービスに戻るとき、またはセッションの期限が切れた後、オーセンティケーターはユーザーの秘密鍵の証明を提供する必要があります。これは、サーバーによって発行された暗号化チャレンジに応答することによって行われます。

ユーザーの身元を確認するために、一部のタイプのオーセンティケーターは指紋や顔認識などの生体認証を使用します。他の人はPINを使用します。場合によっては、ユーザーを確認するためにパスワードが使用され、オーセンティケーターは2要素認証のみを提供します。

次のステップ

コードラボを取る:

詳細: