(57)【要約】  ユーザからのメッセージの安全な送受信の方法。複数の入力手段を表す画像（３２０）、例えばキーパッドの画像が生成され、符号化される。画像は、暗号解読装置（３１０）にランダム化として記憶されたキーシーケンスを使用する視覚暗号を使用して符号化される。ランダム化された画像はクライアント装置（３０１）に送信され、クライアント装置において、第１のディスプレイ（５０１）上に表示される。ランダム化は、第２のディスプレイ（３１１）上に表示される。第１及び第２のディスプレイを重ね合わせることにより、画像が現れる。クライアント装置（３０１）は、ユーザが第１のディスプレイ（５０１）上の特定のスポットを選択することを可能にする。特定のスポットは、復元された画像の特定の入力手段の位置に対応する。これらのスポットの座標はサーバ（３００）に送信され、サーバ（３００）は、座標を、ユーザによって選択された特定の入力手段に変換することができる。メッセージは、特定の入力手段によって表される入力シンボルとして構成される。
2005515500.tif 000002
【特許請求の範囲】
【請求項１】
ユーザからメッセージを安全に受け取る方法であって、
前記メッセージにおいて使用されうる入力シンボルを各々が表す複数の入力手段を表す画像を生成するステップと、
前記画像の各ピクセルについて、前記ピクセルが第１の色であり、キーシーケンスの一部が第１の値を表す場合、又は前記ピクセルが第２の色であり、前記キーシーケンスの前記一部が第２の値を表す場合、第１のパターンを選択し、前記ピクセルが第２の色であり、前記キーシーケンスの前記一部が第１の値を表す場合、又は前記ピクセルが第１の色であり、前記キーシーケンスの前記一部が第２の値を表す場合、第２のパターンを選択することによって、前記画像を符号化するステップと、
各ピクセルについて、関連する前記選択されたパターンを、前記ユーザによって操作可能な装置に送信するステップと、
前記装置から座標の組を受け取るステップと、
前記座標の前記組を、前記画像に表される特定の入力手段に変換するステップと、
前記特定の入力手段によって表される前記入力シンボルとして前記ユーザからの前記メッセージを構成するステップと、
を含む方法。
【請求項２】
前記第１の色は黒であり、前記第２の色は白であり、前記第１の値は「０」であり、前記第２の値は「１」である、請求項１に記載の方法。
【請求項３】
前記メッセージは認証コードを含む、請求項１に記載の方法。
【請求項４】
前記画像上の前記入力手段の配置は、ランダムなやり方で選択される、請求項１に記載の方法。
【請求項５】
メッセージを安全に送信する方法であって、
送信装置からパターンを受け取るステップと、
前記パターンのグラフィック表現を第１のディスプレイ上に出力するステップと、
キーシーケンスの一部が第１の値を表す場合、第１のパターンのグラフィック表現を第２のディスプレイ上に出力し、前記キーシーケンスの前記一部が第２の値を表す場合、第２のパターンのグラフィック表現を前記第２のディスプレイ上に出力するステップと、
ユーザから座標の組を表す入力を受け取るステップと、
前記送信装置に前記座標の前記組を送信するステップと、
を含む方法。
【請求項６】
前記入力は、前記第１のディスプレイの特定のスポットへの圧力として受け取られ、前記座標の前記組は、前記特定のスポットに対応する、請求項５に記載の方法。
【請求項７】
メッセージの安全な送信を可能にするクライアント装置であって、
送信装置からパターンを受け取る受け取り手段と、
キーシーケンスを記憶するメモリと、
前記パターンのグラフィック表現を出力する第１のディスプレイと、
キーシーケンスの一部が第１の値を表す場合、第１のパターンのグラフィック表現を出力し、前記キーシーケンスの前記一部が第２の値を表す場合、第２のパターンのグラフィック表現を出力するように構成される、前記第１のディスプレイ上に重ねられるのに適した第２のディスプレイと、
ユーザから座標の組を表す入力を受ける入力手段と、
前記送信装置に前記座標の前記組を送信する送信手段と、
を有するクライアント装置。
【請求項８】
前記第２のディスプレイは、前記第１のディスプレイと物理的に異なるユニットとして具体化され、前記キーシーケンスを記憶するための前記メモリを備える、請求項７に記載のクライアント装置。
【請求項９】
請求項１に記載の方法をプロセッサに実行させるように構成されたコンピュータプログラム。
【請求項１０】
請求項５に記載の方法をプロセッサに実行させるように構成されたコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザからメッセージを安全に受け取る方法と、このようなメッセージを安全に送信する方法と、クライアント装置とに関する。
【背景技術】
【０００２】
視覚暗号（M. Naor, A. Shamir: Visual Cryptology, Eurocrypt '94, Springer-Verlag LNCS Vol.950, Springer-Verlag, 1995, pp1-12）は、以下のように簡単に説明することができる。画像は、２つのランダム化された部分に分けられ、一方は画像にランダム化（ランダマイゼーション）を加えたものであり、他方はランダム化自体である。いずれの部分も、ランダム化により、元の画像に関する情報を含まない。しかしながら、両方の部分が物理的に重ねられると、元の画像が復元される。図１に一例が与えられている。元の画像１００は、シェア（部分）１１０及び１２０に分けられ、これらの部分が重ねられると、復元された画像１３０が得られる。
【０００３】
２つの部分が互いに適合しない場合、元の画像に関する情報は現されず、ランダム画像が生成される。従って、二者が視覚暗号を使用して通信したいと思う場合、それらはランダム化を共有しなければならない。基本の実現例は、受信者にランダム化を含むトランスペアレンシーを与えることである。送信側は、このランダム化を使用して元のメッセージをランダム化する。
【０００４】
視覚暗号の基本特性は、画像復元（又は暗号解読）が、人間の目によって直接的に実施され（パターン認識）、危険にさらされうる装置によって実施されないことである。これは、秘密の情報を通信するための視覚暗号の使用をより安全なものにする。しかしながら、トランスペアレンシーの使用はあまり実際的でない。一つには、受信側によって使用されるトランスペアレンシー上のパターンは固定であり、それによってそれぞれのメッセージごとに、新しいトランスペアレンシーが必要とされる。同じトランスペアレンシーが再使用される場合、システムのセキュリティは極端に低下する。このシステムのセキュリティは、典型的なワンタイムパッドのセキュリティに相当する。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、メッセージを安全に受け取る方法を提供することである。
【課題を解決するための手段】
【０００６】
この目的は、本発明により、メッセージにおいて使用されうる入力シンボルを各々が表す複数の入力手段を表す画像を生成するステップと、画像内のそれぞれのピクセルについて、ピクセルが第１の色であり、キーシーケンスの一部が第１の値を表す場合、又はピクセルが第２の色であり、前記キーシーケンスの前記一部が第２の値を表す場合、第１のパターンを選択することによって画像を符号化し、ピクセルが第２の色であり、前記キーシーケンスの前記一部が第１の値を表す場合、又はピクセルが第１の色であり、前記キーシーケンスの前記一部が第２の値を表す場合、第２のパターンを選択することによって画像を符号化するステップと、それぞれのピクセルについて、関連する前記選択されたパターンを、ユーザによって操作可能な装置に送信するステップと、前記装置から座標の組を受け取るステップと、座標の組を、画像に表される特定の入力手段に変換するステップと、特定の入力手段によって表わされる入力シンボルとしてユーザからのメッセージを構成するステップと、を含む方法において達成される。
【０００７】
好適には、第１の色は黒であり、第２の色は白であり、第１の値は「０」であり、第２の値は「１」である。画像は、クライアント装置におけるキーシーケンスの知識に基づいて、視覚暗号の特定の形式を使用して符号化される。選ばれたパターンだけが、クライアント装置に送信される。このようにして、当該特定のキーシーケンスを有するクライアント装置だけが、元の画像を復元するのに適したパターンを生成することができる。
【０００８】
パターンの受け取り時、クライアント装置は画像を復元し、それによってユーザは、画像に配置される入力手段を見ることができる。ユーザは、これらの入力手段を操作することができるとともに、例えば第１のディスプレイ上の特定のスポットを選択するようにカーソル又は他の入力装置を操作することによって、特定の入力手段を選択することができる。座標は送信される。受け取られた座標を、元の画像に表される特定の入力手段に変換し、それらの入力手段によって表される（複数の）入力ワードをメッセージとみなすことによって、メッセージが復元されることができる。
【０００９】
一実施例において、メッセージは認証コードを含む。本発明の方法は、特にユーザを認証するのに良く適している。認証は、潜在的に危険にさらされる可能性があるチャネルを通じて、ユーザからサーバに秘密コードを送信すること、及び秘密コードを記録しないことを信頼される必要がある入力装置を使用することを伴うことが多い。本発明の方法を使用して、秘密コードは、いかなるチャネルを通じても送信されず、危険にさらされる入力装置は、秘密コードを知ることもできない。
【００１０】
一実施例において、画像の入力手段の配置は、ランダムなやり方で選択される。ユーザが、画像に表される特定の入力手段を選択するとき、攻撃者がユーザを観察する可能性がある。加えて、入力手段が常に画像の同じ位置に配置される場合、座標の組はその都度同じである。画像が生成されるたびに配置をランダム化することによって、攻撃者によってなされる観察は有用でなくなる。これは、攻撃者がのちにユーザに扮するためにそれらの観察を再使用することができないからである。
【００１１】
本発明の他の目的は、メッセージを安全に送信する方法を提供することである。
【００１２】
この目的は、本発明により、送信装置からパターンを受け取るステップと、第１のディスプレイ上にパターンのグラフィック表現を出力するステップと、キーシーケンスの一部が第１の値を表す場合、第２のディスプレイ上に第１のパターンのグラフィック表現を出力し、キーシーケンスの前記一部が第２の値を表す場合、第２のディスプレイ上に第２のパターンのグラフィック表現を出力するステップと、ユーザから座標の組を表す入力を受け取るステップと、座標の組を送信装置に送信するステップと、を含む方法において達成される。
【００１３】
前述したように、複数の入力手段を表す画像は、視覚暗号の特定の形式を使用して符号化され、結果として得られたパターンの１つの組が、クライアント装置に送られる。受け取られたパターンは、第１のディスプレイ上に表示される。いかなる表示が行われる前にも、処理又は暗号解読ステップが装置において必要とされることはないことに留意されたい。パターンはそれらが受け取られるとき表示される。第２のディスプレイ上に別のパターンが表示され、この別のパターンは、完全にキーシーケンスに基づいて生成される。画像の復元は、ユーザが復元された画像を見ることができるように、第１及び第２のディスプレイを正しいアラインメントで重ね合わせる（スーパーインポーズする）ことによって実施される。
【００１４】
このようにして、入力手段が現れる。ユーザは、例えば第１のディスプレイ上の特定のスポットを選択するようにカーソル又は他の入力装置を操作することによって、自分が選択したいと思う入力手段の座標を示すことができる。座標は、送信装置に送信され、それによって、送信装置において、受け取られた座標を元の画像に表される特定の入力手段に変換し、それら入力手段によって表される（複数の）入力ワードを得ることによって、メッセージが復元されることができる。復元された画像は、いかなるときも、全体として電子的形式で利用できるわけではなく、ユーザのみが、それを見ることができる。
【００１５】
一実施例において、入力は、第１のディスプレイの特定のスポットへの圧力として受け取られ、座標の組は、特定のスポットに対応する。タッチスクリーンの使用は、ディスプレイ上で入力を選択する非常に簡単なやり方である。更に、第１又は第２のディスプレイ上にカーソル又は他のインジケーションを表示する必要はない。このようなカーソルは、パターンの表示に支障をきたすことがある。
【００１６】
本発明の他の目的は、メッセージの安全な送信を可能にするクライアント装置を提供することである。
【００１７】
この目的は、本発明により、送信装置からパターンを受け取る受け取り手段と、キーシーケンスを記憶するメモリと、パターンのグラフィック表現を出力する第１のディスプレイと、キーシーケンスの一部が第１の値を表す場合、第１のパターンのグラフィック表現を出力し、キーシーケンスの前記一部が第２の値を表す場合、第２のパターンのグラフィック表現を出力するように構成される、第１のディスプレイ上に重ねられるのに適した第２のディスプレイと、ユーザから座標の組を表す入力を受け取る入力手段と、座標の組を送信装置に送信する送信手段と、を有するクライアント装置において達成される。
【００１８】
一実施例において、第２のディスプレイは、第１のディスプレイと物理的に別のユニットとして具体化され、キーシーケンスを記憶するためのメモリを備える。第１のディスプレイと第２のディスプレイとの間又はこれらのディスプレイが具体化される装置間に、電気的、光学的又は他の通信経路が存在してはならない。パターン及びキーシーケンスがデジタル（電子的）形式で供給される場合、このようないかなる通信経路も、攻撃者によってパターン及び／又はキーシーケンスを得るために潜在的に悪用される可能性がある。このようにして、ユーザは、クライアント装置のセキュリティを信頼する必要がなく、上述の別のユニットだけを信頼すればよいことが達成される。
【００１９】
本発明は更に、本発明による方法をプロセッサに実行させるように構成されるコンピュータプログラム製品に関する。
【００２０】
本発明のこれら及び他の見地は、図面に示す実施例から明らかであり、それらを参照して説明される。
【発明を実施するための最良の形態】
【００２１】
図面の全体にわたって、同じ参照数字は、同様の又は対応する特徴（フィーチャ）を示す。図面に示すいくつかの特徴は、一般にソフトウェアにおいて実現され、そういうものとしてソフトウェアエンティティ、例えばソフトウェアモジュール又はオブジェクトを表す。
【００２２】
図１は、元の画像１００、２つのシェア（部分）１１０、１２０及び復元された画像１３０を示す。シェア１１０、１２０は、視覚暗号を元の画像１００に適用することによって得られる。視覚暗号については、図２を参照して以下に更に詳しく説明する。シェア１１０、１２０を重ね合わせることによって、復元された画像１３０が現れる。復元は完全ではない点に注意されたい。元の画像１００の白の部分は、復元された画像１３０においてランダム化された白及び黒のパターンに変わる。
【００２３】
図２は、上述した論文中のＮａｏｒ及びＳｈａｍｉｒによって考案された視覚暗号プロセスを示す。プロセスは、単一のピクセルについてここに説明されているが、当然ながら、ソース画像内のあらゆるピクセルが、このようなやり方で処理されることができる。
【００２４】
元の画像１００のあらゆるピクセルは、本実施例において、あらゆるピクセルを４つのサブピクセルに分けることによって特定のパターンにマップされる。このピクセルについて第１のシェアＳ１を生成するために、４つのピクセルのうち２つは黒（非トランスペアレント）であるように選ばれ、他の２つは白（トランスペアレント）であるように選ばれる。このピクセルの他のシェアＳ２を生成するため、元の画像内の対応するピクセルが白である場合、４つのサブピクセルがコピーされ、元のピクセルが黒である場合、これらの４つのサブピクセルは反転される。各ピクセルについて、４つのピクセルのうちどの２つが黒（非トランスペアレント）であるべきか、の新しいランダムな選択が行われる必要がある。ピクセルがサブピクセルに分けられる該サブピクセルの数は、任意に選択されることができる。
【００２５】
このようにして、サブピクセルの２つの集合が形成される。これらの集合は、２つのシェアを構成する。これらのシェアのどちらも、元のピクセルの色に関するいかなる情報も与えない。すべての場合において、シェアのどちらにおいても、元のピクセルを表すために選ばれた４つのサブピクセルのうち２つは黒であり、他の２つは白である。更に、黒及び白のすべての可能な組み合わせは、等しく生じる可能性がある。ランダムな選択は、各ピクセルについて独立してｐ＝０．５の確率をもって行われるからである。
【００２６】
元の画像を復元するために、２つのシェアＳ１及びＳ２は重ね合わせられることができ、すなわち互いに重ねられることができる。これは、図２の最後の列（Ｒ）に示されている。元のピクセル（Ｐ１）が黒であった場合、シェアＳ１及びＳ２からのサブピクセルを重ねることによって、４つの黒のサブピクセルが得られる。元のピクセル（Ｐ２）が白であった場合、シェアＳ１及びＳ２からのサブピクセルを重ねることによって、復元された画像１３０において黒及び白のパターンが得られる。このパターンは、多くの場合、遠くから見るとグレーに見える。あらゆるピクセルは２ｘ２ピクセルのパターンに変換されるので、復元された画像１３０の解像度は元の画像１００の解像度より４倍低いことにも留意されたい。これは、元の画像１００の４倍の大きさの復元された画像１３０を与える。
【００２７】
２つの部分が互いに適合しない場合、元の画像に関する情報は現されず、ランダムな画像が生成される。シェアの双方を知らない場合、サブピクセルの１つの組が元の画像１００の白のピクセルに対応する確率は、その組が元の画像１００の黒のピクセルに対応する確率に等しい。
【００２８】
図３は、サーバ３００及びいくつかのクライアント３０１、３０２、３０３を有する本発明によるシステムを概略的に示している。クライアント３０１−３０３は、ラップトップコンピュータ３０１、パームトップコンピュータ３０２及び移動電話３０３としてここで具体化されているが、サーバ３００とインタラクティブに通信することができるとともに、ディスプレイ上にグラフィック画像をレンダリングすることが可能な限り、これらのクライアントは、実際に、いかなる種類の装置としても実現されることができる。通信は、例えばラップトップ３０１の場合はワイヤを通じて行われることができ、又はパームトップコンピュータ３０２及び移動電話３０３の場合はワイヤレスで行われることができる。インターネット又は電話網のようなネットワークは、サーバ３００とクライアント３０１−３０３の任意のものとを相互接続することができる。
【００２９】
サーバ３００と、クライアント３０１−３０３との間の安全な通信を実現するために、サーバ３００は、ここでは「１」乃至「９」のラベルを付された数字キーとして示されている複数の入力手段３２１を表す画像３２０を生成する。キーのほかに、入力手段３２１は、チェックボックス、選択リスト、スライダ、又はユーザ入力を容易にするためにユーザインタフェースにおいて一般に使用される他の構成要素であってもよい。ユーザは、クライアント３０１−３０３上で画像を受け取ると、入力手段３２１の１つ又は複数を選択することができる。選択は、サーバ３００に送信される。画像３２０は、以下に明らかに示すように、送信前に視覚暗号を使用して符号化される。
【００３０】
図３には、パーソナル暗号解読装置３１０も図示されている。この装置３１０は、ユーザにとって個人的なものであり、サーバ３００によってクライアント３０１−３０３の任意のものに送られる視覚的に符号化されたメッセージを暗号解読するのに使用されることができるので、十分に保護されなければない。暗号解読装置３１０を通じて物理的制御を得るものは誰でも、ユーザに向けられるすべての視覚的に暗号化されたメッセージを読むことができる。この装置３１０の作用は以下において明らかになる。
【００３１】
暗号解読装置３１０は、ディスプレイ３１１及び記憶領域３１２を有する。ディスプレイ３１１は、好適には、液晶ディスプレイ（ＬＣＤ）スクリーンとして実現される。記憶領域３１２は、視覚的に暗号化された画像を解読する際に使用されるべき少なくともキーシーケンスを有する。キーシーケンスは、好適には、ビットのシーケンス、例えば「０１１０１０１１１０１０」として実現される。記憶領域３１２に記憶されるキーシーケンスの長さは、多くの暗号解読処理を収容するために十分に長くなければならない。視覚的に暗号化された画像を解読するとき、元の入力画像のあらゆるピクセルについて１ビットが必要である。従って、１００ｘ１００ピクセル画像が解読されようとする場合、画像毎に１０，０００ビットが必要である。
【００３２】
更に、あらゆる暗号解読処理ののち、使用されたキービットは、捨てられ、又は使用されたものとしてマークされることが好ましい。このように、あらゆる暗号解読処理は、キーシーケンスのユニークなサブセクションの使用を伴う。すべてのキービットが使用されると、記憶領域３１２内のキーシーケンスは置き換えられなければならない。これは、例えば、暗号解読装置３１０の所有者に、暗号解読装置３１０を新しいものと取り替えるように、又は暗号解読装置に新しいキーシーケンスがロードされるバンクのような安全な場所を訪れるように求めることによって実現されることができる。
【００３３】
代替例として、キーシーケンスが使用されると、暗号ハッシュ関数又は対称暗号化スキームがそのキーシーケンスに適用されうる。ハッシュ関数又は暗号化スキームの出力は、新しいキーとして使用される。このように、パーソナル暗号解読装置３１０にキーシーケンスの全てを記憶する必要はなく、一連のキーシーケンスが、任意の長さで生成されることができる。当然ながら、一連のキーシーケンスのうち１つでもキーシーケンスが攻撃者に知られると、攻撃者は、すべての将来のキーシーケンスをも復元することができる。
【００３４】
暗号解読装置３１０は、物理的に別のユニットとして具体化され、又はクライアント装置３０１−３０３から少なくとも分離できることが好ましい。暗号解読装置３１０とクライアントとの間に、電気的、光学的又は他の通信経路が存在してはならない。パターン及びキーシーケンスがデジタル（電子的）形式で提供される場合、このような通信経路は、パターン及び／又はキーシーケンスを得るために攻撃者によって潜在的に悪用される可能性がある。このような経路が無い場合、危険にさらされるクライアント装置は、どのようなやり方でも暗号解読装置３１０から情報を得ることができない。このように、ユーザは、クライアント３０１のセキュリティを信頼する必要がないことが達成される。
【００３５】
図４は、ユーザから安全にメッセージを受け取る方法の一実施例を示すフローチャートを示している。この方法を使用して、ユーザは、メッセージを安全に組み立てることができ、ラップトップ３０１として選ばれる例示の目的で、クライアント装置を使用してサーバ３００に前記メッセージを安全に送信することが可能である。
【００３６】
ステップ４０１において、例えばキーボード上のキーのような複数の入力手段を表す画像、例えば画像３２０が生成される。それぞれの入力手段は、ユーザによって組み立てられるメッセージにおいて使用されることができる入力ワードを表す。ユーザは、キー、又はクライアント装置３０１のディスプレイ上に画像としてレンダリングされる他の入力手段を選択することによってメッセージを組み立てなければならない。このようなキーは、異なるさまざまな英数字キャラクタを表すキーとして、又は「いいえ」、「はい」、「より詳細な情報」等の選択肢を表すボタン等として、視覚的にレンダリングされることができる。入力手段を視覚的に表す他の方法は、この分野において良く知られている。
【００３７】
入力手段の選択は、クライアント装置３０１のディスプレイ上の座標の特定の組を選択することによって行われることが好ましい。好適には、ユーザは、座標の組を、ディスプレイの特定のスポットに対する圧力として入力する。座標の組は、特定のスポットに対応する。当然ながら、マウス、グラフィックタブレット又はキーボードのような他の入力手段も使用されることができる。
【００３８】
ディスプレイ上に視覚的にレンダリングされた入力手段を通じてメッセージの組み立てを可能にすることはそれ自体知られており、例えば米国特許第ＵＳ−Ｂ−６２０９１０２号明細書を参照されたい。しかしながら、この米国特許は、組み立てられたメッセージを、盗聴者（eavesdropper）による傍受（インターセプション）から保護しない。更に、この米国特許明細書は、入力手段を表す上述したような画像がクライアント装置３０１にどのように安全に送信されることができるかを示していない。これは、盗聴者が画像に表される入力手段のレイアウトを知ることができ、クライアント装置３０１によってサーバ３００に送られたフィードバックから、どの入力手段が選択されたかを知ることができることを意味する。
【００３９】
異なる入力手段は、必然的である必要はないが、異なる入力ワードを表すことができることが認められる。同じ入力ワードを表す複数の入力手段を供給することは、シーケンスが反復を含むときでも、ユーザによって行われる入力のシーケンスがランダムであるように見えるという利点を与える。用語「ワード」は、ここで使用されるとき、１つの英数字キャラクタを意味することができるが、「はい」、「いいえ」等のテキスト及び他の言語又はシンボリック要素をも意味することができる。
【００４０】
画像のそれぞれのピクセルは、ステップ４０２において処理される。まず、ピクセルはその色を決定するためにステップ４２１において調べられる。一般に、ステップ４０１において生成される画像は、白及び黒であるが、当然ながら他の色及び２より多くの色もまた使用されることができる。しかしながら、本実施例において、画像は２つの色、すなわち黒及び白のみを含むものとする。ピクセルの色が白であることがわかると、方法はステップ４２２へ進む。そうでない場合、方法はステップ４２５へ進む。
【００４１】
上述したように、暗号解読装置３１０は、記憶領域３１２にキーシーケンスを保持する。サーバ３００は、このキーシーケンスのコピーを保持する。通常、サーバ３００は、どのユーザがクライアント装置３０１を操作しているかを前もって知っており、適当なキーシーケンスを簡単に探すことができる。更にサーバ３００は、どのユーザがクライアント装置３０１を操作しているかを前もって知ることなく、特定のキーシーケンスを使用することを望むことがある。このように、当該特定のキーシーケンスを有するパーソナル暗号解読装置を所有する人だけが、クライアント装置３０１に送信されるべき、メッセージ中に含められる情報を読むことができることが確実にされる。
【００４２】
キーシーケンスのあらゆるビットは、一度だけ使用されることができる。このために、通常、キーシーケンス内の現在位置を示すポインタが維持される。この現在位置はｉ番目の位置と呼ばれる。キーシーケンスからビットを使用したのち、ポインタは１ずつ増やされる。キーシーケンスからすべてのビットが使用された場合、そのキーシーケンスは取り替えられなければならず、又は上述のハッシュ関数又は対称暗号化関数が、新しいキーシーケンスを得るために上述のキーシーケンスに適用されるべきである。システムのセキュリティはその大部分が、キーシーケンスを生成するために使用される擬似乱数発生器の質に依存することに留意されたい。
【００４３】
ステップ４２２において、キーシーケンスのｉ番目のビットが、「０」であるか又は「１」であるかを決定するために調べられる。ｉ番目のビットが「０」である場合、ステップ４２３において、パターンＰ０が選択される。ｉ番目のビットが「１」である場合、ステップ４２４において、パターンＰ１が選択される。
【００４４】
同様に、ピクセルが黒である場合、ステップ４２５において、キーシーケンスのｉ番目のビットが、「０」であるか又は「１」であるかを決定するために調べられる。ｉ番目のビットが「０」である場合、ステップ４２６において、パターンＰ１が選択される。ｉ番目のビットが「１」である場合、ステップ４２７において、パターンＰ０が選択される。
【００４５】
このように、上述のステップにおいて使用されるキーシーケンスの正しい一部を知っているユーザは、選択されたパターンの受け取り時に画像を復元することができることが達成される。それぞれの受け取られたパターンは、キーシーケンスのｉ番目のビットが「０」である場合、パターンＰ０を重ねられ、前記ビットが「１」である場合、パターンＰ１を重ねられなければならない。これは、元の白又は黒のピクセルを回復する。
【００４６】
すべてのピクセルが処理されると、関連する選択されたパターンは、クライアント装置３０１に送信される。このような送信は、実現するのが直接的であり、ここでは詳しく述べない。例えば、選ばれたパターンの集合を、それを送信する前に暗号化することによって、この送信を保護することが必要とされないことに留意されたい。これらのパターンを選択するために使用されるプロセスにより、盗聴者が、選択されたパターンの集合のみを使用することによって画像を回復することは可能でない。
【００４７】
ユーザがクライアント装置３０１上の入力手段を操作する結果として、クライアント装置３０１は、あるポイントにて、サーバ３００に座標の１つ又は複数の組を送信する。サーバ３００は、ステップ４０４において座標の組を受け取る。ステップ４０５において、サーバ３００は、座標のそれぞれの組を、ステップ４０１において組み立てられた画像に表される特定の入力手段に変換する。サーバ３００がこの画像を組み立てたので、サーバ３００において座標の組を入力手段に変換することは直接的である。
【００４８】
最後に、ステップ４０６において、ユーザによって組み立てられたメッセージは、ステップ４０５において座標の組が変換された特定の入力手段によって表される入力ワードとして構成される。詳細については、米国特許第ＵＳ−Ｂ−６２０９１０２号明細書を参照されたい。
【００４９】
メッセージは、当然ながら、いかなる種類の情報も含むことができるが、好適には、メッセージは、例えばＰＩＮコード又はパスワードのような認証コードを含む。サーバ３００は、ユーザの証明書を検証するためにＰＩＮコード又はパスワードをチェックし、アクセスを許し、１つ又は複数の特権処理を実施し、又はこれらの証明書が必要とされる他のアクションを実施することができる。サーバ３００は更に、証明書の検証に成功したとき、別のシステムに知らせることもできる。
【００５０】
図５Ａ−図５Ｃは、クライアント装置３０１の動作を概略的に示している。クライアント装置３０１が、サーバ３００からパターンの集合を受け取ったとする。これらのパターンは、図３を参照して上述したような方法に従って生成され、複数の入力手段を表す画像に対応している。各入力手段は、メッセージを組み立てるために使用されうる入力ワードを表す。
【００５１】
本実施例において、クライアント装置３０１は、当技術分野において一般に知られているような移動電話５０２を使用して、ネットワークに、例えばインターネットに接続される。移動電話５０２を使用して確立されたデータ接続を使用することにより、クライアント装置３０１は、サーバ３００からデータを送受信することができる。
【００５２】
図５Ａにおいて、装置３０１は、サーバ３００からの複数のパターンを受け取り、ディスプレイ５０１上にそれらのパターンを表示する。一般に、パターンは、４つのピクセルの集合であり、これらのピクセルの２つは黒であり、これらのピクセルの２つは白である。いかなる表示が行われる前にも、装置３０１において処理又は暗号解読ステップが必要とされないことに留意されたい。パターンは、それらが受け取られると表示される。以下に明らかになるように、ディスプレイ５０１の角部にパターンを表示することが有利でありうる。
【００５３】
図５Ｂのユーザは、視覚的に暗号化された画像がクライアント装置３０１に送られたことを認識すると、パーソナル暗号解読装置３１０を取って、それを起動させる。これによって、暗号解読装置３１０に、記憶領域３１２に記憶されたキーシーケンスに依存してグラフィック表現を出力させる。
【００５４】
暗号解読装置３１０は、サーバ３００によって生成される画像の寸法（ディメンジョン）に関して前もってプログラムされなければならない。当然ながら、ユーザが各画像について別個にこれらの寸法を入力することを可能にする手段が設けられることができるが、これは、暗号解読装置３１０をより複雑に、より高価にする。
【００５５】
サーバ３００によって生成された画像のそれぞれの行におけるそれぞれのピクセルについて、暗号解読装置３１０は、キーシーケンスの対応するビットが「０」を表す場合、パターンＰ０を出力し、又はキーシーケンスの対応するビットが「１」を表す場合、パターンＰ１を出力する。
【００５６】
図５Ｃにおいて、ユーザ５１０は、ディスプレイ５０１に表示されたパターン上にパーソナル暗号解読装置３１０を重ね合わせる。このような重ね合わせを容易にするため、ディスプレイ５０１のエッジは、角部にフック又はクランプ（図示せず）を備えることができる。パーソナル暗号解読装置３１０は、このようなフック又はクランプを使用することにより、ディスプレイ５０１の上の特定の位置に取り付けられることができる。このようにして、これらのパターンがディスプレイ５０１上の対応する位置に表示される場合、ディスプレイ５０１のパターン上にパーソナル暗号解読装置３０１を適切に重ね合わせることはユーザにとって非常に容易である。
【００５７】
暗号解読装置３１０及びクライアント装置３０１の双方が、視覚的に暗号化された画像の１つのシェアを効果的に表示するので、ユーザ５１０は、復元された画像を観察することができる。この画像の解像度は、元の画像の解像度より４倍低く、元の画像の白のピクセルは、復元された画像においては黒及び白のパターンと置き換えられるが、吹き出し５１１に示すように、ユーザは、元の画像からの情報をなお認識することができる。
【００５８】
ユーザは、復元された画像を使用して、その画像に表される入力手段を操作することができる。入力手段の選択は、ディスプレイ５０１上の座標の特定の組を選択することによって行われる。好適には、ユーザは、ディスプレイ５０１の特定のスポットへの圧力として座標の組を入力し、この座標の組は、特定のスポットに対応する。当然ながら、マウス、グラフィックタブレット又はキーボードのような他の入力手段が使用されることもできる。
【００５９】
入力手段を表す画像は、暗号解読装置３１０がクライアント３０１に重ね合わせられるときにだけ見られることができるので、ユーザは、暗号解読装置３１０のディスプレイ３１１に圧力を加えるように勧められる。この圧力は、クライアント３０１のディスプレイに伝えられる。クライアント３０１は、それがタッチセンシティブスクリーンを備えるとき、圧力が加えられたスポットを記録し、これを一組の座標に変換することができる。
【００６０】
代替例として、ユーザは、クライアント３０１のディスプレイ上のカーソルを、そのディスプレイ上の特定の位置に移動させ、画像に表される入力手段の選択を確認するためにマウスボタンをクリックし又はキーを押すことができる。パターンの上にカーソルを表示することは、パターンの正しい表示のためには破壊的であるが、実際にはこのような破壊が許容できることが分かった。しかしながら、パーソナル暗号解読装置３１０に表示されるパターンは、カーソルの外観をゆがめるので、カーソルは、それがゆがめられるときでも検出できるように十分大きくなければならない。マウス又はキーボードのほかに、装置３０１に接続されたグラフィックタブレットが、装置３０１のディスプレイ上のカーソルの運動を制御するために使用されることができる。
【００６１】
クライアント装置３０１は、座標の１つ又は複数の組を受け取ると、サーバ３００に座標のこれらの組を送信する。クライアント装置３０１上に秘密にインストールされた盗聴ソフトウェアは、このやり方で入力されたいかなるパスワード又はセンシティブな情報も知ることができないことに注目されたい。このようなソフトウェアは、せいぜいこの特定のセッションに入力された座標の特定の組を知ることができるだけである。これらの組は、将来のセッションにユーザに扮するために使用されうる。
【００６２】
この種のいわゆる「リプレイ」攻撃を防ぐために、サーバ３００は、ステップ４０１において生成される画像上の入力手段の配置をランダム化すべきである。盗聴ソフトウェアが、後続のセッションにおいてユーザに扮するために、盗聴ソフトウェアが知った座標の組を再び送信する場合、座標の組は正しいパスワード又は他の認証コードに対応しないので、サーバ３００はユーザを認証しない。実際に、座標のこれらの組は、後続のセッションにおいて生成される画像の入力手段の位置に対応する必要はない。
【００６３】
上述の実施例は本発明を説明するものであり、本発明を制限するものではなく、当業者であれば、添付の特許請求の範囲から逸脱することなく多くの代替の実施例を設計することが可能であることに留意すべきである。例えば、座標の１つの組が受け取られるときはいつも、新しい画像が、入力手段の新しい置き換えを含むようにして生成されることができる。これは、付加のセキュリティを与える。
【００６４】
本発明は、クライアントからサーバへのメッセージの安全な組み立て及び送信が必要とされるいかなる装置においても使用されることができる。クライアント装置は、パーソナルコンピュータ、ラップトップ、移動電話、パームトップコンピュータ、現金自動預払機、公衆インターネット接続端末として、又は実際に不当なソフトウェア若しくはハードウェアを含まないことをユーザによって完全には信頼されないいかなるクライアント装置としても具体化されることができる。
【００６５】
請求項において、括弧内に示される参照符号は請求項を制限するものとして解釈されるべきではない。「含む、有する」なる語は、請求項に挙げられていない構成要素又はステップの存在を除外しない。単一のものとして表されている構成要素は、このような構成要素の複数の存在を排除しない。
【００６６】
本発明は、いくつかの別個の構成要素を有するハードウェアと、適切にプログラムされたコンピュータとによって実現されることができる。いくつかの手段を列挙する装置の請求項において、これらの手段のいくつかは、１つの同じハードウェアアイテムによって具体化されることができる。特定の方策が相互に異なる従属項に記述されているという単なる事実は、これらの方策の組み合わせが有利に使用されることができないことを示さない。
【図面の簡単な説明】
【００６７】
【図１】元の画像と、元の画像を視覚的に暗号化することによって得られる２つのシェアと、２つのシェアを重ね合わせることによって得られる復元された画像とを示す図。
【図２】上述した論文中のＮａｏｒ及びＳｈａｍｉｒによって考案された視覚暗号プロセスを示す図。
【図３】サーバ及びいくつかのクライアントを有するシステムを概略的に示す図。
【図４】ユーザから安全にメッセージを受け取るための方法の実施例を示すフローチャート。
【図５Ａ】図５Ｂ及び図５Ｃとともに、クライアント装置の動作を概略的に示す図。
【図５Ｂ】図５Ａ及び図５Ｃとともに、クライアント装置の動作を概略的に示す図。
【図５Ｃ】図５Ａ及び図５Ｂとともに、クライアント装置の動作を概略的に示す図。
【図１】
2005515500.tif 000003
【図２】
2005515500.tif 000004
【図３】
2005515500.tif 000005
【図４】
2005515500.tif 000006
【図５Ａ】
2005515500.tif 000007
【図５Ｂ】
2005515500.tif 000008
【図５Ｃ】
2005515500.tif 000009
【国際調査報告】
2005515500.tif 000010
2005515500.tif 000011
2005515500.tif 000012