Vincent
Created: June 20, 2025
Updated: June 24, 2025
パスキーは非対称暗号を使用して生成され、公開鍵と秘密鍵という暗号鍵のペアが作成されます。秘密鍵はユーザーのデバイスに安全に保存されたままで、公開鍵はサーバーと共有されます。ユーザーが登録またはログインする際、デバイスはこの鍵ペアを作成し、これを使用して秘密鍵を一切公開することなく、安全に本人確認を行います。
パスキーは非対称暗号に依存しています。これは、2つの異なる、しかし数学的に関連付けられた鍵、すなわち公開鍵と秘密鍵を使用する方法です。以下にそのプロセスの詳細を説明します。
鍵ペアの生成: ユーザーがパスキーの作成を開始すると、そのデバイスは暗号鍵のペアを生成します。秘密鍵はユーザーのデバイス(例:スマートフォンのセキュアエンクレーブ内)に安全に保存され、公開鍵はサーバーに送信されて保存されます。
登録プロセス: サービスへの初回登録時に、ユーザーのデバイスは鍵ペアを作成します。秘密鍵は決して共有されず、デバイス上で保護されたままです。一方、公開鍵はサーバーに送信され、ユーザーのアカウントと共に保存されます。
認証プロセス: ユーザーがログインを試みると、サーバーはユーザーのデバイスにチャレンジを送信します。デバイスはこのチャレンジに秘密鍵を使用して署名します。その後、サーバーは対応する公開鍵を使用してこの署名を検証し、ユーザーの秘密鍵を一切公開することなく本人確認を行います。
公開鍵基盤(PKI)は、パスキーのセキュリティの基礎となります。PKIは公開鍵とそれを認証するデジタル証明書を管理します。PKIは、ユーザーのデバイスとサーバー間の通信が安全であることを保証し、認証プロセス中の中間者攻撃を防ぎます。
Enjoyed this read?
🤝 Join our Passkeys Community
Share passkeys implementation tips and get support to free the world from passwords.
🚀 Subscribe to Substack
Get the latest news, strategies, and insights about passkeys sent straight to your inbox.