本サイトでは、多要素認証や生体認証に関する記事を掲載してきました。
【コラムバックナンバー】
生体認証とは?種類とメリット・デメリット
身近になった顔認証
生体認証の必要性について改めて考えてみる
「生体認証が最良なことは理解しているが、多要素認証として生体認証を採用するとなると費用面でちょっとね…」という声もお聞きします。
そこで、今回は、生体認証と比べて安価に導入可能な「ワンタイムパスワード認証」についてまとめてみます。
そもそもワンタイムパスワードとは?
ワンタイムパスワード(OTP:One Time Password)とは、その名の通り一度だけ利用できるパスワードのことです。
通常のパスワードと異なり、毎回異なるパスワードが生成され、一度利用するともう利用できない使い捨てなので、セキュリティ性が向上します。
生成されたパスワードは、トークン型のOTP生成器やスマートフォンのOTP認証アプリケーションなどで確認できることから、認証の3要素(記憶認証、所持認証、存在認証)のうち、所持認証に該当します。
ワンタイムパスワードの仕組み
ワンタイムパスワードの仕組みは、以下の4つに分類されます。
時刻同期方式(TOTP:Time-Based One-Time Password)
ハードウェアトークン(カードやUSBなどワンタイムパスワードを生成できる専用機器)やソフトウェアトークン(iOSやAndroidのアプリケーションとしてスマートフォンにインストールするもの、Google Authenticator や Microsoft Autheniticator など)が時刻を基に、一定間隔(通常は30秒間または1分間)ごとにOTPを生成する方式です。
トークン/アプリと認証サーバーは、同じ時刻を基にOTPを計算するため、一般的には時刻がずれないようにする必要があります。
【メリット】
● 時刻に基づくため、パスワードが定期的に更新される。
● トークンやアプリがあれば、手軽に利用できる。
【デメリット】
● トークンや認証サーバーの時計がずれていると、認証に失敗する可能性がある。
● トークンの紛失や故障のリスクがある。
【利用用途】
● PCのログオンやアプリケーション、Webサービスへのログイン
● ネットバンキングのログインや取引
カウンタ同期方式(HOTP:HMAC-Based One-Time Password)
トークンのボタンを押すたびにカウンタが増加し、そのカウンタを基にOTPを生成する方式です。
認証サーバー側も同じカウンタ値を基にOTPを生成し、照合します。
【メリット】
● カウンタと秘密鍵を用いてOTPを生成するため、比較的簡単に実装できる。
● 時刻に依存しないため、トークンの時計同期は不要。
【デメリット】
● トークンと認証サーバーが同じカウンタを使用している必要があるため、カウンタがずれると認証できなくなる可能性がある。
● トークンの紛失や故障のリスクがある。
【利用用途】
● 銀行のセキュリティトークンや企業のVPN認証
● ネットワークに依存せず、オフラインで利用するシステム(企業の内部システムなど)
チャレンジ・レスポンス方式
認証サーバーがランダムなチャレンジ(文字列)をユーザーに送信し、ユーザーはそのチャレンジと事前に共有された秘密鍵を基にレスポンス(答え)を生成して返信します。
認証サーバーは、ユーザーからのレスポンスを検証し、答えが正しければ認証が成立します。
【メリット】
● チャレンジとなる文字列が毎回異なるため、高いセキュリティを維持できる。
● チャレンジに基づくレスポンスを生成するため、通信路の盗聴に強い。
【デメリット】
● 専用のハードウェアやソフトウェアが必要な場合がある。
● ユーザーにとって、操作が複雑になる。
【利用用途】
● 金融機関や証券取引所など、特に高いセキュリティが求められる場面で使用
● 高セキュリティが要求される企業や政府機関、軍事用途など
マトリクス方式
マトリクス表(ランダムな数字や文字が書かれた表)を使用し、それに基づいてパスワード文字列を選択する方式です。ログイン時に認証サーバーが行番号と列番号を提示するので、その指示に従ってユーザーが文字列を入力します。
【メリット】
● インターネット接続がなくても、マトリクスカードやトークンに記載されたOTPリストを利用して認証できる。
● 事前に配布されたマトリクス表を使用するため、システムの実装が比較的簡単である。
【デメリット】
● マトリクス表が盗まれたり紛失したりするとセキュリティリスクになる。
● ユーザーは、行番号や列番号を参照してOTPを入力するため、手間がかかる。
【利用用途】
● ネットバンキングのログインや取引
● 特定のオンラインサービス
最後に
DDS のオンプレミス認証基盤である「EVEMA(イヴエムエー)/ Themis(テミス)」、クラウド認証サービスである「EVECLOUD(イヴクラウド)」では、時刻同期型のワンタイムパスワードプラグインを用意しています。
認証を行うためにトークンを所持する必要があり、故障や紛失のリスクはありますが、デメリットに挙げたもう一点の時刻のずれについては、認証サーバー内でトークンの時刻ずれを自動補正する機能を持っています。また、同時刻に発行したワンタイムパスワードは1回しか利用できない(同時刻であっても同じワンタイムパスワードを2回以上利用できない)という特性も持っています。
多要素認証の1つとして、セキュリティを保ちつつも安価に導入可能な「ワンタイムパスワード認証」を検討してみてはいかがでしょうか。
※記載の製品名は、各社の商標または登録商標です。