二段階認証(2FA)とは
パスワード(知識情報)に加えて、第2の認証要素(所持情報・生体情報)を組み合わせる認証方式。2FA(Two-Factor Authentication)とも呼ばれる。
仕組みと認証の3要素
認証には3種類の要素があります。
- 知識情報(Something You Know): パスワード、PIN、秘密の質問
- 所持情報(Something You Have): スマートフォン、ハードウェアトークン、SIMカード
- 生体情報(Something You Are): 指紋、顔、虹彩
二段階認証は、このうち異なるカテゴリの要素を2つ組み合わせます。最も一般的なのはパスワード(知識)+SMS(所持)の組み合わせです。
主な二段階認証の種類
- SMS認証: 電話番号にOTPを送信。導入が簡単だがSIMスワップリスクがある
- 着信認証: 着信で本人確認。固定電話対応、SIMスワップ耐性あり
- TOTP: Google Authenticator等のアプリで30秒ごとにOTPを生成
- FIDO / FIDO2: ハードウェアキーや生体情報による強力な認証
- パスキー: FIDOベースのパスワードレス認証。フィッシング耐性が最も高い
メリット
- パスワードが漏洩しても第2要素がなければアカウントを乗っ取られない
- 不正ログイン試行の多くを防止できる
- コンプライアンス要件(PCI DSS、SOC2等)の充足に寄与する
デメリット
- ユーザーの認証ステップが増え、離脱率が上がる可能性がある
- 第2要素の種類によってはSIMスワップ等の攻撃に弱い(SMS認証の場合)
- デバイス紛失時のアカウント復旧が複雑になる
二段階認証の選び方
セキュリティ要件と利便性のバランスで選択します。 高セキュリティが必要な金融サービスにはパスキーやFIDO2が推奨されます。 一般ユーザー向けサービスでは、TOTPや着信認証がセキュリティと利便性のバランスが良い選択肢です。