【セキュリティ】パスキー(passkey)について

【セキュリティ】パスキー(passkey)について

最近、Googleから「パスワードではなくパスキー(passkey)を利用してください」というメッセージが届きました。
パスキーは近年注目を集めている認証技術の一つです。そこで今回は、パスキーはパスワードと何が違うのか?
そして、どのような仕組みで安全性を実現しているのか?について、分かりやすく解説します。

■ 概要

パスキー(passkey)は、FIDO2標準に基づいた新しいパスワードレス認証方式です。GoogleやApple、Microsoftなどが推進しており、ユーザーがパスワードを覚えずに安全にログインできる仕組みです。

FIDO2標準について

FIDO2(ファイド・ツー)標準とは、パスワードの代わりに、より安全で簡単なログイン方法を提供するための国際的な標準です。

FIDO2を構成する技術
技術名 内容
WebAuthn ブラウザやWebサイトがFIDO認証を使うための「仕組み」
CTAP(シータップ) パソコンやスマホがセキュリティキーなどの「認証デバイス」とやりとりするための規格
FIDO2の利用方法
  • FIDO2は下記の手段を用いて、パスワード入力なしでログインする方法を提供します。
    • 指紋認証
    • 顔認証
    • スマホの画面ロック
    • セキュリティキー
FIDO2の利点
特徴 説明
🔒 セキュリティ強化 パスワード漏洩やフィッシングに強い
👤 利便性アップ パスワードを覚える必要がない
🌐 標準規格 Google、Apple、Microsoftなども対応していて普及が進んでいる

■ パスワード方式の問題点

従来のパスワード方式は以下のような問題があります。

  • パスワードの使い回し
  • 推測されやすいパスワード
  • フィッシング詐欺のリスク
  • データ漏洩時にクレデンシャル(ユーザー名やパスワード等の本人であることを証明する情報)が盗まれる

■ FIDO2を使用した場合

FIDO2では、クレデンシャル(具体的には秘密鍵)はユーザーのデバイスに安全に保存され、Webサイトにはパスワードのような秘密情報が保存されないので、たとえサーバーが攻撃されても「盗まれて困るクレデンシャル」はない、という特徴があります。

■ パスキーの仕組み

パスキーは公開鍵暗号方式(Public-Key Cryptography) に基づいています。

  1. 登録時(初回ログイン)
    1-1. ユーザーがあるサービス(例:example.com)にログインしようとする
    1-2. デバイス(スマホやPC)上で公開鍵と秘密鍵のペアが生成される
    1-3. 公開鍵だけがサーバーに送信され、秘密鍵はデバイス内に安全に保存
    1-4. 公開鍵はサービスのアカウントに紐付けて保存される

  2. 認証時(ログイン)
    2-1. サーバーが「このユーザーが本物か確認したい」とクライアントに挑戦(challenge)を送る
    2-2. デバイスが生体認証やPIN等を使って本人確認した後、秘密鍵を使ってそのチャレンジに署名する
    2-3. サーバーは、保存してある公開鍵でその署名を検証する
    2-4. 正しい署名であれば本人確認成功

これにより、秘密鍵は外部に送られることは一切なく、デバイスが署名して認証するので、フィッシングや漏洩リスクが極めて低いです。

つまり、パスキーは
「安全に保存された秘密鍵 + 生体認証やPINによって守られた、パスワードに代わる本人認証手段」
という認証の仕組みです。

■ パスキーのまとめ

要素 内容
🔐 秘密鍵 デバイス内に保存され、外部に漏れない
🖥️ 公開鍵 サーバーに送信され、後で署名を検証するために使用
🧑‍💻 本人確認手段 生体認証(顔/指紋)やPIN。秘密鍵へのアクセスに使用
🧩 ドメインの識別 認証は特定のドメインに限定され、フィッシングを防ぐ

■ パスキー理解度チェック

以下は、パスキーに関連する情報処理安全確保支援士試験の過去問題です。知識の確認にご活用ください。
👉 過去問リンク(令和6年度秋 午前II 問7)

また、IPA(情報処理推進機構)が提供する以下の資料もおすすめです。
図解付きでパスキーの仕組みが紹介されています。
👉 IPA:セキュリティのすゝめ(パスキー解説)https://www.ipa.go.jp/about/ipanews/ipanews202409.html