パスキーとは?パスワードを使わないログインの仕組み

仕様の版:Web Authentication Level 3(2026年8月25日勧告)
Amazonのような買い物サイトでも、パスキーでログインできます。指紋や顔で本人を確かめるとき、何が保存されるのでしょうか。
本記事では、パスワードやワンタイムパスワードのどこに弱点があり、パスキーがそれをどう克服したのかを説明します。指紋や顔で確かめる理由と、複数の端末で使える同期パスキーも取り上げました。
パスキーとは
パスキーは、パスワードの代わりに使うログインの手段です。スマートフォンやパソコンのロックを解除するのと同じ操作、つまり指紋、顔、PINなどで、Webサイトやアプリにログインできます。
パスキーは、FIDO Allianceという業界団体が定めた標準と、W3CのWeb Authentication(WebAuthn)という仕様に基づくものです。どちらも特定の企業のものではないため、Apple、Google、Microsoftの製品や、1Passwordなどのパスワードマネージャーで同じように使えます。
パスワードとワンタイムパスワードの弱点
パスワードとワンタイムパスワードには共通の弱点があります。利用者とサービスが同じ秘密を持ち合い、ログインのたびに、人がその秘密やそこから作った値を入力することです。
パスワードの場合、サービスはパスワードから作った値を保存しておき、入力された値と見比べます。ワンタイムパスワードの場合も、サービスは数字の元になる秘密の値を、認証アプリと同じように持つ仕組みです。どちらも、入力された値が正しいかどうかを、サービスが手元の秘密で確かめます。
この作りから生まれる弱点を、攻撃の種類ごとに下の表にまとめました。左の列が攻撃の種類で、右の3列が方式ごとの結果です。
| 攻撃の種類 | パスワード | ワンタイムパスワード | パスキー |
|---|---|---|---|
| サービスから情報が漏れる | 使い回したパスワードで、別のサービスにも入られる | 数字の元になる秘密が漏れると、攻撃者も同じ数字を作れる | サービスには公開鍵しかなく、漏れてもログインに使えない |
| 偽サイトに入力する | そのまま使われる | 30秒ほどの間に本物のサイトへ入れられると、使われる | ブラウザーが偽サイトには鍵を使わない |
| 覗き見や聞き出し | 一度知られると、変えるまで何度でも使われる | 有効なあいだに伝えてしまうと、使われる | 人が読み上げられる値がない |
| 入力を記録するマルウェア(キーロガー) | 記録された値を何度でも使われる | その場で中継されると、使われる | 入力する値がなく、署名も毎回変わる |
ワンタイムパスワードは、数字が30秒ほどで変わるぶん、パスワードより被害は広がりにくくなります。それでも、人が値を書き写す限り、偽サイトへの入力や聞き出しは防げません。
長くてランダムなパスワードをパスワードマネージャーに保存すれば、推測される心配はほとんどなく、使い回しもなくせます。ただ、毎回サービスへ送る値であることは変わらず、盗まれれば使われてしまう点は同じです。パスキーは、送る値そのものをなくして、この弱点を克服しました。
鍵のペアで本人を確かめる
パスキーが使うのは、公開鍵暗号という仕組みです。登録のときに、対になる2つの鍵を作ります。
秘密鍵は利用者側の保存先で管理し、サービスには渡しません。サービスに登録するのは、対になる公開鍵だけです。
2つの鍵の関係は、実印と、役所に届けた印影に例えられます。サービスが持つのは印影の控えだけで、届いた書類の印が本物かを確かめる役目です。
公開鍵も、秘密鍵で作った署名が本物かを確かめられます。現実の印影なら、それを元に偽の判子を彫られるおそれがありますが、公開鍵から秘密鍵を作ることは計算の上でできません。そのため、サービスから公開鍵が漏れても、ログインはできない作りです。
ログインの流れ
ログインのときは、パスワードの代わりに、署名のやりとりをします。
- サービスが、ログインのたびに違う、使い捨ての問題(チャレンジ)を送ります
- 端末が、指紋、顔、PINなどで本人かどうかを確かめます
- 確認できたら、端末は秘密鍵でその問題に署名し、サービスへ返します
- サービスは、登録のときに受け取った公開鍵で署名を確かめます。正しければログインできます
問題は毎回変わるので、一度の署名を盗まれても、次のログインには使えません。
指紋や顔は何のために使うのか
ログインの流れの2番目で使う指紋や顔は、秘密鍵を使ってよいかを決める、手元の錠前の役目です。端末を拾った他人や、勝手に動くプログラムに、秘密鍵を使わせないためにあります。
指紋や顔の情報は、端末の中で確かめるだけです。FIDO Allianceは、生体の情報は端末から出ず、サービスに送られるのは確認に成功したという結果だけだと説明しています。サービスに指紋や顔の写真が保存されることはありません。
錠前にはPINも使えますが、指紋や顔なら、1回の操作で2つの確認がそろいます。秘密鍵の入った端末を持っていること(所持情報)と、持ち主の体であることです。PINと違って、肩越しに覗かれて盗まれる心配もありません。
ただし、パスキーの安全を支えているのは、指紋や顔ではなく鍵のペアのほうです。生体認証の強みと弱み、ほかの方法と比べたときの考え方は、生体認証とはで解説しました。
フィッシングに強い理由
パスキーがフィッシングに強いのは、生体認証を使うからではありません。鍵が、登録したサイトのドメインに結び付いているからです。
WebAuthnの仕様では、パスキーは登録したサイトのドメイン(RP ID)に結び付けられ、そのサイトでしか使えません。ドメインを確かめるのは、人ではなくブラウザーです。見た目を似せた偽サイトでは、ブラウザーがパスキーを差し出さないので、うっかり渡してしまうことがありません。
デジタル庁の本人確認のガイドラインも、ワンタイムパスワードは、偽サイトが入力を本物のサイトへその場で中継する攻撃には耐えられないと注意しています。日本証券業協会は2025年10月にガイドラインを改め、証券会社のログインに、パスキーのような「フィッシングに耐性のある多要素認証」を必須にするよう求めました。
パスキーでも防げないこと
パスキーにも、防げない攻撃があります。端末そのものが乗っ取られた場合です。
秘密鍵は、端末の中の守られた領域や、暗号化された保管庫に入っています。そのため、マルウェアが秘密鍵を抜き出すのは簡単ではありません。それでも、ログインを済ませたあとのブラウザーの状態を盗まれれば、パスキーを使わずにアカウントへ入られてしまいます。
パスキーが守るのは、ログインの手続きです。OSとブラウザーを更新し、出どころの分からないソフトを入れないといった、端末の守りは別に続けてください。
同期パスキーと端末固定パスキー
「パスキー」は、公開鍵と秘密鍵の組を使うログイン手段の総称です。FIDO Allianceは、複数の端末へ同期されるものを「同期パスキー」、1台から出ないものを「端末固定パスキー」と呼んでいます。保存先が端末かパスワードマネージャーか、という分け方ではありません。
同期パスキーでは、保存先が秘密鍵を暗号化し、クラウドを通じて同じ利用者の端末へ同期します。ログイン時の署名は、同期された鍵を使って手元の端末で作る仕組みです。新しい端末でも同じ保存先を使えるようにすれば、通常はパスキーを作り直さずに使えます。
端末固定パスキーは、秘密鍵が1台の端末やセキュリティキーから出ず、ほかの端末へ同期されません。その端末をなくすと、そのパスキーは使えなくなります。別の端末からログインするときに、手元の端末にあるパスキーを呼び出して使える場合もありますが、鍵そのものが移るわけではありません。
どちらも、鍵が登録先のドメインに結び付くため、フィッシングに強い方式です。ただし、アメリカ政府機関向けの認証の基準(NIST)は、もっとも高い水準のログインには、鍵をほかの端末へ移せる同期パスキーを使えないとしています。
製品での使われ方
同期パスキーの保存先には、端末標準のパスワードマネージャーであるiCloudキーチェーンやGoogleパスワードマネージャーと、別途導入する1Passwordなどがあります。端末で作ったから端末固定とは限りません。作成時に選んだ保存先と、その同期設定を確認してください。
注意したいのは、保存先からパスキーを消しても、サービス側の登録は残ることです。使わなくなったパスキーは、サービスの設定画面からも削除してください。
このサイトでは、パスワードマネージャーの1つである1Passwordを例に、GitHubのパスキーを保存する手順を紹介しています。
パスキーに対応していないサービスでは、2段階認証で守りを固めます。考え方は2段階認証とは、ワンタイムパスワードの仕組みはワンタイムパスワードとはで解説しました。
参考にした一次情報
- デジタル庁「DS-511 行政手続等での本人確認におけるデジタルアイデンティティの取扱いに関するガイドライン」(2025年9月30日)
- 日本証券業協会「インターネット取引における不正アクセス等防止に向けたガイドライン」(2025年10月15日)
- FIDO Alliance「Passkeys」
- W3C「Web Authentication: An API for accessing Public Key Credentials Level 3」
- NIST SP 800-63B Rev.4「Authentication and Authenticator Management」
- NIST SP 800-63B Rev.4「Syncable Authenticators」
- 1Password「Save and sign in with passkeys」
- Apple Developer「Passkeys」
- Google for Developers「Passkey support on Android and Chrome」
- Amazon「Amazon is making it easier and safer for you to access your account with passwordless sign-in」