FIDO2

物理鍵が優れる理由:ソフトウェア認証との違い

2026年10月22日 · Yubico Japan

木製のデスクに置かれた、鍵束に付いたYubiKey

多要素認証(MFA)を導入するとき、多くの組織や個人がまず選ぶのは、スマートフォンの認証アプリやSMSといったソフトウェアベースの方法です。手軽に始められる一方で、フィッシングの手口が高度になった今、どの方法を選ぶかによって守れる範囲は大きく変わります。

この記事では、ハードウェアセキュリティキーとソフトウェア認証の違いを「仕組み」「攻撃への強さ」「運用のしやすさ」の3つの観点から比較し、物理的な鍵がより安全な理由を考えます。

ソフトウェア認証とハードウェアセキュリティキーの違い

ソフトウェア認証とは、スマートフォンやPCのアプリ、OSの上で認証を行う方法です。代表的なものに、認証アプリが30秒ごとに生成するワンタイムパスワード(TOTP)、SMSで届く確認コード、スマートフォンに届くプッシュ通知の承認があります。

ハードウェアセキュリティキーは、認証のための専用の物理デバイスです。YubiKeyのようにUSBポートに挿したり、スマートフォンにかざしたりして使います。FIDO2 / WebAuthnなどの標準規格に沿って、デバイス内部に保管された秘密鍵で認証を行います。

比較表:主な認証方法の特徴

認証方法 フィッシング耐性 秘密情報の保管場所 主なリスク
SMSの確認コード ✕ 低い 通信事業者・スマートフォン SIMスワップ、コードの盗み取り
認証アプリ(TOTP) ✕ 低い スマートフォンとサーバーの両方 偽サイトでのコード入力、端末やバックアップからの流出
プッシュ通知の承認 △ 中程度 スマートフォン 承認要求を大量に送りつける「MFA疲労攻撃」
ハードウェアセキュリティキー(FIDO2) ◎ 高い キー内部の専用チップ(外に出ない) 紛失(バックアップ用のキーを登録しておけば対策可能)

※スマートフォンでは表を横にスクロールしてご覧いただけます。

TOTPの弱点:認証アプリだけでは不十分な理由

1. 偽サイトに入力したコードが、そのまま悪用される

TOTPのコードは、どのサイトに入力されているかを区別しません。本物そっくりのフィッシングサイトにパスワードとコードを入力してしまうと、攻撃者はそれをすぐに本物のサイトへ転送してログインできます。こうした中間者型(AiTM)のフィッシングは攻撃用のツールも出回っており、高度な専門知識がなくても実行できるようになっています。

2. 共有シークレットが、端末とサーバーの両方にある

TOTPは、最初の設定時にQRコードで受け取る「共有シークレット」をもとにコードを計算します。この情報はスマートフォンとサービス側のサーバーの両方に保存されるため、どちらかが侵害されたり、アプリのバックアップが不正に読み取られたりすると、攻撃者も正しいコードを生成できてしまいます。

3. スマートフォン自体が攻撃の対象になる

認証アプリやSMSは、汎用のスマートフォンの上で動いています。マルウェアへの感染、OSの脆弱性、紛失や盗難、電話番号を乗っ取るSIMスワップなど、認証とは別の理由で守りが崩れる経路がいくつもあります。

ハードウェアセキュリティキーが優れている理由

正規のサイトでしか認証が成立しない

FIDO2 / WebAuthnに対応したセキュリティキーは、登録時にサイトのドメイン(オリジン)と鍵を結びつけます。偽サイトから認証を求められても、ドメインが一致しないため認証は成立しません。ユーザーが偽サイトに気づかなくても、仕組みとして突破されない点が最大の違いです。

秘密鍵がキーの外に出ない

認証に使う秘密鍵はキーの内部で生成され、外に取り出すことはできません。サービス側に保存されるのは公開鍵だけなので、仮にサーバーから情報が流出しても、攻撃者はそれを使ってログインできません。

専用のセキュリティチップが、物理的な攻撃にも備える

Yubicoは、YubiKeyに汎用のマイクロコントローラーではなく、セキュリティ用途のために設計された専用チップ(セキュアエレメント)を採用しています。Yubicoによれば、汎用チップはデバッグ用の端子からの侵入や、消費電力などの情報から鍵を推測するサイドチャネル攻撃、意図的に誤作動を起こさせるフォールト注入攻撃に弱い場合があります。専用チップはこうした攻撃への対策を備えており、鍵を抜き取ることを格段に難しくします。

タッチが必要なので、遠隔からは操作できない

認証のたびにキーへの物理的なタッチを求めるため、PCがマルウェアに感染していても、攻撃者が遠隔から勝手に認証を完了させることはできません。電池も通信も不要で、スマートフォンの充電切れや電波の状況にも左右されません。

公的なガイドラインもフィッシング耐性のある認証を推奨

米国国立標準技術研究所(NIST)の認証ガイドライン「SP 800-63B(英語)」は、最も高い保証レベルであるAAL3の要件として、ハードウェアベースの認証器と、なりすましサイトへの耐性を求めています。また、米国サイバーセキュリティ・インフラストラクチャセキュリティ庁(CISA)も、FIDOベースのフィッシング耐性のあるMFAへの移行を推奨しています。

ソフトウェア認証から切り替えるときのポイント

  • 重要なアカウントから始める:メール、クラウドストレージ、管理者権限のあるアカウントなど、乗っ取られたときの影響が大きいものから登録します。
  • キーは2本用意する:メイン用とバックアップ用の両方を登録しておけば、1本を紛失してもアクセスを失いません。
  • 弱い方法を残さない:セキュリティキーを登録した後もSMSなどの方法が有効なままだと、攻撃者はそちらを狙います。対応しているサービスでは、弱い認証方法を無効にしましょう。

お使いのデバイスに合ったモデルは、YubiKey製品一覧から確認できます。

守りの強さは「鍵がどこにあるか」で決まる

認証アプリやSMSは、パスワードだけの状態と比べれば確実に安全性を高めます。しかし、コードを入力する方式である以上、フィッシングを完全に防ぐことはできません。秘密鍵を専用チップの中に閉じ込め、正規のサイトでしか応答しないハードウェアセキュリティキーなら、人の注意力に頼らずにアカウントを守れます。大切なアカウントから、物理的な鍵への切り替えを検討してみてください。

よくある質問

認証アプリ(TOTP)とハードウェアセキュリティキーの違いは何ですか?

認証アプリは共有シークレットからワンタイムコードを生成し、ユーザーがそのコードを入力する方式です。ハードウェアセキュリティキーはキー内部の秘密鍵で認証し、登録したサイトのドメインでしか応答しないため、偽サイトにだまされて認証してしまうことがありません。

TOTPの弱点は何ですか?

主な弱点は3つです。偽サイトに入力したコードがそのまま悪用されること、共有シークレットが端末とサーバーの両方に保存されるため流出のリスクがあること、そしてスマートフォンのマルウェア感染や紛失の影響を受けることです。

セキュリティキーを紛失したらどうなりますか?

バックアップ用のキーを事前に登録しておけば、そのキーでログインできます。そのため、メイン用とバックアップ用の2本を登録しておくことが推奨されています。


参考記事・関連リソース