説明

個人の存在を条件とする、トークンによるトランザクション認証

【課題】コンピュータに接続した認証トークンを、悪意のあるプログラムに乗っ取られることから保護する。
【解決手段】ホストとサーバとの間のトランザクションを認可するため、トークンをホストへ接続し、ホストはユーザの識別証明を受信し、トークンおよび/あるいはサーバによって識別証明を検証する。トークンが人間による規定の作用を検出した場合、トークンはトークン認証データを生成し、ホストはトークン認証データをサーバへ送信する。認証データを受信すると、サーバはトランザクションを認証する。認証するデバイスは、デバイス・インターフェイス、コネクタ、アノニマスな人間による規定の作用を検出したことを条件として、一度だけトランザクションを認証するコントローラを含む。人間の作用としては、デバイスのユーザ・インターフェイスにおける出力に同期させて、ホストのユーザ・インターフェイスで一つ以上の入力を提供する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コミュニケーション・ネットワーク上のトランザクションを認証するためのハードウェア・トークンに関する。
【背景技術】
【0002】
インターネットおよび移動コミュニケーション・ネットワークは、主に電子商取引に関連して、ますます金融取引に用いられるようになって来ている。ほとんどのトランザクションでは、トランザクションを要請する者のIDが証明されなければならない。コミュニケーション・ネットワークは、しばしば不安定であり、また、悪意のあるソフトウェアが存在することも当り前になっている。その結果、個人のパソコンおよび携帯電話は、信用できるとはみなされず、パソコンあるいは携帯電話へタイプ入力したこと、また、そのようなデバイスを用いて通信したことは、何であれ、他者によるハッキングによって暴露されるものである。結果、詐欺的なトランザクションからの損害は、毎年何億ドルもあり、消費者、販売業者および金融機関が負担している。
【0003】
より安全な識別を提供するために、「トークン」または「スマートカード」という形態の、特殊な電子ハードウェアが開発されて来た。そのようなハードウェアは、通常の攻撃に十分に耐えるよう、改ざん不可能な構造と暗号法とを組み合わせている。「チャレンジ&レスポンス」、「一度きりのパスワード」または「時間依存キー」として知られる技術は、たとえトークンによるトランザクション・セッションが遮断されたとしても、再度のトランザクションにセッションを再利用できないことを保証している。
【0004】
したがって、金融機関が発行したトークンを、例えば、USBインターフェイスあるいはスマートカード・リーダを用いてパソコンに結合したとき、金融機関のサーバとパソコンとの間の認証セッションは、トークンの真正を満足に検証する。検証の一部として、トークンは、トークン認証データをサーバへ送信する。トークンの真正のそのような検証を、本文では、トークンの「認証」と呼ぶ。しかしながら、実際に重要なのは、トークンの真正ではなく、トークンの所有者の真正である。これは、トークンの不正使用に関わる二つの抜け道が依然として存在することを示す。1)トークンが物理的に遺失または盗難された場合、それを、その合法的な所有者のIDを盗むために用いることができる。2)コンピュータ内の悪意あるプログラムは、コンピュータに結合したトークンを操作して、犯人の利益となるトランザクションを不正に発生させることができる。第一の抜け道を解決するために、セキュリティ・プロバイダは、「あなたが持っているもの」(すなわち、トークン)を、「あなたが知っていること」(例えば、PINコード)および「あなたが誰であるか」(例えば、指紋等の生物学的属性)の少なくとも一つと組み合わせたマルチ・ファクタ認証パラダイムを開発している。
【0005】
悪意のあるプログラムの制御下で作動しているコンピュータのケースは、ウイルス感染した個人のコンピュータ、またはインターネット・カフェあるいはオフィス・サービス店にある不特定多数の者が使用するコンピュータである。両ケースでは、コンピュータのキーボードから入力したPIN、あるいはパソコンに結合したデバイスで読み込んだ指紋イメージが、悪意あるプログラムによって傍受され、それから不正なトランザクションのためにトークンを作動させるのに再利用される可能性がある。長時間に亘ってトークンをホストに挿入したままにすると、この危険性は大いに高まる。トークンが、例えば、USBフラッシュメモリ・キー等の多目的デバイスの一部を形成している場合、コンピュータに何時間も結合された状態になる可能性がある。そのような脆弱性への有効な改善策は、トークンそれ自体内に、あるいはトークンを含む多目的デバイス内に、PINパッドまたは
指紋リーダを含ませることである。しかしながら、そのような追加は、トークンを大型化する、また高価なものとするため、多くの場合望ましいことではない。
【0006】
人間の存在を検出する別な方法には、「CAPTCHA」と呼ぶものがある。例えば、「http://www.captcha.net.」を参照のこと。人間には判読可能であるが、悪意のあるプログラムには判読不可能なフォントを用いて視覚的にユーザへ提示されたランダムな文字列を、ユーザはタイプするように要求される。この技術の欠点は、悪意のあるプログラムが、CAPTCHAグラフィクスを、他の場所にいる人間の共犯者へ送信する、いわゆる「仲裁者」攻撃である。
【0007】
したがって、トークンは、PINを受信するための、あるいはユーザの生物学的属性を生体情報へ変換するための入力デバイスを含むことを必要とせずに、コンピュータに結合した認証トークンを、悪意のあるプログラムに乗っ取られないように保護する方法の必要性が広く認識される、また、そのような方法を得ることは非常に有利である。
【発明の概要】
【発明が解決しようとする課題】
【0008】
本発明の目的は、トークンが、PINを受信するための、または生物学的属性を測定するための入力デバイスを含むことを要求することなく、コンピュータに接続した認証トークンを、悪意のあるプログラムに乗っ取られることから保護するためのシステムおよび機能を提供することである。より詳しくは、本発明の目的は、ユーザのコンピュータ上で作動する悪意のあるプログラムが、直前の正規の認証セッションの間に傍受したPINを利用するとともにコンピュータに接続されたトークンを利用して実行する、意図しない、そして目立たない認証セッションから、トークンのユーザを保護することである。
【0009】
「トークン」は、データを含む、および/あるいはデバイスに関連するユニークなIDを認証するための処理能力を含むポータブル・デバイスを意味する。トークンのための模範的なフォーム・ファクタは、スマートカード、USBキー、そして電話機またはハンドヘルド・コンピュータ用の拡張カードを含む。トークンは、独立型デバイスであっても、またはUSBフラッシュメモリ・ディスク等の、別のデバイスの一部を形成するものであってもよい。
【0010】
「ホスト」は、典型的に販売業者または金融機関である「プロバイダ」の「サーバ」とのトランザクションを実行するための処理および通信デバイスを意味する。ホストの例としては、パーソナルデスクトップまたはラップトップ・コンピュータ、携帯電話、2ウェイ・ポケットベル、そしてハンドヘルド・コンピュータを含む。
【0011】
「ユーザ」は、プロバイダとのトランザクションの実行を望み、トランザクションを実行するためにIDの認証が必要な、彼あるいは彼女自身を代表する、または組織に代わって操作する個人を意味する。
【0012】
「トランザクション」は、当事者の相互確約を伴う、ユーザとプロバイダとの間のビジネス・プロセスを意味する。
【0013】
「個人識別番号」または「PIN」は、個人に既知である、その個人を認証するための、数字で表した秘密の文字列を意味する。一つの共通なパラダイムによれば、PINは、ユーザおよびプロバイダにのみ既知である。代替的な共通パラダイムによれば、PINは、ユーザと彼(女)のトークンにのみ既知である。したがって、トークンをアンロックするように機能する。「パスワード」または「パスフレーズ」は、その目的においてPINと同様であるが、通常、英文字および記号をも含む。したがって、PINは、パスワード
の特別なケースである。「生物学的属性」は、個人の身体の特徴(例えば、指紋または虹彩パターン)であり、適当なセンサで読み込んでデジタル化する。したがって、センサが生成するデジタルデータは、本文で「生体情報」と呼ぶ。「ユーザ識別」は、PIN、パスワードまたは生体情報のいずれかを受信して検証することを意味する。PIN、パスワードおよび生体情報は、識別証明の例である。「識別証明」は、トランザクションを要請する許可が与えられた個人のみからの受信が予想されるデータを意味する。「あなたが知っていること」(例えば、パスワードまたはPIN)、あるいは「あなたであること」(例えば、生体情報)のいずれかである。
【0014】
「認可」は、トークンおよびユーザIDからの情報を組み合わせた、ユーザ識別に関する信頼性の高い検証を意味する。トークンおよびユーザIDからの情報の組み合わせが、二つの別個の、必須な情報として、プロバイダのサーバに到達する、あるいはユーザIDがローカルで検証されて、トークンをアンロックして作動させるようローカルで使用され、それからトークンからの情報のみが、プロバイダのサーバで(または専用ハードウェアで、あるいはプロバイダのサーバに関連した認証サービスによって)チェックされる。
【0015】
「悪意のあるプログラム」は、偽の認証を介して詐欺的なトランザクションを生成する目的で、ホスト上に不正にインストールされたソフトウェア・コードを意味する。悪意のあるプログラムが、ホストへ結合した入力デバイス(例えば、従来のキーボードあるいは指紋リーダ)を介して入力されたPIN、パスワードまたは生体情報を傍受すること、また、ホストへ接続したトークンにアクセスすることが可能である、と仮定する。
【0016】
「人間による規定の作用」は、個人のみが行うことが可能な、同じ目的に役立つ可能性のある機械が生成する作用を除外するという特定目的のために定義した作用を意味する。例えば、本発明の人間による規定の作用の目的は、ホストへ接続したトークンによって、個人の存在を検出することである。これは、例えば、トークンを切り離して再接続することを要求することによって、またはトークンに、個人の存在を検証するために押されなければならないボタンを備えることによって成就できる。
【0017】
「アノニマス相互作用」は、デバイスまたはシステムとの個人による相互作用を意味する。この動作は、例えば、PINまたはパスワード等の制限情報を所有している個人に、個人を識別することを要求せず、また、個人に特有で個人を識別する生物学的特徴等の属性を持つことを個人に要求しない。したがって、アノニマス相互作用は、個人の存在を検証するが、個人を識別しない。
【0018】
本発明の目的は、正規のトランザクションにおいて入力されたユーザIDデータを傍受したホスト上の悪意のあるプログラムが、透過的にトランザクションを生成してユーザに代わってトランザクションを不正に認可することを防止することである。
【0019】
本発明のゴールは、トークンの本体内にキーパッドおよび/あるいは指紋センサを埋め込むことによって、成就することが可能であるが、そのような追加を行うと、トークンは、よりかさばって、より高価なものとなる。本発明は、したがって、トークン内に埋め込んだPINあるいはパスワード・キーパッド、または生物測定センサを用いることなく、上述の目的を達成することを目指す。
【0020】
したがって、本発明によれば、ホストのユーザが開始した、ホストとサーバとの間のトランザクションを認可するための、次のステップからなる方法が提供される。(a)ホストへトークンを接続操作するステップ。(b)ホストによって、ユーザの識別証明を受信するステップ。(c)トークンおよびサーバからなるグループから選択した少なくとも一つのデバイスによって、識別証明を検証するステップ。(d)トークンによって、人間に
よる規定の作用を検出するステップ。(e)検出を条件として、前記トークンによって、トークン認証データを生成するステップ。(f)ホストによって、トークン認証データをサーバへ送信するステップ。そして(g)トークン認証データを受信したことを条件として、サーバによって、トランザクションを認可するステップ。
【0021】
さらに、本発明によれば、ホストとサーバとの間のトランザクションを認証するための、次のものを含むデバイスが提供される。(a)ホストに相互作用するためのデバイス・インターフェイス。(b)ホストへ取り外し可能にデバイス・インターフェイスを接続操作するためのコネクタ。そして(c)アノニマスな人間による規定の作用の、コントローラによる検出を条件として、デバイス・インターフェイスを介してホストからトランザクション認証要求を受信すると、一度だけトランザクションを認証するように作動可能なコントローラ。
【0022】
さらに、本発明によれば、個人によってホストへ接続操作された周辺デバイスにその個人の存在を確認する、次のステップを含む方法が提供される。(a)ホストにホスト・ユーザ入力インターフェイスを提供するステップ。(b)周辺デバイスにデバイス・ユーザ出力インターフェイスを提供するステップ。(c)周辺デバイスによって、デバイス・ユーザ出力インターフェイスに少なくとも一つの出力を生成するステップ。(d)少なくとも一つの出力の各々に対して、ホストによって、対応する入力を捉えるためにホスト・ユーザ入力インターフェイスを監視するステップ。そして(e)ホストによって、対応する入力の各々を周辺デバイスへ報告するステップ。各報告が周辺デバイスによって受信された場合にのみ、個人の存在が確認される。
【0023】
さらに、本発明によれば、ホストとサーバとの間のトランザクションを認証するための、次のものを含むデバイスが提供される。(a)ホストに相互作用するためのデバイス・インターフェイス。(b)ユーザ・インターフェイス。そして(c)デバイス・インターフェイスを介してホストからトランザクション認証要求を受信すると、サーバを検証し、そしてユーザ・インターフェイスを介して、検証の成功を表示するように作動可能なコントローラ。
【0024】
さらに、本発明によれば、ホストとサーバとの間のトランザクションを認証するための、次のステップを含む方法が提供される。(a)ホストへトークンを接続操作するステップ。(b)トークンによって、サーバを検証するステップ。そして(c)トークンのユーザ・インターフェイスを介して、トークンによって、検証の成功を表示するステップ。
【0025】
本発明の第一の方法は、ホストのユーザが開始した、ホストとサーバとの間のトランザクションを認可するための方法である。基本的な方法によれば、トークンは、ホストへ接続操作される。ホストは、ユーザの識別証明を受信する。識別証明は、トークンによって、またはサーバによって、あるいはトークンおよびサーバの両方によって検証される。識別証明が、ホスト上で作動する悪意のあるプログラムによって生成されたものではないことを保証するために、トークンが、人間による規定の作用を検出した場合にのみ、トークンは、トークン認証データを生成する。それから、ホストは、トークン認証データをサーバへ送信する。サーバがトークン認証データを受信した場合、サーバは、トランザクションを許可する。
【0026】
ホストが受信する識別証明は、PIN等のパスワードである、あるいは択一的に生体情報であることが好ましい。
【0027】
トークンが検出する人間による規定の作用は、トークンがホストへ作動可能に接続されている間に少なくとも部分的に実行される、個人とトークンとの間の相互作用を含むこと
が好ましい。トークンがホストへ作動可能に接続されている間に相互作用を少なくとも部分的に実行しなければならないことは、相互作用の定義の範囲から、最初にホストからトークンを分離することをせずに単にホストへトークンを接続操作することを除外する。この点に関して、オペレーションの開始時にはトークンがホストへ実際に作動可能に接続されているのだから、ホストからトークンを分離操作することは、トークンがホストへ作動可能に接続されている間に実行すべきオペレーションである、とみなすことに注意すべきである。
【0028】
本発明の範囲は、例えば識別証明の受信を介して個人を識別する相互作用を含むが、識別証明が、トークンによってではなく、ホストによって受信されるので、トークンは、例えば、キーパッドまたは生物測定センサ等の、大きな、そしてコスト高なユーザ・インターフェイスを含む必要がない。それでいて、個人を識別することなく個人の存在を検出するために、トークンに、ボタンあるいはLED等の、小さな、安価なユーザ・インターフェイスを設けることは、本発明の範囲内にある。ホスト・ユーザ・インターフェイスを介したユーザ識別を、最小のトークン・ユーザ・インターフェイスを介したトークンによるアノニマス・ユーザ存在検出に組み合わせることは、本発明の重要な要素である。
【0029】
アノニマス相互作用は、個人とトークンとの間の直接的な相互作用であることが好ましい。相互作用が「直接的である」というのは、例えばホスト等の、もう一つのエンティティによって調停されないことを意味する。そのような直接的な相互作用の例としては、ホストからトークンを分離操作してから、トークンをホストへ再接続操作し、そしてトークンを構成する(最小限の)ユーザ・インターフェイスをアノニマスに操作することを含む。もう一つの、そのような直接的な相互作用は、トークンに、トークンがもうすぐ認証データを生成することを合図するためのユーザ・インターフェイスを設けることを必要とする。関連する相互作用は、その合図後の少なくとも所定の時間だけ、トークンをホストへ作動可能に接続したままにすることである。
【0030】
択一的に、アノニマス相互作用は、トークンに直接的にではなく、ホストによって調停する。トークンがユーザ・インターフェイスを備える、そのような調停相互作用の一つの例は、例えば、ホストのキーボードでキーを押すことによって、ホストに相互作用することである。この場合、ホストは、トークンのユーザ・インターフェイスから、少なくとも一つの信号の各々に実質的に同期された、好ましくは複数の信号の各々に実質的に同期された対応するユーザ入力を受信する。入力を受信すると、ホストは、すぐに入力の受信をトークンへ報告する。対応する信号の生成に実質的に同期されたこれらの報告の受信は、トークンによる、人間による規定の作用の検出を構成する。この文脈における「同期」は、通常の人間の反応時間を考慮して定義する。例えば、信号を聞いた後の1秒以内にキーを押すことは、信号に同期させることであるが、信号を聞いて20秒後にキーを押すことは、信号に同期させたことにはならない。
【0031】
この方法は、また、トークンにユーザ・インターフェイスを提供すること、トークンによってサーバを検証すること、そしてトークンによって、検証が成功したかどうかを表示することを含むことが好ましい。この場合、人間による規定の作用は、検証の成功を条件とする。検証が失敗ならば、ユーザは、トークンと相互作用することを控える。
【0032】
ホストとサーバとの間のトランザクションを認証するための、本発明の基本的な第一のデバイスは、ホストに相互作用するためのデバイス・インターフェイス、ホストへ取り外し可能にデバイスを接続操作するためのコネクタ、そしてデバイス・インターフェイスを介してホストからトランザクション認証要求を受信し、コントローラによってアノニマスな人間による規定の作用を検出したときにのみ、一度だけトランザクションを認証するコントローラを含む。
【0033】
そのような人間による規定の作用の一例は、認証要求が受信される前の所定時限内に、ホストへデバイス・インターフェイスを接続操作することである。この状態を、デバイス・インターフェイスを介して検出する。
【0034】
人間による規定の作用の他の例は、デバイスがユーザ・インターフェイスをも含むことを要求する。そのような一例は、認証を可能にするための、ユーザ・インターフェイスとの相互作用である。もう一つの、そのような例は、デバイス・インターフェイスを、認証要求が受信されたことをユーザ・インターフェイスが表示した後の少なくとも所定の時間だけ、ホストへ作動可能に接続されたままにしておくことである。もう一つの、そのような例は、ユーザ・インターフェイスからの少なくとも一つの信号の各々に実質的に同期させてホストに相互作用することである。しかし、この場合は、ユーザ・インターフェイスからの複数の信号の各々に同期させることが好ましい。後の例における、コントローラによって人間による規定の作用を検出することは、ホストから相互作用の通知を受信するためのコントローラを含む。
【0035】
コントローラによる認証は、また、デバイス・インターフェイスを介してのコントローラによる、ホストで入力した識別証明(例えば、パスワード、PINまたは生体情報)の受信、そしてコントローラによる識別証明の検証を条件とすることが好ましい。
【0036】
デバイスは、また、ユーザ・インターフェイスを含み、そしてコントローラは、また、サーバを検証し、ユーザ・インターフェイスを介して、サーバの検証が成功したかどうかを表示するように作動可能であることが好ましい。
【0037】
デバイスは、また、デバイス・インターフェイスを介してホストから受信したデータを記憶するなどの、トランザクションの認証には関係しない機能を提供するために、例えばメモリ等の、機能コンポーネントを含むことが好ましい。デバイス・インターフェイスがホストへ接続操作されたとき、認証要求が懸案になっていれば、コントローラは、その機能をホストへ提供することなく、必要条件が満たされたので認証要求を満足させることによって、あるいは必要条件が満たされなかったので認証要求を拒否することによって認証要求を取り扱い、そうではなく、認証要求が懸案でない場合は、コントローラは、ホストへその機能を提供することが最も好ましい。認証要求を取り扱った後、コントローラが、デバイス・インターフェイスを介して、ホストへ機能を提供するよう要求を受信したとき、コントローラは、ホストからデバイス・インターフェイスを分離操作してからデバイス・インターフェイスをホストへ再接続操作するよう、ユーザに促すことが最も好ましい。また、コントローラが、ホストへ機能を提供している間に認証要求を受信した場合、コントローラは、デバイス・インターフェイスをホストから分離操作してからデバイス・インターフェイスをホストへ再接続操作するよう、ユーザに促すことが最も好ましい。
【0038】
択一的に、認証要求を取り扱った後、コントローラが、デバイス・インターフェイスを介して、ホストへ機能を提供するよう要求を受信したとき、コントローラは、ホストへ機能を提供することを開始する。コントローラが、ホストへ機能を提供している間に認証要求を受信した場合、コントローラは、ホストへの機能の提供を停止して、その代わりに、認証要求を取り扱う。
【0039】
本発明のもう一つの方法は、個人がホストへ接続操作したトークン等の周辺デバイスに、その個人が実際に存在することを確認するための方法である。基本的な方法によれば、ホストはホスト・ユーザ入力インターフェイスを備え、周辺デバイスは、デバイス・ユーザ出力インターフェイスを備え、そのデバイス・ユーザ出力インターフェイスで少なくとも一つの出力を生成し、そして、ホストは、その出力の各々への対応する入力を捉えるよ
う、ホスト・ユーザ入力インターフェイスを監視し、その入力を周辺デバイスへ報告する。周辺デバイスが、対応する(単数あるいは複数の)報告を実際に受信した場合にのみ、個人の存在が確認される。この文脈における「入力インターフェイス」は、ユーザからの入力を受信するための、例えばボタンまたはキーボード等のインターフェイスであり、「出力インターフェイス」は、ユーザへ出力を提供するための、例えばLEDまたはディスプレイ・スクリーン等のインターフェイスである。実際、この方法を適用するホストは、ほぼ、どのケースでも入力インターフェイスおよび出力インターフェイスを含むが、方法は、ホストの入力インターフェイスのみを用いる。周辺デバイスは、入力インターフェイスを含んでも、あるいは含まなくてもよいが、出力インターフェイスを含まなければならない。
【0040】
周辺デバイスは、時間的にランダムに分散させた、複数の出力を生成することが好ましい。また、ホストによる対応する出力の生成に実質的に同期されて、各報告が周辺デバイスによって受信された場合にのみ、個人の存在が確認されることが好ましい。
【0041】
本発明の第二のデバイスも、ホストとサーバとの間のトランザクションを認証するためのデバイスである。このデバイスは、ホストに相互作用するためのデバイス・インターフェイス、ユーザ・インターフェイスおよびコントローラを含む。コントローラが、デバイス・インターフェイスを介して、ホストからのトランザクション認証要求を受信したとき、コントローラは、サーバを検証し、ユーザ・インターフェイスを使用して、サーバの検証が成功したかどうかを表示する。
【0042】
ホストとサーバとの間のトランザクションを認証するための、本発明の第三の方法は、第二のデバイスに対応する。ホストに作動可能に接続されたトークンが、サーバを検証し、そのユーザ・インターフェイスを介して、検証が成功したかどうかを表示する。
【0043】
本発明を、例としてのみ、添付の図面を参照して説明する。
【図面の簡単な説明】
【0044】
【図1】本発明によるシステムを表す、高度なブロック図である。
【図2】図1に示すシステムを作動させる二つの方法を表すフロー・チャートである。
【図2A】図1に示すシステムを作動させる二つの方法を表すフロー・チャートである。
【図3】本発明によるもう一つのシステムを表す、高度なブロック図である。
【図4】図3に示すシステムを作動させる二つの方法を表すフロー・チャートである。
【図4A】図3に示すシステムを作動させる二つの方法を表すフロー・チャートである。
【図5】図5は、必須の、人間による許可のための好適方法を表すフロー・チャートである。
【発明を実施するための形態】
【0045】
本発明は、トークンがユーザ特定情報を直接的に受信する必要のない、ユーザ認証に使用可能なトークンに関する。
【0046】
本発明によるトークンの原理および作用は、図面とその説明文を参照することによって、よりよく理解できる。
【0047】
さて、図面を参照する。図1は、本発明によって構成されたシステムの好適実施例10
0を表し、多目的ポータブル・デバイス110の一部を形成する認証トークン112に関する。多目的ポータブル・デバイス110は、認証トークン112のトークン機能を、例えば記憶等の、他の機能114に組み合わせる。コントローラ115は、多目的ポータブル・デバイス110のオペレーションを制御し、また、認証トークン112および機能114を制御する。インジケータ118は、コントローラ115の制御下で、音声および/あるいは視覚信号をユーザへ提供する。ボタン120は、ユーザが許可信号を提供するためのオプションである。ボタン120は、物理的な押しボタン、または択一的に、インジケータ118と連動する光センサでもよい。例えば、ユーザが多目的ポータブル・デバイス110の本体に接触すると、彼(女)の指がインジケータ118から来る光を反射し、これを、ボタン120の一部を形成する感光性センサが感知する。デバイス・インターフェイス116は、デバイス側の、USB(ユニバーサル・シリアル・バス)インターフェイスまたはSD(セキュア・デジタル)インターフェイス等の、標準的な電気および論理インターフェイスである。デバイス・コネクタ130は、ホスト150へのリンク140を介して、配線接続または無線接続を提供する。
【0048】
例えば、パソコン、携帯電話あるいは2ウェイ・ポケットベル等のホスト150は、ユーザが、例えばインターネットまたは携帯リンクへの結合等のネットワーク接続172を介して、プロバイダ(図示せず)の遠隔サーバとトランザクションを実行することを可能にする。CPU156は、オペレーティングシステム、ワープロ、通信プログラム等の、ソフトウェアプログラムであるサービス154の下で、ホスト150のオペレーションを制御する。ユーザは、例えば、キーボード、指紋リーダおよび/あるいはスクリーンを含むユーザ・インターフェイス152を使用して、ホスト150を操作する、また、ユーザIDとして、PIN、パスワードあるいは生体情報を提供する。ホスト・インターフェイス158は、ホスト側の、多目的ポータブル・デバイス110との、標準的な電気および論理インターフェイスを提供し、ホスト・コネクタ170は、多目的ポータブル・デバイス110との、リンク140を介した有線または無線接続を提供する。悪意のあるプログラム160は、ホスト150内に存在し、ユーザ・インターフェイス152を介して入力されるPIN、パスワードおよび/あるいは生体情報を傍受し、それから、多目的ポータブル・デバイス110がホスト150に接続されたときに認証トークン112を利用しようと試み、多目的ポータブル・デバイス110の正規の所有者になりすまして不正なトランザクションを生成する、と推定する。
【0049】
図2は、図1に示す多目的ポータブル・デバイス110のオペレーションのための、第一の好適方法を表すフロー・チャートである。上述したように、本方法の主要な目的は、多目的ポータブル・デバイス110が、機能114を目的としてホスト150に接続されているとき、例えば、機能114内に記憶機能を含む多目的ポータブル・デバイス110が、記憶の目的でホスト150に長時間接続されているとき、悪意のあるプログラム160が不正なトランザクションを生成することを防止することである。ステップ200で、多目的ポータブル・デバイス110をホスト150へ作動可能に接続する。接続の一部として、デバイス・インターフェイス116とホスト・インターフェイス158との間で、論理ハンドシェイクが行われる。これは、ステップ202で、ホスト150が懸案の認証セッションの最中であるかどうかを、コントローラ115が識別できるようにする。答えが否定である場合、ステップ210において、コントローラ115は、機能114の機能のために、多目的ポータブル・デバイス110のみをマウントする。すなわち、認証トークン112は、分離され、ホスト150へのアクセスが不可能である。ステップ212で、認証トークン112が使用不能である間、ホスト150は、サービス154を実行する、および/あるいは多目的ポータブル・デバイス110の機能114と連動する(例えば、機能114内に含まれるデータ記憶デバイス上での、読み込みおよび書き込みオペレーションを実行する)。明らかであるが、この段階では、認証トークン112が接続されていないため、悪意のあるプログラム160は、少しの認証トランザクションも実行できな
い。サービスの一つが認証を必要とする場合、このことがステップ214で検出されることによって、ステップ230へ進む。ここで、ユーザは、ホスト150から多目的ポータブル・デバイス110を取り外して、それから、多目的ポータブル・デバイス110をホスト150に再接続するよう、ホスト150に促される。これは、人間の関与を必要とする、悪意あるプログラム160が実行できない手作業である。ステップ230でユーザが従った場合にのみ、システム100はステップ200へ戻るが、今度は、ホスト150は、CPU156がホスト・インターフェイス158に通知して、認証を待つ。多目的ポータブル・デバイス110とホスト150との間のハンドシェイク中のこの時点で、ステップ202が、懸案の認証があることを識別した場合、それに応じて、ステップ220へ進む。そこで、認証トークン112の機能のために、多目的ポータブル・デバイス110がマウントされ、機能114は使用不能になる。ステップ221で、ユーザは、ユーザ・インターフェイス152へ、彼(女)のPIN、パスワードまたは生物学的識別属性を提示するよう促され、ステップ222で、単一の認証セッションが実行され、その後、認証トークン112は使用不能になる。もし、ステップ226で、機能114による追加のオペレーションを望むなら、ステップ230で促されたとき、多目的ポータブル・デバイス110を再接続する必要がある。
【0050】
図2のプロシージャが、多目的ポータブル・デバイス110の所有者を、悪意のあるプログラム160が、彼または彼女に代わって認証トークン112を作動させて、気づかれないように不正なトランザクションを繰り返すことから保護することは明らかである。しかしながら、悪意のあるプログラム160が利用可能な、いくつかの抜け道は依然として存在する。これらの抜け道は、図2のステップ223、224、225および227で、少なくとも部分的に解決できる。第一の抜け道は、悪意あるプログラム160が、バックグラウンドで不正なトランザクションを準備することである。これは、ユーザが、機能114内のある機能を実行するために、ホスト150へ多目的ポータブル・デバイス110を接続するとき、悪意あるプログラムが、ステップ202で、認証ペンディング・ステータスを実際に生成し、不正なトランザクションを実行できることである。この場合、認証のためにステップ220への移動があり機能の使用が不能になるため、ユーザは、彼(女)の所望の機能にアクセスすることに失敗するが、多くのユーザは、単にハードウェアの不良を非難し、不正なトランザクションに気づくことはない。これを防止するためには、オプションとして、ステップ224での、人間による明確な許可が必要となる。この明確な許可は、ボタン120を押すことによって、または以下の図5で説明する方法の下で、ホストのユーザ・インターフェイス152を通しても提供できる。代替的に、あるいは追加的に、ステップ225で、トランザクションに気づかないことがないよう、ユーザにトランザクションを知らせるために、インジケータ118が特別な音声および/あるいは視覚的な信号を生成する。さらに、視聴覚信号を、認証セッションに対して2、3秒先行できるので、ユーザには、トランザクションを防止するに十分な、ステップ227に示す、ホスト150から多目的ポータブル・デバイス110を取り外すための時間がある。もう一つの予防措置は、ユーザが、異なるウェブサイトに接続されているのに彼/彼女が正規のウェブサイトでトランザクションを実行している、とユーザに信じ込ませる「フィッシング」に対して取ることができる。フィッシングは、ステップ223におけるホスト検証によって防止する。この場合、ステップ222の認証を拡張して、ネットワーク接続172を介して接続されたプロバイダのサーバのIDの暗号検証を含め、そして相手側のホストが照合され、そのIDが認証トークン112によって記録されたことを、インジケータ118を介して(例えば、特別な音または点滅緑光によって)合図する。
【0051】
図2Aは、認証と他の機能セッションとの間でホスト150から多目的ポータブル・デバイス110を物理的に取り外すことを必要としない、オペレーティングシステム100の代替的な方法を表すフロー・チャートである。以下の点を除き、すべてのステップは、図2のものと同様である。ボタン120を押す、あるいは 図5の方法を適用することに
よって、ステップ224の、人間による明確な許可を示すことは必須である。ステップ230および240のいずれのモードに対するマウントも、コントローラ115の制御下で論理的に実行されるため、ホスト150から多目的ポータブル・デバイス110を物理的に取り外す必要はない。ステップ234および236における、一方から他方へのモード切り換えは、物理的な再マウントではなく、論理的な再マウントで実行する。注目すべきことは、論理マウントを用いる代わりに、認証トークン112および機能114の両方を同時にマウントしたままにしておいて、コントローラ115がそれらの機能を単に切り替えてもよい、ということである。したがって、単語「マウントする」に代わるものとして、単語「作動させる」がステップ230および240に現れる。明らかなことは、図2Aの実施例の下では、人間による許可224が必須であるため、一回の許可につき、単一の認証のみを行うことが可能である。
【0052】
図3は、本発明のもう一つの、好適なシステム300を図解する。これは、図1に示す多目的ポータブル・デバイス110を、認証以外の機能を全く持たない単一目的ポータブル・トークン310で置換している。ホスト151は、サービス155が、多目的ポータブル・デバイス110の追加的機能114を必要とするサービスを含む必要がないということ以外において、ホスト150と同様である。トークン・インターフェイス318およびトークン・コネクタ330は、各々、図1に示すデバイス・インターフェイス116およびデバイス・コネクタ130と同様である。クリプトコントローラ316はポータブル・トークン310のオペレーションを制御し、インジケータ118およびボタン120は、図1に示すそれらの対照物と同じである。
【0053】
図4は、図3のシステム300のオペレーションを表すフローチャートである。ステップ400で、ポータブル・トークン310を、ホスト151に作動可能に接続する。ポータブル・トークン310の唯一の目的は認証であるのだから、実際の認証オペレーションは、ステップ404でチェックするように、所定の時限(例えば、1分間)内に実行される、と推定する。この時限内に認証を開始すると、ステップ221および222で、図2のものに同様な、単一の認証オペレーションが実行され、図2の場合のように、オプションとして、ホスト検証223、人間による許可224、そして視聴覚表示225も行われる。もし、ステップ426で、ユーザが、図3に示すサービス155の一つを介して、もう一回の認証セッションを行いたい場合、彼/彼女は、ステップ430で、ポータブル・トークン310を物理的に切り離してホスト151へ再接続するよう促される。もしステップ404で、認証が(例えば)1分間という所定の時限内に開始されなかった場合は、ステップ410で、トークンは使用不能になる。ステップ414において認証の必要がある場合には、ユーザは、ステップ430で、ポータブル・トークン310を物理的に切り離してホスト151へ再接続するよう促される。
【0054】
図4Aは、認証セッション間でホスト151からポータブル・トークン310を物理的に取り外すことを必要としない、オペレーティングシステム300の代替的な方法を表すフロー・チャートである。ステップ400で、ポータブル・トークン310をホスト151へ接続する。ステップ221、222、223、224および225は、人間による明確な許可が必須であるステップ224以外、図4のものと同じである。ステップ426は、必須である人間による明確な許可222などによって、(ステップ221のユーザIDを繰り返す必要が全くなく)ステップ222におけるもう一回の認証オペレーションへ導いてもよい。
【0055】
図5は、図2、2A、4および4Aに示す必須の人間による許可224のための、ボタン120を押すことを代替する好適方法を表すフローチャートである。キー押しを検出するアプリケーションが、ホスト150またはホスト151上で作動し、キーが押される度に、接続された多目的ポータブル・デバイス110またはポータブル・トークン310へ
瞬時に報告する。ゴールは、ユーザ許可のためにユーザ・インターフェイス152(例えば、従来のキーボード)を、悪意のあるプログラム160が模倣できない様式で用いることを可能にすることである。これは、ユーザに、視聴覚インジケータ118から受信した信号に同期させて、ユーザ・インターフェイス152上のキーを押させることによって実行する。(信号を、コントローラ115によって、あるいはクリプトコントローラ316によって自動的に生成するとき)人間であるユーザは信号に気づくが、悪意あるプログラム160は信号にに対して盲目であるため、人間である操作者の存在が確認できる。図解の例示的なプロシージャは、ユーザに、ホスト・コンピュータのユーザ・インターフェイス152上の一つのキーを、インジケータ118から受信した信号に同期させて、四度連続で押すことを要請する。もしユーザが、第一回目の、四度押しセッション中の、いずれのキー押しをミスしても、彼/彼女は、四度のキー押しに対する、もう二回のチャンスがある。彼/彼女が三回連続でセッションに失敗すると、トークンはそれ自体をロックする。ロックしたトークンのアンロックには、例えば、サービス事務所への訪問等の、人間であるユーザによる決定的な手作業が必要である。この要件は、悪意のあるプログラムが、複数のセッションに渡って、正しいタイミングが推測できるまで、キー押しの正しいタイミングをランダムに推測することを繰り返し試みることを防止するために提供されるものである。失敗を探知するために、コントローラ115(図1)の、またはクリプトコントローラ316(図3)の一部を形成する失敗カウンタが設けられている。この失敗カウンタは、製造時、パーソナライズ時、または例えば、悪意あるプログラムが到達不可能であろうサービス事務所の信頼できるコンピュータで、ユーザが他の決定的な手作業を行ったとき、ゼロに予めセットされる。また、失敗カウンタは、以下のステップ540で説明するように、一連のキー押しが成功したとき、ゼロにリセットされる。
【0056】
したがって、ステップ500において、成功フラグを論理真へセットし、その後、ステップ502で、4つのキー押し入力のセッションを介してループする。ステップ504で、コントローラ115またはクリプトコントローラ316が、0と4の間の乱数を生成して、インジケータ118がオフの間、この秒数だけ待機する。ステップ506で、もしこの待ち時間内にキー押しが検出されると、成功フラグは、偽へセットされる。それから、ステップ508で、コントローラ115またはクリプトコントローラ316によって、インジケータ118を介して信号を生成する。そしてステップ510で、信号持続時間内にキー押しを期待する。キー押しが検出されたら、四度のキー押しセッション・ループはステップ502へ戻る。そうでない場合、ステップ512で、成功フラグを偽へセットし、その後、ステップ502におけるループを継続する。全四セッションが完了すると、ループはステップ530の方へ出て、そこで成功フラグが調べられる。ユーザ・インターフェイス152におけるすべての四度のキー押しが、インジケータ118からの信号に同期していた場合にだけ、成功フラグは真に留まる。このことは、ステップ540で、コントローラ115またはクリプトコントローラ316内に含んだ失敗カウンタをゼロへリセットすること、それから、ステップ542で、認証を是認することへ導く。すなわち、図2、2A、4および4Aのいずれにあっても、ステップ222の実行へ導く。キー押しと信号との同期における一度の失敗でさえ、ループ502は、ステップ530で、成功=偽で終了する。このことは、ステップ532へ導き、先に言及した失敗カウンタを1だけ増加する。もし失敗カウンタが許容失敗数、例えば3を超過した場合、ステップ534は、コントローラ115またはクリプトコントローラ316が、ステップ536において、それ自体をロックするように導き、ステップ538でサービスを拒絶する(すなわち、図2、2A、4および4Aのいずれにおいても、ステップ222で認証は実行されない)。しかし、最高二度の先の失敗に対しては、ステップ534は、ステップ498で、インジケータ118および/あるいはユーザ・インターフェイス152を介してメッセージを生成するよう導き、ステップ500で、ユーザにもう一度試すよう勧める。
【0057】
注目すべきことは、悪意あるプログラムが単独で認証を完了することを防止するために
、上記のすべての異形実施例が、人間のみが実行できる必須の手作業ステップを要求することである。また、そのようなステップが認証のために要求されることは珍しいし、他のことで用いられるとしたら意味のないことである。そのような手作業ステップの例は、以下のものを含む。ホストへのデバイスの再接続、特殊目的ボタンを押すこと、不正な認証が発生する前にユーザがトークンの接続を断つことができるよう警告信号を送信すること、タイムリーな様式でトークンをホストへ接続すること、そしてトークンから受信した視聴覚信号に同期させてホストのキーを押すこと。
【0058】
したがって、本発明の焦点は、悪意のあるプログラムが単独でトークンを操作することを防止するために、人間である操作者が実際に存在して管理していることを確認することにある。人間である操作者は、ホストへPIN、パスワードまたは生物学的属性を提示することによって、別個に識別される必要がある。ユーザ識別の要求は、紛失または盗難に対してのものであり、トークンを、(PIN、パスワードまたは生体情報を傍受した、と推定する)悪意のあるプログラムから保護するに至っていない。したがって、拾った、あるいは盗んだトークンで、不正なトランザクションを生成しようと試みる犯人は、トークンの所有者が使用するホスト上に、悪意あるプログラムをこっそりとインストールする犯人と同じではない、と暗黙のうちに仮定する。ホストに悪意のあるプログラムをインストールし、その後、ホスト上で使用されたトークンを手に入れる犯人は、容易にトークンの所有者のふりをすることができる。本発明は、そのようなシナリオに対しては無力であるが、そのようなシナリオは、ほとんどあり得ないため、本発明の一般的な有用性は保たれる。
【0059】
本発明を限られた数の実施例に関して説明したが、本発明の多くの変形、修正、そして他の応用が可能であることは明らかである。

【特許請求の範囲】
【請求項1】
ホストのユーザが開始した前記ホストとサーバとの間のトランザクションを前記ホストに接続されたトークンによって認可するための方法であって、
前記ユーザから入力された前記ユーザの識別証明情報を前記トークンによって検証し、
人間による規定の行為を行う要求に対応して前記ユーザが行った前記人間による規定の行為により生じる信号に基づいて前記トークンが前記人間による規定の行為を検出し、
前記検証が行われるとともに前記検出が行われることを条件として、前記ホストと前記サーバとの間の前記トランザクションの認証に用いられるトークン認証データを前記トークンが生成することを特徴とする方法。

【図1】
image rotate

【図2】
image rotate

【図2A】
image rotate

【図3】
image rotate

【図4】
image rotate

【図4A】
image rotate

【図5】
image rotate


【公開番号】特開2012−198914(P2012−198914A)
【公開日】平成24年10月18日(2012.10.18)
【国際特許分類】
【出願番号】特願2012−114837(P2012−114837)
【出願日】平成24年5月18日(2012.5.18)
【分割の表示】特願2008−511863(P2008−511863)の分割
【原出願日】平成18年5月17日(2006.5.17)
【出願人】(502111536)サンディスク アイエル リミテッド (64)
【住所又は居所原語表記】Central Park 2000,Atir Yeda Street 7,44425 Kfar Sabad,Israel
【Fターム(参考)】