近年、多くのWebサービス・アプリケーションでは、フィッシング攻撃などのリスクからユーザーを守るためにMFA(多要素認証)の導入が進んでいます。今後はサービスへのログイン時にスマホやセキュリティキーを使用したMFAがスタンダードになっていくことでしょう。本記事では、セキュリティキーとは何か、使用する理由や特徴、利用方法などを簡単にご紹介します。技術的な解説記事ではなく、セキュリティキーについて一般的な情報が知りたいという方向けの内容となります。
目次
セキュリティキーとは
セキュリティキーとは、MFA(多要素認証) に用いられる外付けのハードウェアセキュリティデバイスです。パスワードに代わる新たな認証技術「FIDO (Fast Identity Online)」(*1)がベースとなっており、フィッシング攻撃や中間者攻撃に耐性があり、アカウントの乗っ取りを防止することが可能です。
※以降、本記事で紹介するセキュリティキーはFIDO2(FIDOの新仕様)に対応したものを指します。
(*1) ここでは技術的な解説は行いませんが、「FIDO / FIDO2 / WebAuthn / パスキー(Passkeys)」と呼ばれるものは、ここでは「パスワードに代わる新たな認証技術」ぐらいの認識で問題ないかと思います。
セキュリティキーを使用する理由
多くのWebサービスやアプリケーションでは、ユーザー認証において「ID / パスワード」の組み合わせが一般的に利用されています。しかしながら、フィッシングなどの攻撃手法が進化する中で、IDやパスワードが不正に入手されるリスクが増大しています。このような状況において、従来の認証方式だけでは十分なセキュリティを確保することが難しくなっています。こうした攻撃からユーザーを保護するための手段として、セキュリティキーによるMFAが注目されています。セキュリティキーを用いることで、物理的な鍵がない限りログインできない状況を作り出すことが可能です。この仕組みにより、サイバー犯罪者による不正アクセスの可能性を大幅に減少させることが期待されています。
セキュリティキーの特徴
フィッシング耐性 フィッシングを簡単に説明すると、「URLがよく似た偽物サイトに誘導して認証情報を入力させ、アカウントや情報、金銭などを奪う」という行為をフィッシングと言います。セキュリティキーを用いた認証の場合、必ず機械的にドメイン名(URL)の確認をして、一致しているサイトに対してのみ認証情報(結果)を渡す仕組みがあります。そのため、偽のURLにアクセスした場合は、認証情報を渡してしまうことがなく、第三者に情報を盗まれることがありません。
利便性 セキュリティキーをUSBポートに挿し込み、セキュリティキーに予め設定した「PINコードの入力」または「生体の確認」をすることで認証が完了します。ユーザビリティを損なうことなく強力な認証が可能です。(認証方法の詳細は後のセキュリティキーの使用方法で説明します。)
堅牢性 従来のパスワードによる認証では、パスワードそのものが秘密情報であり、ネットワークの盗聴やサーバー攻撃などにより盗まれる危険性がありました。一方、セキュリティキーの場合は、秘密情報はセキュリティキー内部に保持され、取り出すことができないように設計されています。
セキュリティキーはどこで利用できるのか?
セキュリティキーのMFAに対応しているサービスであればセキュリティキーをご利用いただけます。現在利用しているサービスが対応しているかどうかについては、各種サービスのMFA対応ページをご確認ください。ブラウザの検索欄に「利用しているサービス名 MFA」などで調べるとすぐに見つかると思います。
※必ず「セキュリティキー 、FIDO2またはWebAuthn」対応と記載されているかを確認してください。MFAで利用できるものはこれまで紹介してきた、新しい認証技術である「FIDO2やWebAuthn」だけとは限りません、SMSやワンタイムパスワードなどに対応したMFAもあるためご注意ください。
Windows端末のログインにセキュリティキーを利用したい場合は弊社ソリューションがおすすめです。
セキュリティキーの購入
弊社ソフト技研はセキュリティキーの販売代理店をしています。これまで説明してきたFIDO2対応セキュリティキーに関して、弊社で取り扱いのあるセキュリティキーを一部ご紹介します。
セキュリティキーには認証時にPINコード入力を求める(生体項目にチェックなし)ものと、生体を確認するものがあります(生体項目にチェックあり)。PIN入力タイプと生体確認タイプどちらを利用するかについては、ご利用シーンに応じて選択していただければと思います。また、USBの形状別に取り揃えており、NFC、BLEに対応したモデルも販売しています。ご購入の際はAmazonにてお買い求めください。なお大量購入時は弊社までお問い合わせください。
セキュリティキーの使用方法
セキュリティキーを初めて購入した方は驚くかもしれませんが、多くのセキュリティキー製品は詳細なマニュアルなどが入っていないことが多く、戸惑うことがあるかと思います。ここでは初期セットアップから使い始めるまでを解説していきます。
下記の環境を利用して説明しています。
端末: Windows 11
※Windows 11でなければ動作しないということではありません。
ブラウザ: Chrome
※その他Edge、 Firefox、 Safariなどの主要ブラウザの最新バージョンを利用していればどのブラウザでも構いません。
セキュリティキー: Yubico社の「YubiKey 5 NFC」 ※その他FIDO2対応セキュリティキーであれば同様の操作が可能です。
セキュリティキーを使い始めるためのステップは以下です。
セキュリティキー初期セットアップ
セットアップに入る前に、なぜ初期セットアップが必要なのかについて説明します。セキュリティキーを利用した認証では、本人確認のために、「PINコードの入力」または「生体の確認」が求められます。この操作に必要なPINコードや生体は予め設定しておく必要があります。
※設定していない場合は利用時にセットアップを促されます。
※生体機能を利用する場合は、生体対応のセキュリティキーを購入する必要があります。
購入直後のセキュリティキーにはPINコードや生体情報が設定されていません。「PINコード入力タイプのセキュリティキー」、「生体確認タイプのセキュリティキー」、どちらのセキュリティキーも初めにPINコードを設定する必要があります。
下記のブログを参考にPINコードの設定をしてください。
※生体確認タイプのセキュリティキーをお使いの場合はPINコード設定後、生体の登録もしてください。
Windows端末をお持ちの方
macOSまたはLinux(GUI)端末をご利用の方
セキュリティキーの登録
利用するサービスでセキュリティキーを使用するには、MFAの設定としてセキュリティキーを登録する必要があります。今回はデモサイト「webauthn.io」を利用して登録時の説明を行います。
※実際に利用するサービスでセキュリティキーを登録する場合は、各種サービスの設定方法に従ってください。登録と認証の流れ自体は上記デモサイトと同じ様になっているかと思います。
「webauthn.io」にアクセスし、ユーザー名を入力、「Register(登録)」ボタンをクリックします。
下記画面が表示された場合は「別のデバイスを使用する」をクリックします。
パスキーの保存場所が聞かれるので、「セキュリティキー」をクリックし、「次へ」をクリックします。
セキュリティキーのセットアップ画面で「OK」をクリックします。
セットアップの続行画面で「OK」をクリックします。
※ID情報をセキュリティキーに覚えさせる機能が利用できる場合は、こちらのポップアップが表示されます。(ID情報の記憶に対応しているかどうかは利用しているサービスにより異なります。)
セキュリティキーの挿入が求められるため、USBポートにセキュリティキーを挿入します。
※既にUSBポートに挿入済みであれば、このポップアップは表示されません。
PIN入力画面で、セキュリティキーに設定したPINコードを入力し、「OK」をクリックします。
※入力枠でEnterを押しても次に進みます。
※生体確認タイプのセキュリティキーの場合はPIN入力ではなく、生体の確認が求められます。
セキュリティキーへのタッチが求められるので、セキュリティキーの点滅部分にタッチします。
下記のポップアップが表示されるとセキュリティキーの登録は完了です。
補足
セキュリティキー登録時の操作にはタイムアウト時間が設けられており、登録操作に時間がかかってしまうと、登録に失敗することがあります。その際はもう一度やりなおしてください。
セキュリティキーを忘れたり、紛失したりすることで、サービスに入れなくなることを防ぐために、バックアップ用にもう一本登録しておくことをおすすめしています。(ご利用するサービスが複数のセキュリティキーを登録できる場合に限る)
セキュリティキーでの認証
登録に引き続きデモサイト「webauthn.io」でセキュリティキーを使用した認証を行います。ユーザー名を入力した状態で、「Authenticate(認証)」をクリックします。
パスキーを使用してサインインというポップアップが表示されるので、「セキュリティキー」をクリックし、「次へ」をクリックします。
セキュリティキーの挿入が求められるため、USBポートにセキュリティキーを挿入します。
※既にUSBポートに挿入済みであれば、このポップアップは表示されません。
PIN入力画面で、セキュリティキーに設定したPINコードを入力し、「OK」をクリックします。
※入力枠でEnterを押しても次に進みます。
※生体確認タイプのセキュリティキーの場合はPIN入力ではなく、生体の確認が求められます。
セキュリティキーへのタッチが求められるので、セキュリティキーの点滅部分にタッチします。
認証に成功するとログイン完了です。
補足
セキュリティキー認証時の操作にはタイムアウト時間が設けられており、認証操作に時間がかかってしまうと、認証に失敗することがあります。その際はもう一度やりなおしてください。
PIN入力に8回連続で失敗すると、セキュリティキーがブロック(PIN入力を受け付けない)状態となり、リセット操作を行わなければ使用できなくなります。また、リセットしたタイミングで、認証情報がクリアされ、各種サービスへの再登録が必要になります。 詳細は「セキュリティキーのリセット方法」をご確認ください。
FAQ
Q1:
PINコードに設定可能な文字と長さは何ですか?
A1:
PINコードに設定可能な文字や長さは以下です。
使用可能文字: 半角英数字を含むUnicode文字
PINの長さ: 4~63まで設定可能
Q2:
PINを変更することはできますか?
A2:
可能です。下記のブログが参考になります。
Windows端末をお持ちの方
macOSまたはLinux(GUI)端末をご利用の方
Q3:
PINコードがブロックされたと表示されました。どうすれば良いですか?
A3:
PIN入力に8回連続で失敗すると、セキュリティキーがブロック(PIN入力を受け付けない)状態となり、リセット操作を行わなければ使用できなくなります。また、リセットしたタイミングで、認証情報がクリアされ、各種サービスへの再登録が必要になります。詳細は「セキュリティキーのリセット方法」をご確認ください。
Q4:
セキュリティキーを紛失してしまいました。どうすれば良いですか?
A4:
ご利用しているサービスのサポートページにアクセスし、セキュリティキーを紛失した際のアカウントリカバリー方法をご確認ください。
※組織で利用している場合は、組織内のルールに従いアカウントリカバリーを行ってください。ルール等がなければ、組織の担当者にお問い合わせください。