パスワードの限界
パスワードは1960年代に生まれた認証方式ですが、2025年の脅威環境では根本的な問題を抱えています。
- フィッシング: パスワードを偽サイトに入力させれば窃取できる
- 使い回し: 平均的なユーザーは4〜5つのパスワードを使い回す
- 漏洩データベース: 過去の侵害から数十億件のパスワードが流通
- ブルートフォース: 一般的なパスワードはGPUで数秒〜数分で解読可能
- 認証疲労攻撃: MFAプッシュ通知を大量送信して承認させる
Verizon DBIR 2024によると、侵害の61%がパスワード関連(クレデンシャルスタッフィング・フィッシング・ブルートフォース)です。
Google、Apple、Microsoft、Amazon など主要プラットフォームがパスキーをデフォルト認証として採用。2025年時点で 10億人以上 がパスキーを利用しています。NIST SP 800-63B-4(2024年8月改訂)はFIDO2/パスキーを「最強の認証手段」として位置づけています。
パスキーとは何か
パスキー(Passkey) はFIDO(Fast Identity Online)アライアンスが標準化したパスワードレス認証技術です。パスワードの代わりに公開鍵暗号とデバイス認証を使います。
仕組みの概要
【登録時】
1. デバイスが鍵ペアを生成(秘密鍵はデバイス内のセキュアエリアに保存)
2. 公開鍵をサービスに登録
【ログイン時】
1. サービスが「チャレンジ(乱数)」を送信
2. ユーザーが生体認証(指紋・顔)またはPINで本人確認
3. デバイスが秘密鍵でチャレンジに署名
4. サービスが公開鍵で署名を検証 → ログイン成功
秘密鍵はデバイスから外に出ることがなく、サービス側にも送られません。
なぜパスキーはフィッシングに強いのか
パスキーの最大の特徴はフィッシング耐性(Phishing-Resistant) です。
通常のパスワードでのフィッシング:
本物: https://paypal.com/login ← パスワードを入力
偽物: https://paypa1.com/login ← 偽サイトにも入力できてしまう
パスキーでのフィッシング試み:
本物: https://paypal.com/login ← 登録されたドメインで動作
偽物: https://paypa1.com/login ← ドメインが異なるため、
パスキーは使用できない(認証失敗)
FIDO2の仕様として、パスキーはアクセスしているサイトのオリジン(ドメイン)に暗号的に紐づいています。偽サイトではパスキーが機能しません。これはパスワードマネージャーの自動入力拒否と異なり、技術的な保証です。
SMSや認証アプリのOTPはAiTM(中間者攻撃)フィッシングで盗まれる可能性があります。パスキーは認証プロセス自体がオリジン(ドメイン)に依存するため、中間者攻撃も無効化します。これがNIST SP 800-63B-4でパスキーが最高レベル認証に位置づけられた理由です。
FIDO2 / WebAuthn の技術構造
用語の整理
| 用語 | 説明 |
|---|---|
| FIDO2 | FIDOアライアンスとW3Cが共同策定した標準規格の総称 |
| WebAuthn | ブラウザ↔サービス間のプロトコル(W3C標準) |
| CTAP2 | 認証器(デバイス)↔ブラウザ間のプロトコル |
| パスキー | FIDO2ベースの認証情報の総称(業界共通の呼称) |
| 認証器(Authenticator) | 秘密鍵を保存・使用するデバイス |
認証器の種類
| 種類 | 例 | 特徴 | 推奨用途 |
|---|---|---|---|
| プラットフォーム認証器 | Touch ID, Face ID, Windows Hello | デバイス内蔵。生体認証またはPINで保護 | 日常的なパスキー利用 |
| クラウド同期パスキー | iCloud Keychain, Google Password Manager | 複数デバイス間で同期可能 | マルチデバイス利用 |
| ローミング認証器(物理キー) | YubiKey, Google Titan Key | 持ち運び可能なUSB/NFC/Bluetoothデバイス | 高セキュリティ要件 |
パスキーの設定方法
Google アカウント
- myaccount.google.com にアクセス
- 「セキュリティ」→「パスキーとセキュリティキー」
- 「パスキーを作成する」をクリック
- デバイスの生体認証で確認
Apple(iCloud Keychain)
- iOS 16 / macOS Ventura 以降で自動対応
- 設定 → [ユーザー名] → パスワードとアカウント
- 対応サイトでは自動的にパスキー登録が提案される
Microsoft アカウント
- account.microsoft.com にアクセス
- 「セキュリティ」→「Windows Hello またはセキュリティキー」
- Windows Hello(顔認証・指紋)でパスキーを作成
GitHub
- Settings → Password and authentication → Passkeys
- 「Add a passkey」をクリック
- デバイスで生体認証
パスキー対応サービスは急速に拡大しています。公式リソースとして FIDOアライアンスのサイトで対応サービスを確認できます。2025年時点では Amazon、Apple、GitHub、Google、Microsoft、X(旧Twitter)、1Password、Dropbox、PayPal など主要サービスが対応済みです。
パスワードレス移行ロードマップ
パスワードからの完全移行は段階的に行えます。
ステップ1: パスワードマネージャーを使う(今すぐ)
パスキーへの移行前に、パスワードマネージャーで全サービスのパスワードを一意・長い文字列に変更します。
推奨パスワードマネージャー:
- Bitwarden(オープンソース・無料プランあり)
- 1Password(パスキー対応・有料)
- iCloud Keychain(Apple デバイスなら組み込み)
- Google Password Manager(Android / Chrome 組み込み)
ステップ2: 重要サービスにパスキーを設定(1週間以内)
優先度の高いサービスから順にパスキーを設定します。
優先度:高
- Googleアカウント(Gmail、GDrive、YouTube)
- Appleアカウント(iCloud)
- Microsoftアカウント(Outlook、OneDrive)
- パスワードマネージャー本体
優先度:中
- SNS(X、Instagram、Facebook)
- GitHub / GitLab
- Amazon
- 銀行・金融サービス
ステップ3: SMSコードをより強い認証に置き換え
パスキーを設定できないサービスでは、SMS認証の代わりにTOTP認証アプリ(Google Authenticator、Authy など)を使用します。
SMS(ショートメッセージ)による認証コードはSIMスワッピング攻撃(SIMの乗っ取り)やSS7プロトコルの脆弱性で傍受される可能性があります。SMSよりもTOTP認証アプリ、TOTPよりもパスキーが安全です。
よくある疑問
Q. デバイスを紛失したらどうなる?
A. パスキーはクラウドに同期しているため、同じアカウント(Apple ID / Google アカウント)で別のデバイスに復元できます。また、パスキー登録時にバックアップ用の回復コードも保存しておきましょう。
Q. 古いデバイスではパスキーが使えない?
A. iOS 16 / Android 9 / Windows 10 以降であれば基本的に対応しています。未対応デバイスでは既存のパスワード + MFAを継続して使い、対応デバイスへの移行時にパスキーを追加します。
Q. パスキーのデータはどこに保存される?
A. 秘密鍵はデバイスの安全な領域(Secure Enclave / TPM)に保存されます。クラウド同期パスキーの場合、iCloud KeychainやGoogle Password Managerに暗号化されて保存されます。秘密鍵はデバイス外に出ず、サービス側には公開鍵のみが保存されます。
Q. フィッシングサイトでパスキーを使ってしまったら?
A. パスキーはドメインに暗号的に紐づいているため、偽サイトでは技術的に認証が成立しません。パスキーを「使えてしまった」ということはありません。これがパスキーの最大の強みです。
パスキーがSMSOTPや認証アプリよりもフィッシングに強い理由はどれですか?
パスキーの「クラウド同期パスキー」と「ローミング認証器(物理セキュリティキー)」の主な違いはどれですか?