パスキー対応させてきてるサービスが増えてきている
2023年9月以降、パスキーに対応したというニュースが多く見受けられます。
などなど…
パスキーとは
現在あるサービス・アプリなどはID(Email)とパスワードを使用してアカウント認証を行うことがデフォルトとなっています。
ですが、パスワード管理はユーザーの責任に任されていているためパスワードを忘れないように1PasswordやLastpass、将又Excelなどでパスワードを管理して忘れないようにしているかと思います。
また、パスワードが漏れてしまっては直ぐに不正利用されてしまう危険も潜んでいます。
不正利用を防ぐために2段階認証を採用するサービスが増えてきました
ですが、セキュリティ強化の1つにはなっているが認証のステップが増えているためユーザーとしては面倒極まりないです。
その中2023年9月以降に大手のAmazonにて2段階認証を突破されたというニュースは多くのエンジニアの記憶残ったはずです。
そこで最近導入が進められているのがパスキーになります。「簡単・便利・安全」な認証の仕組みとし注目を集めています。(牛丼屋さんみたい)
パスキーはFIDOアライアンス
というパスワードレス認証基準を普及させる団体が策定しているものになります。
パスワードを使用せず、指紋認証
や顔認証
という生体認証を利用してアカウント認証を行うことが出来ます。
正式名称はマルチデバイス対応FIDO認証資格情報
で名称通り複数端末での利用も可能になっています。
Apple・Google・Microsoftなどが導入を進めています。
パスキーの仕組み
秘密鍵と公開鍵を使用してアカウント認証を行う仕組みになっています。
この説明では従来のFIDO認証と変わらないのでは、と思うかもしれません。秘密鍵と公開鍵を使用してアカウント認証を行いますが、FIDO認証の欠点がありまして、「ユーザーの持っている端末を変更・紛失」した場合です。
FIDO認証は端末自体に秘密鍵を持たせているため、「ユーザーの持っている端末を変更・紛失」した場合には登録・設定を再度行う手間がかかってしまいます。
そこでパスキーは秘密鍵と公開鍵の他に同期鍵を用意してクラウド上で管理する仕組みを取り入れました。これによりユーザーが持っている端末が変わった際にクラウド上から同期鍵を呼び出すことで登録・設定を再度行う必要がなくなります。
パスキーの今後の課題
課題として3つが挙げられます
- サイト・アプリなどでパスキーに対応しているサイトが少ない・対応していても完全ではない
- 端末のバージョンをアップデートしていたい・アップデート自体ができない環境ではパスキーを利用できない
- 機種変更、それもiPhoneからAndroid・AndroidからiPhoneのようにマルチデバイス対応でもプラットフォーマーを超えるパスキー共有は不可能なため、再度パスキーの登録が必要
1つ目は対応してくれるサービス・アプリが増えていくことで解消されていきます。ですが、冒頭でもお話した様に最近は多くのサービスでパスキーに対応する流れが来ています。
2・3つ目は第三者によるパスキーを管理できるプラットフォームが登場を待つしかないです。
現状使えそうなのはCorbado
かと自分では思っています。(現在どこまで使用できるか研究中です)
自分が得意とするNext.js
とCorbado
を使用した簡単なパスキー実装をまとめているので是非、参考にしてもらいパスキーについて知っていただければ幸いです。
参考