パスキー / パスワード / 認証
パスワードとパスキー:現代のサインインの仕組み

パスワードとパスキーは同じサインイン画面に表示されることがありますが、それぞれ異なるセキュリティモデルに依存しています。パスワードは、あなたが知っていてサービスに送信する再利用可能な秘密情報です。パスキーは公開鍵暗号方式を使用します:秘密鍵はあなたのパスキープロバイダーに保持され、サービスは対応する公開鍵を保存します。サインインは、秘密鍵を明かすことなく、その管理権を証明します。
その違いにより、いくつかの一般的なパスワードの問題は解消されますが、その他のアカウントが無敵になるわけではありません。デバイスのセキュリティ、パスキープロバイダーのリカバリー、アプリケーションの実装、アカウントのリカバリーは依然として重要です。したがって、有用な比較は「パスワードは悪く、パスキーは完璧」というものではなく、どの攻撃を各設計が防ぎ、どの責任が残るかという点です。
パスワードサインインの仕組み
パスワードを作成するとき、適切に設計されたサービスはプレーンパスワードを保存する必要はありません。サービスは、ユニークなソルトを用いたパスワードハッシュ処理によって生成された結果を保存します。サインイン時に、サービスは入力されたパスワードを処理してその結果を比較します。しかし、攻撃者が見た目の似たサイトでパスワードを入力させると、攻撃者は再利用可能なシークレットを受け取り、それを本物のサービスで試すことができます。
再利用はダメージを拡大させます。同じパスワードが複数のアカウントを保護している場合、一度漏洩した資格情報は、クレデンシャルスタッフィングを通じて他の場所でも試される可能性があります。パスワードマネージャーによって生成され保存されたユニークなパスワードは、その拡散を制限します。多要素認証は追加の障壁を提供しますが、ユーザーがフィッシングページに入力できるコードも攻撃者によって中継される可能性があります。
パスキーが含むもの
パスキーは、特定のウェブサイトまたはアプリケーションのアカウントに関連付けられたFIDOクレデンシャルです。作成時に、認証器は暗号鍵ペアを生成します。公開鍵はサービスに登録されます。秘密鍵は、デバイス、セキュリティキー、オペレーティングシステムのクレデンシャルマネージャー、または互換性のあるサードパーティマネージャー上のパスキープロバイダーによって保護されます。
PIN、指紋、顔認証、またはパターンでデバイスのロックを解除すると、秘密鍵の使用が許可されます。生体認証のチェックは通常ローカルで行われ、サービス側には暗号証明が送信され、指紋や顔のデータは送信されません。 FIDOアライアンス パスキー 概要 は、パスキーを、デバイスのロック解除と同じ操作を通じて使用されるクロスプラットフォームのFIDOクレデンシャルとして説明しています。

パスキーサインインの仕組み
- サービスはブラウザまたはアプリケーションに新しい暗号化チャレンジを送信します。
- 認証器はリクエストが登録されたサービスに属していることを確認し、必要に応じてユーザーの同意またはデバイスの認証を求めます。
- 秘密鍵がローカルでチャレンジに署名します。
- サービスは既に保存している公開鍵で署名を検証します。
- 新しいチャレンジにより、古い応答が新しいサインインに再利用されるのを防ぎます。
ウェブの仕組みはWebAuthnを通じて標準化されています。 W3C Web Authentication仕様 は、信頼するサービスにスコープされた認証情報を、ブラウザと認証器によって仲介される形で定義しています。このオリジンへの結びつきはフィッシング耐性の中心であり、あるサービスのために登録された認証情報は模倣ドメインには提供されません。

パスキー が改善すること
- サインイン時に再利用可能なパスワードは送信されません。
- 各サービスごとに異なる認証情報が付与され、サイト間でパスワードの再利用がなくなります。
- 他のオリジンにあるフィッシングページは、正規サービスに登録された認証情報を要求できません。
- サーバー侵害が発生しても、クラックされ再利用される可能性のあるパスワードデータベースではなく、公開鍵が漏えいします。
- デバイスのロック解除により、複雑な秘密情報を覚えたり入力したりする必要がなくなります。
パスキー が単独では解決できないこと
- 侵害されたデバイスやロック解除されたデバイスは、依然としてアクティブなセッションをさらしたり、認証情報の使用を許可したりする可能性があります。
- 悪意のあるブラウザ拡張機能、アプリケーションの欠陥、セッションの盗難は、パスキー プロトコルの外で存在します。
- 弱いアカウント回復手段によって、強力なサインイン方法が回避される可能性があります。
- すべてのデバイスと回復方法へのアクセスを失うと、ユーザーがロックアウトされる可能性があります。
- ユーザーは、正当なサインイン後でも、有害な操作を承認するように騙されることがあります。
FIDOのガイダンスは、完全なフィッシング耐性には、通常のサインインステップだけでなく、登録と回復も含まれることを強調しています。弱いフォールバックによって攻撃者がアカウントをリセットできるサービスは、弱点を取り除くのではなく移動させただけです。
実践的な移行計画
- サポートする重要なサービスのためにパスキーを作成し、次にそのパスキーがどこに保存されているか、またどのように同期されるか、あるいはデバイスに限定されているかを確認します。
- サービスが許可する場合は、2台目の信頼できるデバイスやハードウェアセキュリティキーなど、複数の回復経路を追加します。
- 依然としてパスワードを必要とするサービスについては、パスワードマネージャーにユニークなパスワードを保持します。
- 残りのパスワードアカウントに対して、利用可能な最も強力な二要素認証を有効にし、可能な場合はフィッシング耐性のある方法を優先してください。
- メインデバイスが使用できない場合にアクセスできる場所に、リカバリーコードをオフラインで保管してください。
- デバイスを交換したり紛失した後は、古いデバイスとアクティブなセッションを確認してください。
パスキーは単に秘密の形状を変えるだけでなく、プロトコルそのものを変更するため、意味のある改善です。採用はしばらく混在するため、ほとんどの人は両方のシステムを必要とします:対応している場所ではパスキーを使用し、それ以外の場所では適切な多要素保護付きの強力でユニークなパスワードを使用してください。