本記事は、2022年5月に開催されたTechFeed Conference 2022のセッション書き起こし記事
皆さんこんにちは。えーじです。今日は
パスワードだけでは守りきれない世の中に
皆さんご存知のように、今多くのWebサイトはパスワードを使ったログインが主流です。
しかし、どんなに堅牢なシステムでも、ユーザーさんが弱いパスワードを作ってしまったり、同じパスワードを複数サイトで使い回してしまったり、フィッシングに引っかかってしまえばアカウントは乗っ取られてしまいます。
近年フィッシングが急増していることからもわかるように、パスワードだけのシステムでは守りきれない世の中になってきているというのが現実です。

最近増えてきている二段階認証ですら、フィッシングの前には完璧ではないという現実もあります。
ここで思い出してほしいのが、認証の三要素 - 知識、所有、生体です。これまでパスワードは

これを複数要素にすることで、認証がより堅牢になると言われています。
二段階二要素認証を実現するWebAuthnとFIDO
そこで登場するのが

WebAuthnは、公開鍵ペアを作り安全に保管できる、認証機と呼ばれるFIDO標準に対応したハードウェアを制御するためのブラウザ機能です。
FIDOを使えば、パスワードによる知識認証と所有認証を司るセキュリティキーを組み合わせることで二段階二要素認証が実現できます。

とくに、FIDOクレデンシャルはオリジンと紐づくため、フィッシングに強いという特徴があります。実際、これによってほぼ鉄壁の守りを実現したという報告をGoogleが出しています。

プラットフォーム認証機を使った再認証
とはいえ、セキュリティキーをユーザーひとりひとりに購入してもらうのは、エンタープライズ環境などであれば良いのですが、一般ユーザには現実的ではありません。
そこで登場するのがプラットフォーム認証機です。プラットフォーム認証機は、スマートフォンやコンピュータに含まれているもので、デバイスのアンロック機能として、生体認証も含めてセキュリティキーと同様の働きをします。

これにより、所有認証だけではなく、生体または知識の認証も同時に満たすことができるため、一段階二要素認証が実現できるというところがポイントです。

これを使うとログインが劇的に進化します。ユーザーさんはパスワードを入力することなく、生体認証一発で本人であることが証明できるからです。
これはPayPalやYahoo! JAPAN、Googleのパスワードの確認ページなどで実用化されています。とくに


ただ、これですべてのサイトがパスワードを廃止できるかというと、まだそういうわけにはいきません。なぜなら、認証キーを作成したクレデンシャルがデバイスの外に出ることはないので、たとえば、新しいデバイスを使う際には、再度別の方法で一覧ログインし直さなければならないからです。その際はまだまだ弱点の残るパスワードやSMS、メールなどを使わなければならないため、そこを攻撃されてしまうのであればWebAuthnで安全性が向上したことにはなりません。
passkeys - クレデンシャルをプラットフォームデバイス間で同期する
そこで登場するのが
これはFIDOアライアンスを通じた約束事になっているため、GoogleであればAndroidとChrome OS、AppleであればmacOS / iOS / iPad OS、MicrosoftであればWindowsがプラットフォームということになります。

たとえば、Android上のChromeで作ったパスキーは、同じGoogleアカウントを使用している限り、新しいAndroid上でも同様にアクセスすることができます。
AppleはmacOSで作ったパスキーを、同じiCloudアカウントを使っていれば、iOSでもアクセスできるようにすると発表しています。
Microsoftも同様の計画と思われます。

では、

実際の体験はデモをご覧ください。






このように、Chromeの場合はQRコードを表示して、それを電話でスキャンすることによって、ログインすることができます。一度ログインしたあとは、新しくパスキーを使えばそのプラットフォームはスマートフォンを使う必要はなくなります。
パスキーについてはAndroid上での実装を今年、年内中に予定しています。

このように、パスキーを使えば従来デバイスに縛られていたWebAuthnのクレデンシャルが、新しいデバイスでも利用できるようになるため、パスワードレスの話がいよいよ現実的になるというイメージはつかめたと思います。
とはいえ、実際の技術の進歩は段階的なものです。既存のパスワードを本当に廃止できるのはまだ先のことになると予想されますので、そのためにも、パスワードのみのサービスの場合は二段階認証などの安全対策は今からでも導入されることをおすすめします。
というわけで、