パスワード・認証

認証アプリとは?SMS認証との違いをわかりやすく解説

一時的な確認コードをスマートフォン内で生成し、パスワードに追加の本人確認を加えるアプリです。

目次
  1. コードを作る仕組み
  2. SMS認証との違い
  3. 機種変更と復旧
  4. 安全に使うポイント

認証アプリとは?

認証アプリは、二段階認証などで使う一時的な確認コードを生成します。代表的な使い方では、アプリに6桁などのコードが表示され、一定時間ごとに変化します。

  1. メールアドレスとパスワードを入力する
  2. 認証アプリを開く
  3. 対象サービスのコードを入力する
  4. 両方が正しければログインできる

Google Authenticator、Microsoft Authenticator、パスワード管理サービス内の認証機能などがあります。利用できるアプリはサービス側の案内を確認します。

コードを生成する仕組み

一般的な時間ベースのワンタイムパスワード(TOTP)は、サービスとアプリが共有した秘密情報と現在時刻をもとにコードを生成します。RFC 6238では標準の時間間隔を30秒としています。

コードは毎回SMSで届くのではありません。一度設定すれば、生成自体は携帯電話の電波やインターネット接続がなくてもできる場合があります。ただし、ログインやクラウド同期には通信が必要です。

QRコードは秘密情報

設定用QRコードには、認証コードを作るための情報が含まれます。第三者が取得すると、その人のアプリでも同じコードを生成できる可能性があります。SNSへの掲載、他人への送信、提供元不明アプリでの読み取りは避けます。

SMS認証との違い

SMSは導入しやすい一方、SIMスワップの影響を受ける可能性があります。認証アプリは電話番号へ依存しにくい代わりに、紛失、機種変更、バックアップを自分で管理する必要があります。

認証アプリのメリット

SIMスワップの影響を受けにくい

コードは電話番号へ送られないため、電話番号を奪われただけでは取得されにくい点がメリットです。

SMSの受信環境に左右されにくい

地下、海外、圏外などでもコードを生成できる場合があり、SMSの到着を待つ必要もありません。

電話番号に依存しにくい

サービスによっては、追加認証用の電話番号を登録せずに使えます。

複数サービスをまとめられる

メール、SNS、クラウドなどのコードを一つのアプリで管理できます。

認証アプリなら絶対安全?

いいえ。認証アプリのコードを偽サイトへ入力すると、攻撃者にリアルタイムで悪用される可能性があります。NISTは、手入力するOTPは特定の正規サイトへ結びついていないため、フィッシング耐性があるとはみなしていません。

サポートなどを名乗られてもコードを共有しません。自分が正規サービスへのログインを始めた場合にだけ、公式画面へ入力します。

スマートフォン自体を守る

端末のロックが解除された状態で他人に操作されると、コードを見られる可能性があります。

機種変更前に必ず移行する

  1. 新しい端末を準備する
    古い端末はまだ初期化しません。
  2. 公式手順で移行する
    同期、エクスポート、QRコードなどアプリ指定の方法を使います。
  3. 実際にログインする
    重要サービスで新端末のコードが使えるか確認します。
  4. 復旧手段を確認する
    バックアップコードなども利用できる状態にします。
  5. 古い端末を初期化する
    すべて確認してから行います。

紛失に備えて復旧手段を用意する

バックアップコード、予備の認証方法、別の信頼済み端末、セキュリティキー、正式な復旧手続きを確認します。バックアップコードを同じスマートフォンだけに保存すると紛失時に両方を失うため、別の安全な場所へ保管します。

クラウド同期の注意点

同期機能は移行や復元を簡単にしますが、同期先アカウントが重要になります。同期先の強い認証、画面ロック、復旧方法を設定し、何が同期されるかを公式案内で確認します。

SMSを予備として残す場合

SMSを残すと電話番号を狙う弱点も残りますが、端末紛失時の復旧に役立つ場合があります。不正ログインを防ぐ強さと、本人が安全に復旧できることの両方で判断します。

パスキーとの違い

パスキーは、サービスごとの暗号学的な認証情報を使い、画面ロックや生体認証などで本人確認します。コードを偽サイトへ入力する必要がないため、フィッシングへの耐性を高めやすい方式です。

認証アプリを選ぶポイント

広告や突然の警告から提供元不明のアプリを入れず、公式ストアや提供元サイトから確認します。

コードが使えないとき

TOTPでは端末の時刻が大きくずれると認証に失敗することがあります。日時の自動設定、選択中のアカウント、コードの有効時間、アクセス先が正規かを確認し、解決しなければ正式な復旧手続きを使います。

シークレットクラウドではGoogleアカウントを保護する

シークレットクラウドはGoogleログインを使用し、独自の認証アプリ用コードは発行しません。Google Accountで認証アプリ、Googleからのメッセージ、パスキーなど、利用可能な追加認証と復旧方法を確認してください。

プライバシー設計を見る

安全に使う7つのポイント

  1. 信頼できる認証アプリを使う
  2. スマートフォンに画面ロックを設定する
  3. 認証コードを他人へ教えない
  4. 設定用QRコードや秘密鍵を見せない
  5. バックアップコードを別の安全な場所へ保管する
  6. 機種変更前に移行とログインを確認する
  7. 偽サイトへのコード入力に注意する

まとめ

認証アプリは、秘密情報と時刻などから本人確認用コードを端末内で生成します。SMS認証より電話番号へ依存しにくく、SIMスワップの影響を受けにくい点がメリットです。一方、フィッシング、端末紛失、機種変更、復旧手段の管理には注意が必要です。固有のパスワード、端末保護、バックアップ、公式画面の確認を組み合わせましょう。

参考情報

同期、移行、復旧方法はアプリごとに異なります。最新情報は公式案内で確認してください。