ネットバンクのように強固なセキュリティが必要なWebサービスでは通常のIDとパスワードだけによる認証ではセキュリティの観点から安全とは言い切れません。なぜならフィッシングサイトのような悪意のあるページでパスワードが漏洩したり、通信を傍受されることで、パスワードが盗聴されたりすることがあるからです。
そこでインターネット上の取引を安全に行うために、一度限りの使い捨てのパスワードとして「ワンタイムパスワード」が登場しました。このワンタイムパスワードを生成する方法はいくつかあるのですが、その中の一つが「セキュリティトークン」を使う方法です。今回はセキュリティトークンの仕組みやメリット、そして種類について解説します。
セキュリティトークンとは
セキュリティトークンとは「ワンタイムパスワード」を生成する機械やソフトウェアのことです。ワンタイムパスワードとは、言ってみれば一度だけ使うことを前提とされた「使い捨てのパスワード」のことです。
最近、正規のWebサービスとそっくりに作られた悪意のあるサイトを構築し、ユーザーをだましてIDとパスワードを盗み取られる手口が普及しています。IDとパスワードだけのログイン管理では、このような悪意のあるページからユーザーを保護することは困難です。
そこでIDとパスワードによる認証に別の要素を追加して認証を行う「二要素認証」が普及してきています。二要素認証には、指紋や静脈などを使う「生体認証」もありますが、専用の読み取り機が必要になり、高いコストが必要です。またインターネット上のサービスの認証には適していません。
そこでインターネット経由で二要素認証が行える仕組みとして普及したのが、ワンタイムパスワードです。そしてそのワンタイムパスワードを生成するための機械やソフトウェアがセキュリティトークンです。
セキュリティトークンの仕組み
セキュリティトークンで生成されたワンタイムパスワードは”一度使ったら再利用できない”という特徴があります。セキュリティトークンには、予めセキュリティトークンのシリアル番号とユーザーのIDが関連付けられており、その関連付いたIDをもとにしてセキュリティトークンを使うと、現在使用可能なパスワードが表示される仕組みです。セキュリティトークンを使い表示されたパスワードによって認証に成功すると、そのパスワードは破棄され二度と使えなくなります。
セキュリティトークンでは時刻同期方式(タイムスタンプ方式)が採用されています。セキュリティトークンと認証を行うサーバー側で予め時刻と同期しておく必要があり、もし時刻にずれが発生している場合には正常に認証されなくなります。
またセキュリティトークンの中にはワンタイムパスワードだけでなく、デジタル署名に必要な、署名鍵の生成と保管を行えるものもあります。セキュリティトークンを使うことで、安全なデジタル署名にするだけでなく、署名鍵はユーザーの識別情報としても使用できるので、そのままユーザー認証としても使用可能です。
セキュリティトークンのメリット
セキュリティトークンのメリットは、”利用者ごとに異なる情報を保持している”という点です。そのため、セキュリティトークンを所有していること自体が認証を成功させるためのステップとして機能しています。
そして認証に必要なパスワードをセキュリティトークンが自動生成してくれるため、ユーザーはパスワードを記憶する必要がありません。またユーザーと認証を行いたいサーバーとの間の通信が盗聴されていて、ワンタイムパスワードの情報が盗み取られたとしても、ワンタイムパスワードの一度しか使えないという特徴を持つため、悪意のある攻撃者からの不正なログインを防ぐことも可能です。
強固なセキュリティが必要とされるネットバンクでは、セキュリティトークンを使ったワンタイムパスワード方式の認証を採用しているところが数多くあります。インターネットを使って便利に取引を行いつつ、セキュリティトークンで高い信頼性を実現している点が、セキュリティトークンを使用する最大のメリットです。
セキュリティトークンの種類
セキュリティトークンとはハードウェアトークンとも言われ、ポケットやお財布に入れて持ち運べるサイズのものが大半です。中にはキーチェーンにつなげられるように設計されているものもあります。
セキュリティトークンには形状や方式によっていくつかの種類があります。以下に主なセキュリティトークンの種類について紹介します。
Bluetooth型トークン
無線通信方式の一つであるBluetoothで通信が可能なタイプです。Bluetooth型トークンの場合はUSB端子がついている場合も多く、そのようなタイプはBluetoothが使用できない環境でもUSB接続を使って通信が可能です。
非接続型トークン
現在、最も普及しているのが非接続型トークンです。単独で使うことができる点がメリットですが、バッテリーの寿命がUSB型トークンと比較して3~5年程度と短いのが難点です。コスト削減のために、バッテリー部分のみ交換できるタイプもあります。
PCカード型トークン
ノートパソコン用の規格であるType IIのPCカード専用のセキュリティトークンです。例えばマイコトロンクス社がPCカードに入れたノートパソコン用のFortezzaカードトークンを製造しています。
スマートカード型トークン
スマートカード型のトークンは、他のタイプのセキュリティトークンと比べて、費用を抑えることができます。しかし耐久性が弱いため、寿命が短いというデメリットもあります。
スマートカード型のセキュリティトークンはカード型の形状であることから、お財布に入れて持ち運べるメリットもあり、ジャパンネット銀行などで採用されています。ボタンが1つだけついたワンボタンタイプと、複数のボタンがついたキーパッドタイプがあります。
ワンボタンタイプは、ボタンを押すだけでワンタイムパスワードの生成が可能です。しかし紛失してしまった場合、悪用されやすいという特徴があります。一方で、キーパッドタイプは予め設定したパスワードを入力してから、ワンタイムパスワードを生成するもので、セキュリティ面でも安心です。このため、多くの金融機関では、キーパッドタイプのセキュリティトークンへと移行が進みつつあります。
参照日本の銀行初、薄さ0.8ミリのカード型トークンを導入/ジャパンネット銀行
USB型トークン
パソコンと接続して通信できるUSB端子を使ったセキュリティトークンです。コストが安く専用の機器なども必要としないことが特徴です。
USB型トークンには大きく2つの種類に分類できます。1つ目はUSBケーブルを接続するだけで認証するタイプと、もう1つはワンタイムパスワード生成機能がついているタイプです。USBは基本的にどのパソコンにも採用されている接続端子であり、ICカード形式のように専用の機器は必要とされません。また、ワンタイムパスワード生成機能が付いたトークンは、キーホルダーなどにつけて持ち運べるトークンとして利用できます。
ソフトウェアトークン
ソフトウェアトークンは専用のハードウェアを必要としないセキュリティトークンです。スマートフォンアプリとして提供されるものもあり、ハードウェアトークンのように持ち運びする必要がありません。
まとめ
セキュリティトークンを利用することで、金融機関などで必要とされる認証をより安全に行うことができます。これまで紹介してきたようにセキュリティトークンには、様々な種類のものがあることをお分かりいただけたかと思います。
特にハードウェアトークンは、「What you have(本人しかもっていないもの)」を利用した認証であり、パスワードと同様に厳重に管理する必要があります。直接ネットワークと接続していないため、セキュリティの観点で安心と言えますが、使用時に紛失やバッテリー切れが起きていないように、普段から適切に管理することが重要です。