SMS と認証アプリ、2 要素認証に適しているのはどちらか?

2017.08.03

先日掲載した 2 要素認証 (2FA) に関する記事に対し、SMS (テキストメッセージ) コードを第 2 の認証要素として使用すべきか、それとも専用の認証アプリを使用してコードを生成するべきか、という質問が寄せられました。


興味深い質問でしたので、少し詳しくご説明します。多くの場合、SMS と認証アプリのどちらを選択するかは、ユーザーにとってどちらが便利かによって決まります。しかし、それぞれの長所短所について関心がある方は、本記事をぜひお読みください。


(2FA に対応しているすべてのサービスで両方のオプションが用意されているわけではありませんが、本記事ではどちらも選択できると仮定します。)


SMS ベースのコードの長所と短所


長所


  • SMS コードは便利です。簡単にアプリをダウンロードして、各アカウントを設定できます。スマートフォンのユーザーでない場合、他に選択肢がないことがあります。
  • SMS 認証は、炭鉱のカナリアになってくれます。自分のアカウントに誰かが侵入しようとしている場合、2FA の警告メッセージが携帯電話に表示されるので、確認 (およびパスワードを変更) する必要があることが分かります。

短所


  • SIM スワップ詐欺によって SMS が乗っ取られる可能性があります。詐欺師が本人になりすまして携帯電話ショップを騙すことができれば、本人の電話番号でエンコードされた新しい SIM が発行されます。すると、本人の携帯電話は使えなくなり、詐欺師の携帯電話が電話を受けたり、2FA コードを含むメッセージを受信し始めます。
  • 米国立標準技術研究所 (NIST) はすでに SMS ベースの 2FA の時代は終わりを迎えた(リンク先:英語)と宣言しています。

認証アプリの長所と短所


長所


  • 認証アプリを使用している場合、SIM スワップによって 2FA コードが乗っ取られることはありません。コードは SIM カードではなく、認証アプリに依存します。
  • 認証アプリは、携帯電話が圏外であっても機能します。

短所


  • 認証アプリは、認証アプリとサーバーの両方が保存する必要がある共有秘密鍵に依存します。この「シード」は、2FA コードを生成する時間と組み合わされています。詐欺師が認証アプリやサーバーにハッキングして秘密鍵を入手できた場合、2FA コードのクローンを無期限に作成することができます。
    SMS コードは、サーバーから送信されるランダムな値にすぎないため、次に送信されるコードを予測するために詐欺師が使用する「シード」は存在しません。

  • スマートフォンからオンラインサービスにアクセスする場合、通常は同じデバイスで認証アプリを実行します。これは、詐欺師が 2FA の両方の要素を同時に入手できることを意味します。SMS コード用として第 2 の軽量なフィーチャーフォンを使用することで、2 つの要素の分離が容易になります。

どちらを使用したいですか? オンラインアカウントで 2FA をまだ使用していない場合は、使用することをお勧めします。下記のコメント欄に皆様のご意見をお寄せください。


引用元

おすすめの記事はこちら