パスキーとは

パスキー(Passkey)はFIDO2をベースにしたパスワードレス認証方式。生体情報(指紋・顔)で端末内に秘密鍵を保存し、iCloud KeychainやGoogleパスワードマネージャーでクラウド同期することでマルチデバイスに対応する。

パスキーの仕組み

パスキーはFIDO2の公開鍵暗号を使います(詳細はFIDO / FIDO2を参照)。 従来のFIDO2(ハードウェアキー等)と異なるのは、秘密鍵がOSのパスワードマネージャー(iCloud Keychain / Google Password Manager)にバックアップされる点です。 これにより、デバイスを機種変更してもパスキーを継続利用でき、 複数デバイス間でシームレスに認証できます。

認証時は生体認証(Face ID・Touch ID・指紋認証)でデバイスを解除するだけ。 パスワード入力もOTPコード入力も不要です。

主なパスキー対応プラットフォーム

  • Apple: iOS 16+・macOS Ventura+のiCloud Keychain
  • Google: Android 9+のGoogleパスワードマネージャー
  • Microsoft: Windows HelloによるWindows 10/11対応
  • 1Password / Bitwarden: サードパーティパスワードマネージャーも対応

SMS認証との比較

項目 SMS認証 パスキー
フィッシング耐性❌ 弱い✅ 完全耐性
SIMスワップ耐性❌ 脆弱✅ 影響なし
ユーザー操作SMS受信→コード入力生体認証のみ
実装コスト低い高い(WebAuthn対応が必要)
普及率ほぼ全員が利用可対応デバイス要

メリット

  • フィッシング・SIMスワップ・パスワード漏洩のすべてに耐性がある
  • 生体認証のみで完了するため、最も高いUXを提供できる
  • クラウド同期でデバイス紛失・機種変更に対応できる

デメリット

  • 古いデバイス・ブラウザでは利用できない
  • WebAuthn実装には開発工数が必要
  • 全ユーザーが対応デバイスを持っていない場合、フォールバック認証方式が必要

電話認証との使い分け

パスキーは強力ですが「電話番号の実在確認」はできません。 スパム対策・SMS認証の代替として電話番号確認が目的の場合は、 着信認証など電話認証が適切です。

関連用語

  • FIDO / FIDO2 — パスキーの基盤となる規格
  • SMS認証 — パスキーへの移行が推奨される代表的な旧来方式
  • 二段階認証 — パスキーは単独で高セキュリティな認証を実現

パスキー移行期の電話番号確認に

パスキー対応が進む中でも、電話番号の実在確認には着信認証が有効。pauth.meは簡単に導入できる電話認証APIです。