(57)【要約】【課題】通信の安全性を確保する。情報の改竄を簡単に検知する。【解決手段】ユーザに伝達すべきメッセージを決定するメッセージ決定部と、ユーザが所有するトークン画像または前記ユーザにより生成されるトークン画像と組み合わされることによって、メッセージをユーザに視認可能にするサーバ画像を生成するサーバ画像生成部と、サーバ画像をユーザに送信する送信部とを備える暗号化メッセージ送信装置を提供する。この場合、チャレンジキーをランダムに生成するチャレンジキー生成部をさらに備え、サーバ画像生成部は、ユーザとの間で予め共有されているトークン、およびチャレンジキーに基づいて、サーバ画像を生成し、送信部は、サーバ画像とともにチャレンジキーを送信してよい。【選択図】図２
2011097192.tif 000002
【特許請求の範囲】
【請求項１】
ユーザに伝達すべきメッセージを決定するメッセージ決定部と、
前記ユーザが所有するトークン画像または前記ユーザにより生成されるトークン画像と組み合わされることによって前記メッセージを前記ユーザに視認可能にするサーバ画像を生成するサーバ画像生成部と、
前記サーバ画像を前記ユーザに送信する送信部と
を備える暗号化メッセージ送信装置。
【請求項２】
前記サーバ画像生成部は、前記トークン画像とビット単位に排他的論理和または論理和されることによって前記メッセージを前記ユーザに視認可能にする前記サーバ画像を生成する請求項１に記載の暗号化メッセージ送信装置。
【請求項３】
ユーザ識別情報を受信する受信部と、
前記ユーザ識別情報に対応づけて、前記トークン画像を生成するためのトークンを格納しているトークン格納部
をさらに備え、
前記サーバ画像生成部は、前記受信部が受信した前記ユーザ識別情報に対応づけて前記トークン格納部に格納されている前記トークンから生成された前記トークン画像に基づいて、前記サーバ画像を生成する請求項１または２に記載の暗号化メッセージ送信装置。
【請求項４】
前記メッセージ決定部は、前記送信部が送信した複数の前記サーバ画像にそれぞれ含まれる複数の記号をオーバーラップさせた場合に当該オーバーラップした部分が同じ形状になる記号の組み合わせとして前記メッセージを決定する請求項３に記載の暗号化メッセージ送信装置。
【請求項５】
前記サーバ画像生成部は、複数のセルからなる画像として前記サーバ画像を生成し、
前記複数のセルのうち一部のセルの各々に前記記号の１つを配置し、
前記記号が１つ配置された各セルにおいて前記オーバーラップした部分が同じ位置になるよう前記記号を配置する請求項４に記載の暗号化メッセージ送信装置。
【請求項６】
前記記号が占めるピクセルおよび前記記号が占めるピクセル以外のピクセルを含む一のセルのすべてのピクセルの色は、いずれかの他のセルの対応するピクセルの色と同一であり、
前記他のセルは、前記一のセルと同一の前記記号を含み、
前記一のセルと前記他のセルとは、同一の前記トークン画像に基づいて生成された異なる複数の前記サーバ画像において同一の位置にある請求項５に記載の暗号化メッセージ送信装置。
【請求項７】
前記サーバ画像生成部は、複数のピクセルからなる画像として前記各セルにおける画像を生成し、
前記複数のピクセルは、白色または黒色であり、
前記各セルにおいて、前記記号が占めるピクセル以外の各ピクセルについて、前記ユーザとの間で予め共有されている前記トークン、前記セルの位置および前記記号をシードとする乱数発生により前記各ピクセルの色を決定する請求項６に記載の暗号化メッセージ送信装置。
【請求項８】
前記複数のセルのうち、前記メッセージを構成する前記記号が配置された前記一部のセルを除く他のセルの何れかに、前記メッセージを構成しない偽記号を配置する請求項５または請求項６に記載の暗号化メッセージ送信装置。
【請求項９】
前記トークン画像および前記サーバ画像は、複数のピクセルを有し、
前記サーバ画像生成部は、前記トークン画像と前記サーバ画像とが組み合わされた場合に前記メッセージを形成する部分のピクセルが、前記トークン画像と前記サーバ画像とで異なる色となる前記サーバ画像を生成する請求項１から請求項８のいずれかに記載の暗号化メッセージ送信装置。
【請求項１０】
前記サーバ画像生成部は、略等しい数の黒色のピクセルと白色のピクセルとを有する前記サーバ画像を生成する請求項９に記載の暗号化メッセージ送信装置。
【請求項１１】
前記サーバ画像生成部は、前記トークン画像と前記サーバ画像とが組み合わされた場合に、前記メッセージを形成する部分以外のピクセルの略７５％を黒色で略２５％を白色にすべく、前記サーバ画像を生成する請求項１０に記載の暗号化メッセージ送信装置。
【請求項１２】
チャレンジキーをランダムに生成するチャレンジキー生成部
をさらに備え、
前記サーバ画像生成部は、前記ユーザとの間で予め共有されているトークン、および前記チャレンジキーに基づいて、前記サーバ画像を生成し、
前記送信部は、前記サーバ画像とともに前記チャレンジキーを送信する請求項３に記載の暗号化メッセージ送信装置。
【請求項１３】
前記送信部は、前記サーバ画像および前記チャレンジキーのメッセージ認証コード（ＭＡＣ）をさらに送信する請求項１２に記載の暗号化メッセージ送信装置。
【請求項１４】
前記暗号化メッセージ送信装置および前記ユーザの端末は、前記ユーザのリクエストごとに前記トークン画像を生成し、
前記サーバ画像生成部は、前記ユーザからのリクエストごとに異なる前記サーバ画像を生成する請求項１３に記載の暗号化メッセージ送信装置。
【請求項１５】
前記メッセージに基づいて、カラー画像または白黒画像であるターゲット画像を生成するターゲット画像生成部
をさらに備え、
前記サーバ画像生成部は、前記ターゲット画像と前記トークン画像とから前記サーバ画像を生成し、
前記ユーザの端末は、前記トークン画像と前記サーバ画像とをビット単位に排他的論理和することによって、前記メッセージが前記ユーザに視認可能な画像を生成する請求項１４に記載の暗号化メッセージ送信装置。
【請求項１６】
コンピュータを、請求項１から請求項１５のいずれかに記載の暗号化メッセージ送信装置として機能させるためのプログラム。
【請求項１７】
ユーザに伝達すべきメッセージを決定するメッセージ決定段階と、
前記ユーザが所有するトークン画像または前記ユーザにより生成されるトークン画像と組み合わされることによって、前記メッセージを前記ユーザに視認可能にするサーバ画像を生成するサーバ画像生成段階と、
前記サーバ画像を前記ユーザに送信する送信段階と
を備える暗号化メッセージ送信方法。
【請求項１８】
ユーザが所有する２つのトークンまたはトークン画像のそれぞれに関連して、請求項１から請求項１５のいずれかに記載の前記暗号化メッセージ送信装置によって生成された２つの前記サーバ画像のそれぞれから解読された第１情報および第２情報、並びに前記ユーザによって選択されたパスワードに基づく第３情報から選択された２つの情報に基づいて、前記ユーザを認証する認証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号化メッセージ送信装置、プログラム、暗号化メッセージ送信方法および認証システムに関する。
【背景技術】
【０００２】
黒または白（透過）のピクセルからなる画像を、２つのランダム化したピクセル情報に分割して、元画像を暗号化する画像暗号化の技術が知られている（非特許文献１）。当該画像暗号化技術において、２つの分割画像（シェア）の各ピクセルは、黒または白でランダム化され、一方のシェアだけでは元画像を見ることはできない。しかし、２つのシェアを重ねると元画像を見ることができる。なお、本明細書において、光を透過させないピクセルを「黒」表記し、光を透過させるピクセルを「白」と表記する。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Ｍｏｎｉ  Ｎａｏｒ、Ａｄｉ  Ｓｈａｍｉｒ著、「Ｖｉｓｕａｌ  Ｃｒｙｐｔｏｇｒａｐｈｙ」、ＥＵＲＯＣＲＹＰＴ  １９９４、１〜１２ページ、１９９４年
【発明の概要】
【発明が解決しようとする課題】
【０００４】
画像暗号化の技術を利用してメッセージをセキュアに通信する場合、送受信する双方で一方のシェアを秘密に保持し、他方のシェアをセキュアでない伝送路を用いて送信する。そして受信側では、秘密に保持したシェアと受信したシェアとを重ねてメッセージを読み取ることができる。しかし、一度用いたシェアを、繰り返し使うことは好ましくない。すなわち、傍受された複数のシェアから、セキュアに保持したシェアの情報を暴くことができるようになり、通信の安全性を確保することが難しくなる。また、傍受されたシェアが改竄されたとしても、受信者は、情報の改竄を簡単に検知することはできない。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明の第１の態様においては、ユーザに伝達すべきメッセージを決定するメッセージ決定部と、ユーザが所有するトークン画像または前記ユーザにより生成されるトークン画像と組み合わされることによって、メッセージをユーザに視認可能にするサーバ画像を生成するサーバ画像生成部と、サーバ画像をユーザに送信する送信部とを備える暗号化メッセージ送信装置を提供する。サーバ画像生成部は、トークン画像とビット単位に排他的論理和または論理和されることによってメッセージをユーザに視認可能にするサーバ画像を生成してよい。
【０００６】
上記暗号化メッセージ送信装置において、ユーザ識別情報を受信する受信部と、ユーザ識別情報に対応づけて、トークン画像を生成するためのトークンを格納しているトークン格納部をさらに備え、サーバ画像生成部は、受信部が受信したユーザ識別情報に対応づけてトークン格納部に格納されているトークンから生成されたトークン画像に基づいて、サーバ画像を生成してよい。メッセージ決定部は、送信部が送信した複数のサーバ画像にそれぞれ含まれる複数の記号をオーバーラップさせた場合に当該オーバーラップした部分が同じ形状になる記号の組み合わせとしてメッセージを決定してよい。サーバ画像生成部は、複数のセルからなる画像としてサーバ画像を生成し、複数のセルのうち一部のセルの各々に記号の１つを配置し、記号が１つ配置された各セルにおいてオーバーラップした部分が同じ位置になるよう記号を配置してよい。記号が占めるピクセルおよび記号が占めるピクセル以外のピクセルを含む一のセルのすべてのピクセルの色は、いずれかの他のセルの対応するピクセルの色と同一であり、他のセルは、一のセルと同一の記号を含み、一のセルと他のセルとは、同一のトークン画像に基づいて生成された異なる複数のサーバ画像において同一の位置にあってよい。サーバ画像生成部は、複数のピクセルからなる画像として各セルにおける画像を生成し、複数のピクセルは、白色または黒色であり、各セルにおいて、記号が占めるピクセル以外の各ピクセルについて、ユーザとの間で予め共有されているトークン、セルの位置および記号をシードとする乱数発生により各ピクセルの色を決定してよい。複数のセルのうち、メッセージを構成する記号が配置された一部のセルを除く他のセルの何れかに、メッセージを構成しない偽記号を配置してよい。
【０００７】
トークン画像およびサーバ画像は、複数のピクセルを有し、サーバ画像生成部は、トークン画像とサーバ画像とが組み合わされた場合にメッセージを形成する部分のピクセルが、トークン画像とサーバ画像とで異なる色となるサーバ画像を生成してよい。サーバ画像生成部は、略等しい数の黒色のピクセルと白色のピクセルとを有するサーバ画像を生成してよい。サーバ画像生成部は、トークン画像とサーバ画像とが組み合わされた場合に、メッセージを形成する部分以外のピクセルの略７５％を黒色で略２５％を白色にすべく、サーバ画像を生成してよい。
【０００８】
あるいは、チャレンジキーをランダムに生成するチャレンジキー生成部をさらに備え、サーバ画像生成部は、ユーザとの間で予め共有されているトークン、およびチャレンジキーに基づいて、サーバ画像を生成し、送信部は、サーバ画像とともにチャレンジキーを送信してよい。送信部は、サーバ画像および前記チャレンジキーのメッセージ認証コード（ＭＡＣ）をさらに送信してよい。暗号化メッセージ送信装置およびユーザの端末は、ユーザのリクエストごとにトークン画像を生成し、サーバ画像生成部は、ユーザからのリクエストごとに異なるサーバ画像を生成してよい。メッセージに基づいて、カラー画像または白黒画像であるターゲット画像を生成するターゲット画像生成部をさらに備え、サーバ画像生成部は、ターゲット画像とトークン画像とからサーバ画像を生成し、ユーザの端末は、トークン画像とサーバ画像とをビット単位に排他的論理和することによって、メッセージがユーザに視認可能な画像を生成してよい。
【０００９】
なお、上記暗号化メッセージ送信装置は、上記暗号化メッセージ送信装置として機能させるためのプログラムとして把握することもでき、暗号化メッセージ送信方法として把握することもできる。あるいは、ユーザに伝達すべきメッセージを決定するメッセージ決定部と、ユーザが所有するトークン画像または前記ユーザにより生成されるトークン画像と組み合わされることによって、メッセージをユーザに視認可能にするサーバ画像を生成するサーバ画像生成部と、サーバ画像をユーザに送信する送信部とを備える暗号化メッセージ送信装置、およびサーバ画像を受け取り、当該サーバ画像とトークン画像と組み合わせることによってメッセージを解読する受信装置、を備えた認証システムとして把握することができ、この場合、ユーザが所有する２つのトークンまたはトークン画像（２つのトークン、２つのトークン画像、または１つのトークンおよび１つのトークン画像）のそれぞれに基づき、上記前記暗号化メッセージ送信装置によって生成された２つのサーバ画像のそれぞれから解読された第１情報および第２情報、並びにユーザによって選択されたパスワードに基づく第３情報から選択された２つの情報に基づいて、ユーザを認証する。上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態の暗号化メッセージ送信装置が適用可能なネットワークシステム１００の一例を示す。
【図２】本実施形態の暗号化メッセージ送信装置を用いた通信システム２００を示す。
【図３】通信システム２００における通信方法の一例を示す。
【図４】記号の一例を示す。
【図５】記号の一例を示す。
【図６】記号の一例を示す。
【図７】記号が重ねられた場合の一例を示す。
【図８】異なるサーバ画像Ｉｓを重ねた時の画像の一例を示す。
【図９】同一位置のセルに同一の記号が配置された場合の異なるサーバ画像Ｉｓを重ねた時の画像の一例を示す。
【図１０】サーバ画像Ｉｓとスタティックトークン画像Ｉｔｓとを組み合わせる様子を示す。
【図１１】サーバ画像Ｉｓとスタティックトークン画像Ｉｔｓとを組み合わせる途中の状態を示す。
【図１２】サーバ画像Ｉｓとスタティックトークン画像Ｉｔｓとの組み合わせが完了したオーバーラップ画像Ｉｏを示す。
【図１３】他の実施形態の暗号化メッセージ送信装置を用いた通信システム９００を示す。
【図１４】通信システム９００における通信方法の一例を示す。
【図１５】通信システム９００における通信方法の一例を示す。
【図１６】メッセージＭを表示する態様の一例を示す。
【図１７】メッセージＭを表示する態様の一例を示す。
【発明を実施するための形態】
【００１１】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１２】
以下の実施形態において、「画像」と表現する場合、紙等に印刷した画像はもとより、コンピュータシステム等によって処理され、液晶表示パネル等によって表示されて画像と認識される画像データも「画像」の概念に含む。この場合、画像データは、所定ビット数の一群のデジタルデータとして一つの画像を表すものであっても、一群のデータが逐次処理されて一連の画像データと認識できる限りにおいて、全ての画像データが記憶のために格納される必要はない。すなわち、画像データとして処理するために一部のデータが生成され、逐次処理されて、その後記録されることなく破棄されるものであってもよい。
【００１３】
図１は、本実施形態の暗号化メッセージ送信装置が適用可能なネットワークシステム１００の一例を示す。ネットワークシステム１００は、暗号化メッセージ送信装置の一例であるリモート認証サーバ１１０、サービスサーバ１２０、クライアント群１３０およびネットワーク１４０を含む。クライアント群１３０には、パーソナルコンピュータ１３２、情報携帯端末１３４、携帯電話１３６を含んでよい。リモート認証サーバ１１０、サービスサーバ１２０およびクライアント群１３０に含まれる各機器は、通信機能を備え、ネットワーク１４０を介して相互にメッセージを交換できる。
【００１４】
リモート認証サーバ１１０は、クライアント群１３０からのパスワード要求に応じてワンタイムパスワードを生成し、当該ワンタイムパスワードを組み込んだ暗号化イメージを生成して、クライアント群１３０の要求元に返送する。要求元では、暗号化イメージとキー画像とを用いてワンタイムパスワードを読み取り、読み取ったワンタイムパスワードをサービスサーバ１２０のログイン画面に入力して認証を要求する。サービスサーバ１２０は、入力されたワンタイムパスワードとともにリモート認証要求をリモート認証サーバ１１０に送信し、要求元の認証をリモート認証サーバ１１０に委任する。リモート認証サーバ１１０は、送信されたワンタイムパスワードを認証し、認証が成功したか失敗したかをサービスサーバ１２０に通知する。他の例では、サービスサーバ１２０は、要求元からの認証要求を、リモート認証サーバ１１０へ向け直し（リダイレクト）してもよい。この場合には、リモート認証サーバ１１０は、入力されたワンタイムパスワードの認証が完了した後、要求元をサービスサーバ１２０にリダイレクトする。
【００１５】
サービスサーバ１２０は、パスワード要求を発した要求元に認証が成功したか失敗したかを送信し、要求元からのサービス要求に応じてサービスを提供する。リモート認証サーバ１１０とサービスサーバ１２０とは一つのシステムであってよく、リモート認証に代えてサービスサーバ１２０が認証してもよい。サービスサーバ１２０のサービスは任意であり、認証を要求する限りサービスを提供するものでなくてもよい。
【００１６】
図２は、本実施形態の暗号化メッセージ送信装置を用いた通信システム２００を示す。通信システム２００の例では、暗号および復号に用いる秘密のキー画像がスタティックな場合を説明する。
【００１７】
通信システム２００は、リモート認証サーバ１１０の一部機能として提供される暗号化メッセージ送信装置２１０およびクライアント群１３０の一部機能として提供される受信装置２５０を備える。暗号化メッセージ送信装置２１０は、受信部２１２、メッセージ決定部２１４、ターゲット画像生成部２１６、トークン格納部２１８、サーバ画像生成部２２０、送信部２２２および乱数発生部２２４を有する。受信装置２５０は、送信部２５２、受信部２５４、トークン画像格納部２５６、画像重ね合わせ部２５８およびメッセージ表示部２６０を有する。
【００１８】
受信部２１２は、受信装置２５０からのチャレンジリクエストを受信する。チャレンジリクエストには受信装置２５０を使用するユーザの識別情報、たとえばユーザＩＤを含めることができる。すなわち、受信部２１２は、ユーザ識別情報を受信する。ここで、チャレンジリクエストは、たとえば認証のためのワンタイムパスワードの送信要求が例示できる。
【００１９】
メッセージ決定部２１４は、ユーザからのチャレンジリクエストに応答して、ユーザに伝達すべきメッセージＭを決定する。メッセージＭは、セキュアに受信装置２５０に伝送することを意図する情報であり、たとえばユーザの認証に用いるワンタイムパスワードが例示できる。ターゲット画像生成部２１６は、決定されたメッセージＭに基づくターゲット画像Ｉｔを生成する。
【００２０】
トークン格納部２１８は、ユーザ識別情報の一例であるユーザＩＤに対応づけて、スタティックトークン画像Ｉｔｓを格納する。トークン格納部２１８は、ユーザとの間で共有されている画像をスタティックトークン画像Ｉｔｓとして格納してよい。他の例においては、スタティックトークン画像Ｉｔｓの代わりに、ユーザとの間で予め共有されているトークン、たとえば乱数列を格納し、乱数発生のシードとしてトークンを使うことで、トークンからスタティックトークン画像Ｉｔｓを生成してもよい。
【００２１】
サーバ画像生成部２２０は、ユーザが所有するスタティックトークン画像Ｉｔｓと重ね合わされて組み合わされることによって、メッセージＭをユーザに視認可能にするサーバ画像Ｉｓを生成する。サーバ画像生成部２２０は、受信部２１２が受信したユーザＩＤに対応づけてトークン格納部２１８に格納されているスタティックトークン画像Ｉｔｓに基づいて、サーバ画像Ｉｓを生成する。送信部２２２は、サーバ画像Ｉｓをユーザに送信する。
【００２２】
送信部２５２は、ユーザＩＤとともにチャレンジリクエストを送信する。受信部２５４は、サーバ画像Ｉｓを受信する。トークン画像格納部２５６は、ユーザのスタティックトークン画像Ｉｔｓを格納する。トークン画像格納部２５６が格納するスタティックトークン画像Ｉｔｓは、暗号化メッセージ送信装置２１０のトークン格納部２１８が格納するスタティックトークン画像Ｉｔｓと同じである。
【００２３】
画像重ね合わせ部２５８は、受信部２５４が受信したサーバ画像Ｉｓとトークン画像格納部２５６が格納するスタティックトークン画像Ｉｔｓとを重ね合わせる。メッセージ表示部２６０は、サーバ画像Ｉｓとスタティックトークン画像Ｉｔｓとを重ね合わせたオーバーラップ画像Ｉｏを表示する。
【００２４】
図３は、通信システム２００における通信方法の一例を示す。以下の説明において、暗号化メッセージ送信装置２１０による処理をサーバ処理として、受信装置２５０による処理をクライアント処理として説明する。
【００２５】
クライアントとサーバは、ユーザごとの秘密のトークンとして、スタティックトークン画像Ｉｔｓを共有している。スタティックトークン画像Ｉｔｓに代えて、スタティックトークン画像Ｉｔｓを生成するためのシードを保持してもよい。
【００２６】
サーバは、記号を用いてメッセージＭを生成してよい。記号は、複数の記号からなる記号セットから選択される。記号セットは、任意の２つの記号を選択した場合、選択された記号ペアのオーバーラップしたピクセル領域が常に同じになるよう構成される。たとえば、記号セットが、「ｏ」、「８」、「ｇ」、「ｐ」、「ｑ」、「ｂ」および「ｄ」である場合、オーバーラップした記号は「ｏ」であり、常に等しい。図４、図５および図６は、オーバーラップしたピクセル領域が常に同じになる記号の例である「ｐ」、「ｑ」および「８」を示す。いずれの記号も「ｏ」に相当するピクセル領域を有し、これを重ねると図７のようになる。つまりいずれの記号も共通のオーバーラップ領域である「ｏ」を有する。このような記号セットを用いることにより、暗号を破ろうとする攻撃者に秘密のスタティックトークン画像Ｉｔｓの一部を推定させることを防止できる。
【００２７】
ターゲット画像Ｉｔ、スタティックトークン画像Ｉｔｓおよびサーバ画像Ｉｓは同じサイズであり、ｉ×ｊのセルに分割される。各セルはｎ×ｍのピクセルで構成される。各ピクセルは、黒または白の何れかであってよい。
【００２８】
まず、クライアントは、サーバにチャレンジのリクエストを送信する（ステップ３０２）。リクエストには、ユーザＩＤを含める。サーバは、リクエストを受信し（ステップ３０４）、メッセージＭを決定する（ステップ３０６）。
【００２９】
サーバは、さらにメッセージＭからターゲット画像Ｉｔを生成する（ステップ３０８）。ターゲット画像Ｉｔは、ｉ×ｊの各セルにメッセージＭを構成する各記号を配置して生成する。記号が配置されないセルはブランクのまま残してよい。
【００３０】
サーバは、スタティックトークン画像Ｉｔｓを取得する（ステップ３１０）。スタティックトークン画像Ｉｔｓは、それがトークン格納部２１８に記録されている場合は読み出すことにより、スタティックトークン画像Ｉｔｓを生成するに必要なシードが記録されている場合には、シードから擬似乱数を発生させることによりスタティックトークン画像Ｉｔｓを生成できる。
【００３１】
サーバは、ターゲット画像Ｉｔとスタティックトークン画像Ｉｔｓとからサーバ画像Ｉｓを生成する（ステップ３１２）。サーバは、サーバ画像Ｉｓを、セルごとに生成する。ターゲット画像Ｉｔの着目するセルが記号を含まないとき、サーバ画像Ｉｓの当該セル内の各ピクセルには黒か白をランダムにセットする。ターゲット画像Ｉｔの着目するセルが記号を含むとき、各セルにおけるサーバ画像Ｉｓの生成は、ピクセルごとに以下の手順で行う。ターゲット画像Ｉｔの着目するピクセルが白のとき、乱数発生部２２４が発生する擬似乱数を用いて、当該ピクセルを黒か白の何れかにランダムにセットする。ターゲット画像Ｉｔの着目するピクセルが黒のとき、スタティックトークン画像Ｉｔｓの該当ピクセルが白なら、サーバ画像Ｉｓの該当ピクセルを黒にセットし、スタティックトークン画像Ｉｔｓの該当ピクセルが黒なら、サーバ画像Ｉｓの該当ピクセルを白にセットする。
【００３２】
すなわち、スタティックトークン画像Ｉｔｓおよびサーバ画像Ｉｓは、複数のピクセルを有し、複数のピクセルは、白色または黒色であり、サーバ画像生成部２２０では、サーバ画像Ｉｓが、スタティックトークン画像Ｉｔｓとサーバ画像Ｉｓが重ね合わされた場合にメッセージＭを形成する部分のピクセルが、スタティックトークン画像Ｉｔｓとサーバ画像Ｉｓとで異なる色となるようサーバ画像Ｉｓを生成する。
【００３３】
なお、各セルにおいて記号のオーバーラップした部分が常に同じ位置になるよう記号を配置する。これにより複数のサーバ画像Ｉｓが重ねられたとしても図８に示すような記号のオーバーラップした共通部分だけであり、その他の知識を攻撃者に与えることはない。また、乱数発生部２２４に、記号識別子、画像内のセルの位置およびスタティックトークン画像Ｉｔｓのビットを組み合わせたシードをセットすることができる。これにより、対応するセルの同一の位置に同一の記号が配置された異なるサーバ画像Ｉｓが重ね合わされた場合、記号の一部になるピクセルと背景の一部になるピクセルとのいずれであっても、そのセルに生成されるピクセルパターンはまったく同じになる。この結果、複数のサーバ画像Ｉｓを重ねた画像は図９に示すように当該部分で５０％の透過率を示すだけであり、攻撃者に有用な知識を与えることはない。
【００３４】
なお、メッセージＭの記号が配置されていないサーバ画像Ｉｓのセルに、偽メッセージの偽記号を組み込んでも良い。偽メッセージの偽記号は、記号セットから再度ランダムに記号を選択することで生成できる。偽メッセージを構成する偽記号は、ターゲット画像Ｉｔの空セルに配置できる。この場合、偽記号が配置されたセルに対する乱数の発生は、乱数発生部２２４に、記号識別子、画像内のセル位置およびスタティックトークン画像Ｉｔｓに対応づけて格納されている偽メッセージ用のランダムキーを組み合わせたシードをセットすることで実現できる。このような偽メッセージにより、より強い暗号強度を提供できる。また、上記の暗号方法では、通信途中でサーバ画像Ｉｓに対し改竄が行われたとしても、多くの場合、記号の形成領域に連続した黒領域が生じるので、改竄の事実を視覚的に容易に検出することができる。
【００３５】
サーバは、サーバ画像Ｉｓをクライアントに送信する（ステップ３１４）。クライアントは、受信したサーバ画像Ｉｓと保持するスタティックトークン画像Ｉｔｓとを重ねる（ステップ３１６）。
【００３６】
図１０から図１２は、サーバ画像Ｉｓとスタティックトークン画像Ｉｔｓと重ね合わせる様子を示す。図１０は、重ね合わせる前のサーバ画像Ｉｓおよびスタティックトークン画像Ｉｔｓであり、各々略５０％の開口率（全体のピクセル数に対する白のピクセル数の比率）であり、白または黒の各ピクセルはランダムに配置されている。よって、サーバ画像Ｉｓだけから情報を読み取ることはできない。
【００３７】
図１１は、サーバ画像Ｉｓとスタティックトークン画像Ｉｔｓとを重ね合わせる途中の状態を示す。重ね合わされた領域のピクセルは、サーバ画像Ｉｓとスタティックトークン画像Ｉｔｓの何れもが白である場合に白であり、何れかが黒であれば黒になる。よって重ねあわされた領域の開口率は、ほぼ２５％になる。
【００３８】
図１２は、重ね合わせが完了したオーバーラップ画像Ｉｏを示す。ターゲット画像ＩｔのメッセージＭの部分のピクセルは、１００％が黒になるので、メッセージＭである「ｑｐｇ８８ｇ」の文字が容易に視認できる。すなわち、スタティックトークン画像Ｉｔｓとサーバ画像Ｉｓとが重ね合わされた場合に、メッセージＭを形成する部分以外のピクセルの略７５％を黒色で略２５％を白色にすべく、サーバ画像Ｉｓが生成される。
【００３９】
クライアントは、重ね合わせにより生成されたオーバーラップ画像Ｉｏを表示し（ステップ３１８）、ユーザにメッセージＭを読み取らせる（ステップ３２０）。ユーザは読み取ったメッセージＭをたとえばパスワードとして入力し、サービスサーバ等からサービスを受けることができる（ステップ３２２）。
【００４０】
図１３は、他の実施形態の暗号化メッセージ送信装置を用いた通信システム９００を示す。通信システム９００の例では、暗号および復号に用いる秘密のキー画像がダイナミックに変化する場合を説明する。通信システム９００は、リモート認証サーバ１１０の一部機能として提供される暗号化メッセージ送信装置９１０およびクライアント群１３０の一部機能として提供される受信装置９５０を備える。
【００４１】
暗号化メッセージ送信装置９１０は、受信部９１２、サーバチャレンジキー生成部９１４、トークン格納部９１６、シード生成部９１８、乱数発生部９２０、メッセージ決定・ターゲット画像生成部９２２、サーバ画像生成部９２４、ＭＡＣ計算部９２６および送信部９２８を有する。受信装置９５０は、クライアントチャレンジキー生成部９５２、送信部９５４、受信部９５６、ＭＡＣ計算部９５８、ＭＡＣ照合部９６０、トークン格納部９６２、シード生成部９６４、乱数発生部９６６、画像組み合わせ部９６８およびメッセージ表示部９７０を有する。なお、ダイナミックトークンを格納する格納部を備えて、ダイナミックトークンを読み出してもよい。
【００４２】
受信部９１２は、受信装置９５０からのチャレンジリクエストを受信する。チャレンジリクエストには、受信装置９５０のクライアントチャレンジキー生成部９５２が生成したクライアントチャレンジキーＣＫｃを含める。またチャレンジリクエストには、ユーザの識別情報、たとえばユーザＩＤを含めることができる。
【００４３】
サーバチャレンジキー生成部９１４は、サーバチャレンジキーＣＫｓをランダムに生成する。サーバチャレンジキーＣＫｓは、ユーザからのチャレンジ要求を処理する一連の動作の間、クライアントチャレンジキーＣＫｃとともに利用される暗号化のためのパラメータである。サーバチャレンジキーＣＫｓおよびクライアントチャレンジキーＣＫｃは、一連の処理ごとにランダムに決定される。サーバチャレンジキーＣＫｓは所定の寿命たとえば１分ごとに動的に変更されるものであってもよい。
【００４４】
トークン格納部９１６は、ダイナミックトークンＴｄを格納する。ダイナミックトークンＴｄは、サーバである暗号化メッセージ送信装置９１０とクラインとである受信装置９５０との間で共有される。
【００４５】
シード生成部９１８は、サーバチャレンジキーＣＫｓ、クライアントチャレンジキーＣＫｃおよびダイナミックトークンＴｄを用いて擬似乱数発生用のシードＳを生成する。
【００４６】
乱数発生部９２０は、シード生成部９１８が生成したシードＳを初期値として擬似乱数を発生する。乱数発生部９２０が出力するビットストリームは、ターゲット画像の幅のピクセル数と高さのピクセル数と各ピクセルが示すことができる色の深さの数とを乗算した長さを持ち、表示装置に所定の色の深さのピクセルに変換されれば１つの画像として視覚可能になり、ダイナミックトークン画像Iｔｄとして利用される。
【００４７】
メッセージ決定・ターゲット画像生成部９２２は、メッセージＭを決定し、メッセージＭに基づきターゲット画像Ｉｔを生成する。メッセージＭは、通信システム２００の場合とは異なり、記号セットから選択する必要はない。任意の文字、画像等をメッセージＭとして選択できる。また、ターゲット画像Ｉｔとダイナミックトークン画像Ｉｔｄとの色の深さの数が同一であれば、ターゲット画像Ｉｔ（メッセージＭ）は、必ずしも白および黒で構成される必要はない。ターゲット画像Ｉｔに何ら制限はなく、多数の色で構成されるカラー画像とすることもできる。
【００４８】
サーバ画像生成部９２４は、ターゲット画像Ｉｔと、乱数発生部９２０が発生したビットストリームであるダイナミックトークン画像Ｉｔｄとからサーバ画像Ｉｓを生成する。具体的には、サーバ画像生成部９２４は、ターゲット画像Ｉｔとダイナミックトークン画像Ｉｔｄとをビット単位で排他的論理和（ＸＯＲ）することにより、サーバ画像Ｉｓを生成する。ビットストリームはダイナミックトークンＴｄとサーバチャレンジキーＣＫｓとクライアントチャレンジキーＣＫｃとから生成されるシードＳに基づき形成されるので、サーバ画像生成部９２４は、ユーザとの間で予め共有されているトークン（ダイナミックトークンＴｄ）、およびチャレンジキー（サーバチャレンジキーＣＫｓまたはクライアントチャレンジキーＣＫｃ）に基づいて、サーバ画像Ｉｓを生成する。
【００４９】
ＭＡＣ計算部９２６は、通信対象となるサーバ画像ＩｓおよびサーバチャレンジキーＣＫｓのメッセージ認証コード（ＭＡＣ）を計算する。たとえばサーバ画像ＩｓおよびサーバチャレンジキーＣＫｓにクライアントチャレンジキーＣＫｃを加えたメッセージに、ダイナミックトークンＴｄをキーとする鍵付きハッシュ関数を適用して計算できる。送信部９２８は、サーバ画像ＩｓとともにサーバチャレンジキーＣＫｓを送信する。また、ＭＡＣを送信してもよい。ＭＡＣはクライアントチャレンジキーＣＫｃに対しても計算されてよい。ＭＡＣは鍵付きハッシュ関数には限られない。
【００５０】
クライアントチャレンジキー生成部９５２は、クライアントチャレンジキーＣＫｃをランダムに生成する。クライアントチャレンジキーＣＫｃは、ユーザからのチャレンジ要求を処理する一連の動作の間、サーバチャレンジキーＣＫｓとともに利用される。
【００５１】
送信部９５４は、ユーザＩＤおよびクライアントチャレンジキーＣＫｃとともにチャレンジリクエストを送信する。受信部９５６は、サーバ画像Ｉｓ、サーバチャレンジキーＣＫｓおよびＭＡＣを受信する。
【００５２】
ＭＡＣ計算部９５８は、受信したサーバ画像ＩｓおよびサーバチャレンジキーＣＫｓと保持しているクライアントチャレンジキーＣＫｃとからなるメッセージにダイナミックトークンＴｄをキーとする鍵付きハッシュ関数を適用して計算する。ＭＡＣ照合部９６０は、ＭＡＣ計算部９５８が計算したＭＡＣと受信部９５６が受信したＭＡＣとを比較し、異なる場合は処理を中断する。これにより通信途中でのメッセージの改竄を検出できる。
【００５３】
トークン格納部９６２は、ダイナミックトークンＴｄを格納する。シード生成部９６４は、シードＳを生成する。乱数発生部９６６は、シードＳを初期値とする擬似乱数ビットストリームを、ダイナミックトークン画像Ｉｔｄとして生成する。トークン格納部９６２、シード生成部９６４および乱数発生部９６６は、トークン格納部９１６、シード生成部９１８および乱数発生部９２０と同様である。
【００５４】
画像組み合わせ部９６８は、受信部９５６が受信したサーバ画像Ｉｓと乱数発生部９６６が発生したダイナミックトークン画像Ｉｔｄとから組み合わせ画像Ｉｃを生成する。具体的には、画像組み合わせ部９６８は、サーバ画像Ｉｓとダイナミックトークン画像Ｉｔｄとをビット単位で排他的論理和（ＸＯＲ）することにより、組み合わせ画像Ｉｃを生成する。メッセージ表示部９７０は、組み合わせ画像Ｉｃを表示する。この場合、組み合わせ画像Ｉｃは、ターゲット画像Ｉｔと同一である。なお、画像組み合わせ部９６８は、サーバ画像Ｉｓとダイナミックトークン画像Ｉｔｄとをビット単位で論理和（ＯＲ）することで重ね合わせることにより、組み合わせ画像Ｉｃを生成してもよい。この場合、組み合わせ画像Ｉｃは、白または黒のピクセルだけで構成され、メッセージＭを形成する部分のピクセルの１００％が黒色になり、メッセージＭを形成する部分以外のピクセルの略５０％が黒色になる。
【００５５】
図１４および図１５は、通信システム９００における通信方法の一例を示す。以下の説明において、暗号化メッセージ送信装置９１０による処理をサーバ処理として、受信装置９５０による処理をクライアント処理として説明する。クライアントおよびサーバは、ユーザごとのランダム文字列であるダイナミックトークンＴｄを共有する。ダイナミックトークンＴｄは秘密に保持される。クライアントおよびサーバは、擬似乱数生成（ＰＲＮＧ）アルゴリズムとメッセージ認証コード（ＭＡＣ）とを独立に利用する。クライアントおよびサーバは、同一のＰＲＮＧアルゴリズムおよび同一のＭＡＣアルゴリズム（たとえば、ＨＭＡＣ−ＳＨＡ２５６）を利用することに同意している必要があり、ＰＲＮＧは暗号的にセキュアであり決定論的である必要がある。
【００５６】
クライアントは、ランダム文字列であるクライアントチャレンジキーＣＫｃを生成する（ステップ１００２）。クライアントは、サーバに、ユーザＩＤおよびクライアントチャレンジキーＣＫｃとともにチャレンジをリクエストする（ステップ１００４）。
【００５７】
サーバは、リクエストを受信すると（ステップ１００６）、サーバチャレンジキーＣＫｓを生成する（ステップ１００８）。サーバはさらに、ダイナミックトークンＴｄを呼び出し（ステップ１０１０）、クライアントチャレンジキーＣＫｃ、サーバチャレンジキーＣＫｓおよびダイナミックトークンＴｄからシードＳを生成する（ステップ１０１２）。シードＳは、乱数発生部９２０の初期値にセットする（ステップ１０１４）。サーバは、乱数発生部９２０を動作させ、擬似乱数のビットストリームを発生させて、ダイナミックトークン画像Ｉｔｄを生成する（ステップ１０１６）。
【００５８】
サーバは、メッセージＭを決定し（ステップ１０１８）、ターゲット画像Ｉｔを生成する（ステップ１０２０）。サーバはさらに、ターゲット画像Ｉｔとダイナミックトークン画像Ｉｔｄとをビット単位で排他的論理和（ＸＯＲ）することにより、サーバ画像Ｉｓを生成する（ステップ１０２２）。
【００５９】
サーバは、ダイナミックトークンＴｄをキーとして用いて、サーバ画像Ｉｓ、サーバチャレンジキーＣＫｓおよびクライアントチャレンジキーＣＫｃから、たとえばＨＭＡＣ−ＳＨＡ２５６によるＭＡＣを計算する（ステップ１０２４）。サーバは、サーバ画像Ｉｓ、サーバチャレンジキーＣＫｓおよびＭＡＣをクライアントに送信する（ステップ１０２６）。
【００６０】
クライアントは、サーバ画像Ｉｓ、サーバチャレンジキーＣＫｓおよびＭＡＣをサーバから受け取り（ステップ１０２８）、ダイナミックトークンＴｄをキーとして用いて、受信したサーバ画像ＩｓおよびサーバチャレンジキーＣＫｓと保持しているクライアントチャレンジキーＣＫｃとからＭＡＣを計算し、受信したＭＡＣと照合する（ステップ１０３０）。照合が合致しない場合は、処理を中断し、照合が合致する場合はステップ１０３２に進んで処理を継続する。
【００６１】
クライアントは、クライアントチャレンジキーＣＫｃ、サーバチャレンジキーＣＫｓおよびダイナミックトークンＴｄからシードＳを生成し、シードＳを乱数発生部９６６の初期値にセットし（ステップ１０３２）、擬似乱数のビットストリームを発生させて、ダイナミックトークン画像Ｉｔｄを生成する（ステップ１０３４）。
【００６２】
クライアントは、受信したサーバ画像Ｉｓとダイナミックトークン画像Ｉｔｄとをビット単位で排他的論理和（ＸＯＲ）し（ステップ１０３６）、生成された組み合わせ画像Ｉｃを表示し（ステップ１０３８）、ユーザにメッセージＭを読み取らせる（ステップ１０４０）。ユーザは読み取ったメッセージＭをたとえばパスワードとして入力し、サービスサーバ等からサービスを受けることができる（ステップ１０４２）。パスワードには読み取ったメッセージＭに個人識別番号ＰＩＮを追加することができる。
【００６３】
通信システム９００の例によれば、ダイナミックトークン画像Ｉｔｄおよびサーバ画像Ｉｓの両方が、チャレンジリクエストのそれぞれに対してダイナミックに変化される。暗号的にセキュアな乱数発生部を用いることで、漏洩または傍受された過去のサーバ画像Ｉｓに基づいてダイナミックトークン画像Ｉｔｄおよびサーバ画像Ｉｓが予測され得ないことを保証できる。また、サーバおよびクライアントが、各々ランダムなサーバチャレンジキーＣＫｓおよびクライアントチャレンジキーＣＫｃを発生させ、これを暗号化に用いるので、通信データを傍受して再現するリプレイアタックを防止できる。加えて、サーバ画像ＩｓとともにＭＡＣを送るので、通信データが改竄され得ない。
【００６４】
通信システム９００で用いるダイナミックトークン画像Ｉｔｄに通信システム２００で説明したスタティックトークン画像Ｉｔｓを組み合わせることができる。このような場合、ユーザによって選択されたパスワード、例えば個人識別番号ＰＩＮを加えて３つの要素で個人識別をすることが可能であり、たとえば、通常は３つの要素のうち２つの要素で認証を行うよう運用できる。通常運用において、ダイナミックトークン画像ＩｔｄおよびＰＩＮ、またはスタティックトークン画像ＩｔｓおよびＰＩＮで認証を行っている場合、ＰＩＮを紛失するとログインできなくなる。しかし３つの要素を組み合わせて認証できる場合には、ダイナミックトークン画像Ｉｔｄおよびスタティックトークン画像Ｉｔｓで認証してログインを許可し、新たなＰＩＮをログインユーザに発行することができる。また、ダイナミックトークンＴｄを再生成するために、３つの要素のうちの２つの要素が利用されてもよい。たとえば、新しいＰＣあるいはモバイルデバイスの場合、またはＰＣあるいはモバイルデバイスが紛失あるいは盗難された場合に、ダイナミックトークンＴｄの再生成が必要となる。これにより、好きなペットの名前は？あるいは母の旧姓は？のような予め定められた個人的な質問によってユーザを認証してダイナミックトークンＴｄを再発行するシステム、またはヘルプデスクに電話で問い合わせてダイナミックトークンＴｄを再発行してもらうシステムに比べて、より安全性の高いシステムが提供できる。
【００６５】
図１６および図１７は、メッセージＭを表示する態様の一例を示す。図１６の例は、たとえばブラウザの表示例であり、ブラウザにパスワード入力フィールドとともにメッセージＭが表示されている。ユーザは、メッセージＭを読み取り、パスワード入力フィールドに読み取ったメッセージＭをタイプして認証を要求できる。なお、認証に必要なパスワードには、メッセージＭに加えて簡単な個人識別番号ＰＩＮを要求してもよい。本実施形態の通信システム９００を用いれば、安全なワンタイムパスワードをメッセージＭとして提供することができるので、ユーザは複雑なパスワードを記憶する必要がない。
【００６６】
図１７は、携帯情報端末にメッセージＭを表示する例を示す。たとえばパーソナルコンピュータを経由してサービスログインする場合に、ログイン認証用のワンタイムパスワードを、ログインおよびサービスに用いる通信経路とは異なる、携帯情報端末の通信経路を通じて提供できる。これによりセキュリティをさらに高めることができる。
【００６７】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００６８】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【００６９】
１００  ネットワークシステム
１１０  リモート認証サーバ
１２０  サービスサーバ
１３０  クライアント群
１３２  パーソナルコンピュータ
１３４  情報携帯端末
１３６  携帯電話
１４０  ネットワーク
２００  通信システム
２１０  暗号化メッセージ送信装置
２１２  受信部
２１４  メッセージ決定部
２１６  ターゲット画像生成部
２１８  トークン格納部
２２０  サーバ画像生成部
２２２  送信部
２２４  乱数発生部
２５０  受信装置
２５２  送信部
２５４  受信部
２５６  トークン画像格納部
２５８  画像重ね合わせ部
２６０  メッセージ表示部
９００  通信システム
９１０  暗号化メッセージ送信装置
９１２  受信部
９１４  サーバチャレンジキー生成部
９１６  トークン格納部
９１８  シード生成部
９２０  乱数発生部
９２２  メッセージ決定・ターゲット画像生成部
９２４  サーバ画像生成部
９２６  ＭＡＣ計算部
９２８  送信部
９５０  受信装置
９５２  クライアントチャレンジキー生成部
９５４  送信部
９５６  受信部
９５８  ＭＡＣ計算部
９６０  ＭＡＣ照合部
９６２  トークン格納部
９６４  シード生成部
９６６  乱数発生部
９６８  画像組み合わせ部
９７０  メッセージ表示部
ＣＫｃ  クライアントチャレンジキー
ＣＫｓ  サーバチャレンジキー
Ｉｃ  組み合わせ画像
Ｉｏ  オーバーラップ画像
Ｉｓ  サーバ画像
Ｉｔ  ターゲット画像
Ｉｔｄ  ダイナミックトークン画像
Ｉｔｓ  スタティックトークン画像
Ｍ  メッセージ
ＰＩＮ  個人識別番号
Ｓ  シード
Ｔｄ  ダイナミックトークン
【図２】
2011097192.tif 000003
【図３】
2011097192.tif 000004
【図８】
2011097192.tif 000005
【図９】
2011097192.tif 000006
【図１０】
2011097192.tif 000007
【図１１】
2011097192.tif 000008
【図１２】
2011097192.tif 000009
【図１３】
2011097192.tif 000010
【図１４】
2011097192.tif 000011
【図１５】
2011097192.tif 000012
【図１】
2011097192.tif 000013
【図４】
2011097192.tif 000014
【図５】
2011097192.tif 000015
【図６】
2011097192.tif 000016
【図７】
2011097192.tif 000017
【図１６】
2011097192.tif 000018
【図１７】
2011097192.tif 000019