二要素認証とは何ですか?| 2ステップの認証を説明

二要素認証(2FA)では、ユーザーは2つの異なる手段で自身の身元を証明した後でアクセスを許可されます。

Share facebook icon linkedin icon twitter icon email icon

二要素認証

学習目的

この記事を読み終えると、以下のことができます。

  • 二要素認証の定義
  • 認証要素の例の概要
  • 2FAの欠点を知る

二要素認証とは何ですか?

二要素認証、略して2FAは、IDを確立するために2つの異なる認証要素が必要な認証プロセスです。簡単に言えば、ユーザーは、自身の身元を2つの異なる方法で証明すると、アクセスを許可されます。



認証とは何ですか?

認証は、アクセス制御の重要な構成要素です。これは、ある人が主張どおりの人であることを確認する、セキュリティ対策です。出入国審査でパスポートを提示する旅行者も、その一例です。

サイバーセキュリティの範囲において、最も一般的な認証の例としては、Web上のサービスへのログイン、例えばWebブラウザでのGmailへのサインインやFacebookアプリへのログインがあります。ユーザーがユーザー名とパスワードの組み合わせを提示すると、サービス側でこれらの情報を確認し、これを使ってユーザーを認証します。

認証要素とは何ですか?

認証要素とは、別分類のID検証手段です。よくある2FAの認証要素には、次のようなものがあります。

  • 知識:これは、たとえばパスワードやセキュリティの質問への答えのような、ユーザーしか知らない情報です。
  • 所有:この要素は、ユーザーが持っている物体に依存します。たとえば、パスコードを生成可能なハードキーや、コードを受信可能なモバイルデバイスです。
  • バイオメトリックデータ:認証に使用可能な、ユーザーの生物学的特徴です。例えば指紋、網膜スキャン、顔認証などです。
  • 場所:場所に基づくGPSのようなツールを使用して、指定された地理的地域内のユーザーに認証を制限することができます。

同一の認証要素に2つのインスタンスが必要なものは、2FAではないので注意が必要です。例えば、パスワードとセキュリティの質問が求められるものは、一要素認証です。この両方とも、知識の要素に関連しています。

二要素認証はどのように機能しますか?

一般的な2FAではユーザー名/パスワードとSMSのテキストによる検証が要求されます。この例では、ユーザーがあるサービスでアカウントを作成する際、固有のユーザー名とパスワード、そして携帯電話番号を提供しなければなりません。

ユーザーがこのサービスにログインする際、ユーザーは自身のユーザー名とパスワードを提示します。これが最初の認証要素(知識。ユーザーは、自身に固有のログイン資格情報を知っていることを証明する)です。次に、サービス側からユーザーに対して、数字コードを記載したテキストメッセージが自動で送信されます。ユーザー側には、この数字コードを入力するようプロンプトが表示されます。コードは正しいものと仮定し、ユーザーはここで2つめの認証要素(所有:ユーザーは自身のモバイルデバイスを所有している)を提示したことになります。これで、2FAの条件が満たされ、ユーザーは認証されてアカウントへのアクセスを許可されます。

なぜ、二要素認証を使うのですか?

パスワードベースのセキュリティは、攻撃者が容易に悪用できるようになっています。フィッシング詐欺中間者攻撃ブルートフォースアタック(総当り攻撃)の広がりやパスワードの再使用により、攻撃者にとって盗まれたログイン資格情報の収集は格段に容易になっているのです。このような盗まれた資格情報は、パスワードリスト型(クレデンシャルスタッフィング)攻撃で使用するために取引や販売されることがあります。 このため、2FAの方がより広く使用されるようになってきているのです。

Stronger identity verification has also increased in importance as remote workforces become more common. Many company employees no longer come into the office and instead work remotely. Since their physical presence in the office cannot be used to verify their identity, measures like 2FA help ensure that their accounts have not been compromised.

セキュリティの専門家は基本的に、ユーザーが可能な限り2FAを有効にするよう薦め、ユーザーの機密データを取り扱いながら現在2FAを提供していないサービス側にも2FAを求めています。2FAは攻撃者から解析できないわけではありませんが、パスワードのみの認証の場合よりも侵害することは格段に難しく高価になります。

SMSベースの二要素認証は安全ですか?

SMSベースの2FA(テキストメッセージによる検証)は、一要素認証(パスワードのみ)よりもはるかに安全です。とは言っても、SMSは最も安全性の低い2FA手段の1つでもあります。SMSのプロトコルはそれほど安全ではなく、SMSメッセージは攻撃者から傍受されます。

2FAには、モバイルデバイスを使用した、もっと安全な別の実行方法があります。例えば、認証コードを強力な暗号化を使用した安全なアプリ経由で送信する方法です。Googleや他の巨大インターネットサービスでは、時間ベースのワンタイムパスワード(TOTP)を使用しています。TOTPでは、クライアント(たいていはスマートフォン上で実行するアプリ)でその日の時間を基に、一時的なシングルユースコードを生成しま。これらのコードの寿命はきわめて短く、平均で1分未満です。この厳格なタイムラインによって、攻撃者がコードを傍受して期限切れ前に復号化することは非常に難しくなっています。

新たに、周囲の騒音をマイクで捕捉してモバイルデバイスとラップトップに取り入れる「サウンドプルーフ」と呼ばれる2FAテクノロジーも出てきています。サウンドプルーフでは、周囲の騒音サンプルを比較することで、両方のデバイスが同じ室内にあることを確認します。

二要素認証に欠点はありますか?

2FAは、インターネットをより安全にしますが、いくつか検討の必要な欠点があります。たとえば、2FAは、スマートフォン用の認証アプリをダウンロードして操作することを難しいと感じるような、テクノロジーに苦手意識のあるユーザーにはなじみにくいかもしれません。

サービスに2FAを要求する場合は、初期費用の障壁が生じるかもしれません。すべてのユーザーが多くの2FAで必要な最新のスマートフォンを持っているわけではありません。さらに、モバイルデータ通信は国や地域によっては非常に高額なため、スマートフォン所有者であっても、2FA認証アプリをダウンロードして高額な料金が発生しては困るという場合もあるでしょう。

2FAでは、サービスを管理する企業の側にもコストの問題が発生します。2FAは、パスワードのみの認証よりも格段に実装が難しく、2FAを提供する企業にはセットアップコストが生じるか、サードパーティが提供する認証サービスに継続的に料金を支払うことになるでしょう。より小規模なビジネスであれば、サポート費用を賄えないために2FAレベルの高度なセキュリティはあきらめるかもしれません。