Safari 16 が「Passkey」をサポート
前置き
この記事では、WWDC関連の特にmacOS関連に力を入れてまとめていきます。
従来の認証方法
従来の認証方法として、パスワード認証や専用のツールを使うほか、二要素認証として使い捨てのワンタイムパスワードやSMSを用いるなどでセキュリティを強固にしてきました。
しかし、従来型には欠点がありました。それは、デバイスの盗難やフィッシング詐欺等によって認証情報が流出してしまうことです。
これを解決するべく出来たのが、今回紹介するPasskeyとなります。
Passkeyとは何か
Passkeyとは、デバイスごとにユニークなキーペアを生成します。公開鍵はサーバー側に保存され、秘密鍵はデバイスに保存されます。
まず初めに、サーバー側から本物の秘密鍵保有者にしか解除出来ない暗号を送信します。
次に、これを見事解除できれば本人であると認め、ログインすることができます。
この仕組みのことを「公開鍵暗号化方式」と言います。
これだけでは、公開鍵を流用したフィッシング詐欺に対抗できません。
そのためAppleデバイスでは、iCloud Keychainを用いて、誤って偽物のサイトで使用しないように対策が取られています。
参考文献
- “Meet passkeys” https://developer.apple.com/videos/play/wwdc2022/10092/ (2022/11/02 参照)
- “Supporting passkeys” https://developer.apple.com/documentation/authenticationservices/public-private_key_authentication/supporting_passkeys (2022/11/02参照)
- “RFC 7518 (ES256について)” https://www.rfc-editor.org/rfc/rfc7518 (2022/11/02 参照)