(57)【要約】【課題】インターネットで転送されてくる画像情報のキャッシュデータの秘匿性を向上させるデータキャッシュ装置および情報処理装置を提供する。【解決手段】クライント・サーバ型のデータ転送時に、クライアント側でキャッシュを利用する場合、そのクライアント機器固有の情報、ユーザ固有の情報（ユーザ指定のパスワードやユーザとリンクしたランダム値）、あるいはこれらの情報の組み合わせをキーとして、キャッシュ情報を暗号化し、当該機器やユーザ以外では情報を再構成することができないようにした。また、ＪＰＩＰ規格を基いて受信した分割画像に対しても、全分割画像や特に重要な分割画像や指定された分割画像を暗号化するようにして、分割画像を再構成できないようにした。【選択図】図６
2007072543.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークを介して双方通信可能に接続されたサーバからユーザ所望の符号化データを受信すると共にキャッシュするクライアントに備えられたデータキャッシュ装置において、当該クライアントの機器固有の情報を記憶する記憶手段と、前記記憶手段に記憶された機器固有の情報をキーとして、受信した符号化データのキャッシュを暗号化する暗号化手段を有し、当該機器以外では情報を再構成することができないようにすることを特徴とするデータキャッシュ装置。
【請求項２】
通信ネットワークを介して双方通信可能に接続されたサーバからユーザ所望の符号化データを受信すると共にキャッシュするクライアントに備えられたデータキャッシュ装置において、ユーザ固有の情報を記憶する記憶手段と、前記記憶手段に記憶されたユーザ固有の情報をキーとして、受信した符号化データのキャッシュを暗号化する暗号化手段を有し、当該機器以外では情報を再構成することができないようにすることを特徴とするデータキャッシュ装置。
【請求項３】
通信ネットワークを介して双方通信可能に接続されたサーバからユーザ所望の符号化データを受信すると共にキャッシュするクライアントに備えられたデータキャッシュ装置において、当該クライアントの機器固有の情報およびユーザ固有の情報を記憶する記憶手段と、前記記憶手段に記憶された機器固有の情報およびユーザ固有の情報を組み合わせてキーとして、受信した符号化データのキャッシュを暗号化する暗号化手段を有し、当該機器以外では情報を再構成することができないようにすることを特徴とするデータキャッシュ装置。
【請求項４】
請求項２または３に記載のデータキャッシュ装置において、前記ユーザ固有の情報をユーザ指定のパスワードあるいはユーザとリンクしたランダム値としたことを特徴とするデータキャッシュ装置。
【請求項５】
通信ネットワークを介して双方通信可能に接続されたサーバから、ユーザ所望の画像について所定形式で分割された符号化データをＪＰＩＰ規格に基いて受信すると共にキャッシュする情報処理装置において、請求項１乃至４のいずれかに記載されたデータキャッシュ装置を用いて、分割されて転送されてきた全符号化データを暗号化されたキャッシュ情報として記憶し、分割画像を再構成できないようにしたことを特徴とする情報処理装置。
【請求項６】
通信ネットワークを介して双方通信可能に接続されたサーバから、ユーザ所望の画像について所定形式で分割された符号化データをＪＰＩＰ規格に基いて受信すると共にキャッシュする情報処理装置において、請求項１乃至４のいずれかに記載されたデータキャッシュ装置を用いて、分割されて転送されてきた符号化データのうちユーザが重要と指定された符号化データ（ＲＯＩ部分）を暗号化されたキャッシュ情報として記憶し、ＲＯＩ部分の分割画像を再構成できないようにしたことを特徴とする情報処理装置。
【請求項７】
通信ネットワークを介して双方通信可能に接続されたサーバから、ユーザ所望の画像について所定形式で分割された符号化データをＪＰＩＰ規格に基いて受信すると共にキャッシュする情報処理装置において、請求項１乃至４のいずれかに記載されたデータキャッシュ装置を用いて、分割されて転送されてきた符号化データのうち、ユーザが指定した符号化データを暗号化されたキャッシュ情報として記憶し、指定された部分の分割画像を再構成できないようにしたことを特徴とする情報処理装置。
【請求項８】
コンピュータに、請求項１乃至４のいずれかに記載のデータキャッシュ装置の機能、あるいは、請求項５乃至７のいずれかに記載の情報処理装置の機能を実現させるためのプログラム。
【請求項９】
請求項８に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データキャッシュ装置、情報処理装置、プログラムおよび記録媒体に関し、インターネットによって転送されてキャッシュした情報のセキュリティに関する。特に、ＪＰＩＰ（ＪＰＥＧ２０００インターネットプロトコル）を用いて転送された画像情報のセキュリティに関する。
【背景技術】
【０００２】
インターネットに接続可能なＰＣ（パーソナルコンピュータ）のユーザは、Ｗｅｂブラウザの機能を利用して、インターネット上のＷＷＷ（World Wide Web）サーバにアクセスすることにより、各種の文書データや画像データ等の閲覧を行っている。
このようなＷｅｂブラウザを利用した情報の閲覧は、インターネット上において各種情報を公開するＷＷＷサーバと、その情報を閲覧するＰＣのクライアントとの間で、ＨＴＴＰ（Hyper Text Transfer Protocol）なる通信プロトコルを用いて、サーバ／クライアント間の通信が行われている。
【０００３】
また、このＷＷＷサーバには、情報提供者がインターネット上での公開を希望する各種の情報がＷｅｂページとして格納されており、その情報は、クライアント側のＷｅｂブラウザを操作することによって、クライアント側のＰＣに表示される。
また、クライアント側のユーザは、Ｗｅｂブラウザを操作することにより、Ｗｅｂページ内のリンクを辿ってユーザ所望の情報を得ることができる。
【０００４】
例えば、Ｗｅｂブラウザで表示されたＷｅｂページ内のリンク部分をクリックすると、Ｗｅｂブラウザは、そのクリックされたリンク部分のＵＲＬ（Uniform Resource Locator）を取得して、このＵＲＬで示されるＷＷＷサーバに対してドキュメント情報の送信リクエストを発行する。
この送信リクエストを受けたＷＷＷサーバは、そのリクエストに対応するドキュメント情報をクライアントに返す。
クライアント側のＷｅｂブラウザは、ＷＷＷサーバから受信したドキュメント情報から必要なアプリケーションを特定し、このアプリケーションを起動して、ドキュメント情報をＰＣの表示装置上に表示する。
これにより、ユーザが受信したドキュメント情報を閲覧することができる。
【０００５】
上述したようにＨＴＴＰでは、基本的にはクライアント側からあるＵＲＬに対して送信リクエストがＷＷＷサーバ側に伝えられると、ＷＷＷサーバ側では、そのＵＲＬで指定されているドキュメント情報をクライアント側に送信している。
しかしながら、インターネットを構成する個々のネットワークは、必ずしも大量の情報を流すのに十分なスループットを持っているとは限らない。十分でないスループットしかないネットワークを介してＷＷＷサーバからユーザのＰＣへ大量の情報を送ろうとすると、転送に時間がかかってしまう。
【０００６】
このため、平均的なスループット改善方法として、ＷＷＷサーバとユーザのＰＣの間にキャッシュ装置をおいて、同じデータを再度転送しないようにしている。
このキャッシュ装置は、ネットワーク上に配置され、ユーザのＰＣからＷＷＷサーバにドキュメント情報の送信リクエストを送信するときには、必ずこのキャッシュ装置を通すようにしておく。
ＷＷＷサーバからＰＣに送られたドキュメント情報は、このキャッシュ装置に一時的に蓄積され、ＰＣから再度同じドキュメント情報を要求した時には、キャッシュ装置が一時的に蓄積しているドキュメント情報を配信する。これにより、ＰＣとＷＷＷサーバとの間の応答性が緩和される可能性がある。
【０００７】
ところで、サーバにあるＪＰＥＧ２０００仕様に基づいて符号化された符号データをアクセスする方式として、ＪＰＩＰ（JPEG2000 image coding system-Part9）がある。その仕様には、既にクライアント側に受信された符号データは新たに転送することなく使用することで高速にアクセスできるような仕組みとして、クライアント上に符号データの一部を保存するキャッシュの機能を備えている（特許文献１、２参照）。
【特許文献１】特開２００４−２７４７５８号公報
【特許文献２】特開２００５−１２６８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述したキャッシュデータは、ＪＰＥＧ２０００の仕様で符号化された符号データであっても、分割された符号データを集めれば第三者が元の情報を再構成できてしまうというセキュリティ上の課題がある。特に、キャッシュデータが分割されていない場合には、第三者が元の情報を再構成するのが容易である。
【０００９】
従来からこのようなデジタル情報の暗号化方式、特に画像の暗号化方式が考えられていたが、クライアントにしかもオフラインで蓄積することができる一時ファイルであるキャッシュデータの暗号化には必ずしも明確な方法はなかった。そのため、通常の画像の暗号化は実現できても、キャッシュデータから元の情報を再構成してしまうことから、情報を守るには十分耐えられる強度がなかった。
【００１０】
本発明は、上述の実情を考慮してなされたものであって、インターネットで転送されてくる画像情報のキャッシュデータの秘匿性を向上させるデータキャッシュ装置、情報処理装置、プログラムおよび記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記の課題を解決するために、請求項１に記載の発明は、通信ネットワークを介して双方通信可能に接続されたサーバからユーザ所望の符号化データを受信すると共にキャッシュするクライアントに備えられたデータキャッシュ装置において、当該クライアントの機器固有の情報を記憶する記憶手段と、前記記憶手段に記憶された機器固有の情報をキーとして、受信した符号化データのキャッシュを暗号化する暗号化手段を有し、当該機器以外では情報を再構成することができないようにすることを特徴とするデータキャッシュ装置である。
【００１２】
請求項２に記載の発明は、通信ネットワークを介して双方通信可能に接続されたサーバからユーザ所望の符号化データを受信すると共にキャッシュするクライアントに備えられたデータキャッシュ装置において、ユーザ固有の情報を記憶する記憶手段と、前記記憶手段に記憶されたユーザ固有の情報をキーとして、受信した符号化データのキャッシュを暗号化する暗号化手段を有し、当該機器以外では情報を再構成することができないようにすることを特徴とするデータキャッシュ装置である。
【００１３】
請求項３に記載の発明は、通信ネットワークを介して双方通信可能に接続されたサーバからユーザ所望の符号化データを受信すると共にキャッシュするクライアントに備えられたデータキャッシュ装置において、当該クライアントの機器固有の情報およびユーザ固有の情報を記憶する記憶手段と、前記記憶手段に記憶された機器固有の情報およびユーザ固有の情報を組み合わせてキーとして、受信した符号化データのキャッシュを暗号化する暗号化手段を有し、当該機器以外では情報を再構成することができないようにすることを特徴とするデータキャッシュ装置である。
【００１４】
請求項４に記載の発明は、請求項２または３に記載のデータキャッシュ装置において、前記ユーザ固有の情報をユーザ指定のパスワードあるいはユーザとリンクしたランダム値としたことを特徴とするデータキャッシュ装置である。
【００１５】
請求項５に記載の発明は、通信ネットワークを介して双方通信可能に接続されたサーバから、ユーザ所望の画像について所定形式で分割された符号化データをＪＰＩＰ規格に基いて受信すると共にキャッシュする情報処理装置において、請求項１乃至４のいずれかに記載されたデータキャッシュ装置を用いて、分割されて転送されてきた全符号化データを暗号化されたキャッシュ情報として記憶し、分割画像を再構成できないようにしたことを特徴とする情報処理装置である。
【００１６】
請求項６に記載の発明は、通信ネットワークを介して双方通信可能に接続されたサーバから、ユーザ所望の画像について所定形式で分割された符号化データをＪＰＩＰ規格に基いて受信すると共にキャッシュする情報処理装置において、請求項１乃至４のいずれかに記載されたデータキャッシュ装置を用いて、分割されて転送されてきた符号化データのうちユーザが重要と指定された符号化データ（ＲＯＩ部分）を暗号化されたキャッシュ情報として記憶し、ＲＯＩ部分の分割画像を再構成できないようにしたことを特徴とする情報処理装置である。
【００１７】
請求項７に記載の発明は、通信ネットワークを介して双方通信可能に接続されたサーバから、ユーザ所望の画像について所定形式で分割された符号化データをＪＰＩＰ規格に基いて受信すると共にキャッシュする情報処理装置において、請求項１乃至４のいずれかに記載されたデータキャッシュ装置を用いて、分割されて転送されてきた符号化データのうち、ユーザが指定した符号化データを暗号化されたキャッシュ情報として記憶し、指定された部分の分割画像を再構成できないようにしたことを特徴とする情報処理装置である。
【００１８】
請求項８に記載の発明は、コンピュータに、請求項１乃至４のいずれかに記載のデータキャッシュ装置の機能、あるいは、請求項５乃至７のいずれかに記載の情報処理装置の機能を実現させるためのプログラムである。
請求項９に記載の発明は、請求項８に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【００１９】
本発明によれば、機器の固有情報を利用してキャッシュしたデータを暗号化してしまうため、たとえ、この暗号化されたキャッシュデータをコピーされても他の機器では復号化が難しくなる。また、機器の固有情報を利用するので、ユーザは何も設定せずともよい。
【００２０】
また、キャッシュしたデータを、機器の固有情報の代わりにユーザの固有情報（例えば、ユーザの指定したパスワードや乱数）を使用して暗号化することにより、さらに秘匿性をより高めることができる。
【００２１】
また、キャッシュしたデータを、機器の固有情報とユーザの固有情報を組み合わせて暗号化することにより、ある特定の端末、たとえば閲覧室のクライアント端末でのみの利用に制限することができる。
【００２２】
また、データの転送プロトコルをＪＰＩＰとした場合、暗号化するキャッシュデータをユーザの関心領域（ＲＯＩ）に限定することにより、暗号化／復号化に要するパフォーマンス低下を最小限にすることが可能となる。
さらに、ユーザが指定したタイミングでのみ暗号化処理を行うようにしたので、暗号化／復号化に要するパフォーマンス低下をより効率的に抑えることが可能となる。
【発明を実施するための最良の形態】
【００２３】
以下、図面を参照して本発明の好適な実施形態について説明する。
以下では、画像転送プロトコルのひとつであるＪＰＩＰ（JPEG2000 Internet Protocol）におけるキャッシュ処理を適用した実施形態として説明する。しかし、他の転送プロトコルを用いてキャッシュ処理をする場合にも、容易に適用可能である。
【００２４】
まず、ＪＰＥＧ２０００における符号化データおよびＪＰＩＰについて説明する。
【００２５】
（１）ＪＰＥＧ２０００による符号化：
ＪＰＥＧ２０００規格における符号化は、おおよそ以下の手順でなされる。
インターレース画像のフレームデータを、Ｙ，Ｃｒ，Ｃｂの色成分毎のデータに変換し、各色成分の色データに対して、２次元離散ウェーブレット変換を施し、得られるウェーブレット係数に、ＪＰＥＧ２０００に規定のスカラ量子化処理を施し、スカラ量子化されたデータに対しＪＰＥＧ２０００に規定のエントロピー符号化処理（いわゆる係数モデリングによる算術符号化処理）を施した後、ＪＰＥＧ２０００で規定する符号列を生成する。復号化処理は、この逆の手順で行われる。
【００２６】
以下、ＪＰＥＧ２０００アルゴリズムについて、少し詳しく説明する。
カラー画像は、一般に原画像のコンポーネント毎に、矩形をした領域（タイル）によって分割され、個々のタイルが圧縮伸長プロセスを実行する際の基本単位となる。
【００２７】
符号化時には、各コンポーネントの各タイルのデータが色空間変換を施されたのち、２次元ウェーブレット変換（順変換）が適用されて周波数帯に空間分割される。
例えば、原画像のタイル分割によって得られたタイル原画像（０ＬＬ）（デコンポジションレベル０）に対して、２次元ウェーブレット変換を施し、デコンポジションレベル１に示すサブバンド（１ＬＬ，１ＨＬ，１ＬＨ，１ＨＨ）を分離する。そして引き続き、この階層における低周波成分１ＬＬに対して、２次元ウェーブレット変換を施し、デコンポジションレベル２に示すサブバンド（２ＬＬ，２ＨＬ，２ＬＨ，２ＨＨ）を分離する。
順次同様に、低周波成分２ＬＬに対しても、２次元ウェーブレット変換を施し、デコンポジションレベル３に示すサブバンド（３ＬＬ，３ＨＬ，３ＬＨ，３ＨＨ）を分離する。
【００２８】
次いで、指定した符号化の順番で符号化の対象となるビットが定められ、対象ビット周辺のビットからコンテキストが生成される。
量子化の処理が終わったウェーブレット係数は、個々のサブバンド毎に、「プレシンクト」と呼ばれる重複しない矩形に分割される。さらに、個々のプレシンクトは、重複しない矩形のコードブロックに分けられ、エントロピー符号化を行う際の基本単位となる。
このエントロピー符号化では、各コンポーネントのタイルに対して、コンテキストと対象ビットから確率推定によって、パケット単位で符号データを形成する。
【００２９】
ＪＰＥＧ２０００規格では、パケットは、画質（レイヤ（Ｌ））、解像度（Ｒ）、コンポーネント（Ｃ）、位置（プレシンクト（Ｐ））という４つの画像の要素の順に記録される。このような順序をプログレッション順といい、これらの順序を変更することによって、ＬＲＣＰ、ＲＬＣＰ、ＲＰＣＬ、ＰＣＲＬおよびＣＰＲＬの５通りのプログレッション順が定義されている。各パケットは、プログレッション順の情報を管理しているパケットヘッダ部とパケットにおける符号化データとから構成される。
【００３０】
最後に、タグ処理（符号列形成）では、エントロピー符号化されたすべての符号化データを１本の符号化ストリームに結合するとともに、それにタグ情報を付加する。即ち、符号化ストリームの先頭と各タイルを構成する部分タイルの先頭にはヘッダと呼ばれるタグ情報を付加し、その後に、各タイルの符号化データが続き、符号化ストリームの終端に、再びタグ情報を置く。
【００３１】
一方、復号化時には、符号化時とは逆に、各コンポーネントの各タイルの符号化ストリームから画像データを生成する。
即ち、外部より入力した符号化ストリームに付加されたタグ情報を解釈し、符号化ストリームを各コンポーネントの各タイルの符号化ストリームに分解し、その各コンポーネントの各タイルの符号化ストリーム毎に復号化処理を行う。
符号化ストリーム内のタグ情報に基づく順番で復号化の対象となるビットの位置が定められるとともに、逆量子化により、その対象ビット位置の周辺ビット（既に復号化を終えている）の並びからコンテキストが生成される。
【００３２】
次に、このコンテキストと符号化ストリームから確率推定によって復号化を行い、対象ビットを生成し、それを対象ビットの位置に書き込む。このようにして復号化されたデータは、周波数帯域毎に空間分割されているため、これを２次元ウェーブレット逆変換することにより、画像データの各コンポーネントの各タイルが復元される。復元されたデータを色空間逆変換することによって元の表色系のデータに変換する。
【００３３】
（２）ＪＰＩＰにおける符号データのキャッシュ：
ＪＰＥＧ２０００パート９の国際規格は、ＪＰＩＰと呼ばれるサーバ／クライアント間のプロトコルおよびＡＰＩ（Application Programming Interface）を定めている。
【００３４】
ＪＰＩＰにおいては、クライアントからの要求に応じて、サーバは完全な画像ファイル、タイルパートストリーム（ＪＰＴ−ストリーム）またはプレシンクトストリーム（ＪＰＰ−ストリーム）の形式をもつ符号データを応答する。
ここで、ＪＰＴ−ストリームは、ＪＰＥＧ２０００パート１規格で規定されるタイルパートの組として符号データを応答する方法である。
一方、ＪＰＰ−ストリームは、ＪＰＥＧ２０００パート１規格で規定されるプレシンクトの組として符号データを応答する方法である。
【００３５】
ＪＰＴ−ストリームにより順次アクセスした符号データを再生する場合は、タイル分割されたタイル領域毎に順次完全に再生するのに対して、ＪＰＰ−ストリームにより順次アクセスした符号データを再生する場合は、タイル領域に跨った広い領域で、小さい領域（プレシンクト）単位に徐々に再生することができる。
即ち、ＪＰＴ−ストリームのアクセスによる再生では、一時に再生する範囲が画像全体の中であるタイル領域に限定されているのに対し、ＪＰＰ−ストリームのアクセスによる再生では、一時に再生する範囲はタイル領域に限定されず、画像全体での再生が可能である。
【００３６】
このように、ＪＰＩＰのクライアントは、受信された符号データの部分を識別でき、それらの部分を復号し、且つ画像を生成することができるように、タイルパートストリーム、または、プレシンクトストリームの形式で、ＪＰＥＧ２０００符号化ストリームのサブセットを戻す機能を提供している。
即ち、ＪＰＰ−ストリームは、ＪＰＥＧ２０００符号化ストリームへ変換され、ＪＰＥＧ２０００デコーダで復号することができる。この変換は、復号されるデータと共に、メインヘッダの全てとタイルヘッダの全てを受信すれば十分できる。
【００３７】
ＪＰＩＰの基本的特徴の一つとして、クライアントが既に受信した符号データを繰返すことを避けるキャッシングの機能があり、このキャッシングには次のような２つの方法がある。
【００３８】
第１の方法は、「ステートレス」と呼ばれ、クライアントがサーバへ要求し、クライアントで既に受信された符号データについての情報をもつことにより、クライアントが冗長なデータの配信をサーバに要求しないで済ませる方法である。
サーバが「ステートレス」で動作する場合にあっては、それまでの相互動作を記憶する特別なキャッシュモデルを維持する必要がない。
【００３９】
第２の方法は、「ステートフル」と呼ばれ、クライアントとサーバが「セッション」を確立し、サーバにキャッシュモデルをもつことによって、既に転送した符号データをクライアントに転送することがなくなる。
サーバは、クライアントへ送った符号データの情報を記憶しておくキャッシュモデルを持っている。
また、クライアントのキャッシュには、サーバから受信した符号データが保存される。
例えば、クライアントは、断片的に受信したＪＰＥＧ２０００の符号データを、受信した順番にデータをアペンドしキャッシュに保存する。続いて、クライアントでは、キャッシュしたデータからＪＰＥＧ２０００のシンタックスに準拠したビットストリームを作成し、そのビットストリームをデコードすることによって、画像として表示装置などへ出力することができる。
【００４０】
以下、本発明の実施形態について説明する。
図１は、本発明の実施形態における通信ネットワークの概略を示す図であり、サーバ・クライアント環境を示している。同図において、１つ以上のクライアント１０１および１つ以上のサーバ１０３は、インターネットを含む一般的な通信ネットワーク（以下、単にネットワークと称する）１０２で接続され、互いにデータ通信を行うことが可能になっている。
クライアント１０１は、少なくともコンピュータを備え、画像や他のデータ（例えば、ＨＴＭＬページ）を幾つかのサーバ１０３から受信するユーザの使用する機器である。なお、クライアントとしては、コンピュータそのものだけでなく、本明細書で説明する機能を備えておれば、複写機、複合機などの機器であっても良い。
サーバ１０３は、コンピュータであり、画像を蓄積するハードディスク等の大容量の記憶装置１０４を備え、クライアント１０１からの要求にしたがって記憶装置１０４に格納された画像を返信する。このサーバも本明細書で説明する機能を備えておれば、複写機、複合機などの機器であっても良い。
ネットワーク１０２は、ローカルエリアネットワーク（ＬＡＮ）やインターネットであり、ＴＣＰ／ＩＰおよびＵＤＰを含む他の転送プロトコルを利用して、ＨＴＴＰの上でＪＰＩＰを転送する。
【００４１】
図２は、クライアント１０１あるいはサーバ１０３のハードウェアの概略構成を示すブロック図である。同図において、ＣＰＵ１１１は、一次記憶装置１２１に格納されたプログラムを実行して、全体の動作制御を行なう。一次記憶装置１２１は、主にＲＡＭ（Random Access Memory）であり、二次記憶装置１３１に記憶されたプログラムやデータ等が読み込まれて格納される。また、二次記憶装置１３１は、ハードディスク等の記憶媒体である。この二次記憶装置１３１は、一次記憶装置１２１よりデータ容量が大きく、一次記憶装置１２１に格納しきれないプログラムやデータ等が格納される。また、長時間記憶しておかなければならないデータ等も二次記憶１３１に格納される。
入力装置１４１は、例えば、キーボードやマウス等の入力装置であり、ユーザはこの入力装置１４１によって、クライアントやサーバの操作を行う。
出力装置１５１は、例えば、ディスプレイやプリンタ等の出力機器である。
通信Ｉ／Ｆ１６１は、当該機器と外部装置との双方向の通信が可能な通信インターフェースである。
これら各部は、内部バス１７１によって相互にデータ転送が可能なように接続されている。
【００４２】
次に、図３は、本発明の実施形態の概略機能構成を示すブロック図である。同図において、クライアント１０１には、ユーザから画像表示要求の受付と表示を行う表示手段２０２、ユーザからの画像表示要求に応じてサーバ１０３またはキャッシュ記憶手段２０３から画像を取得し、取得した画像を表示手段へ渡すとともに、キャッシュとしてキャッシュ記憶手段２０３へ記録するキャッシュ管理手段２０１を備えている。
ここでは、表示手段２０２は、例えば、クライアント１０１にて動作するＷｅｂブラウザである。
【００４３】
このような構成において、サーバ１０３の記憶装置１０４に記憶されているＪＰＥＧ２０００符号化方式に従って符号化された画像データ（符号データ）をクライアント１０１で表示する方法について説明する。
以下の説明では、サーバ１０３は、「ステートフル」にて動作するものとする。
【００４４】
まず、ユーザはクライアント１０１にて動作するＷｅｂブラウザ（表示手段２０２）を操作しながら、キャッシュ管理手段２０１からネットワーク１０２を介して、サーバ１０３に設置された記憶装置１０４に記憶された所望のＷｅｂページにアクセスし、このＷｅｂページがクライアント１０１へ返信される。
ここで、サーバ１０３は、画像要求を受けたユーザごとに、ＪＰＥＧ２０００方式の画像データのどの部分を要求したかの情報をキャッシュモデルとして記録しておく。
【００４５】
キャッシュ管理手段２０１は、受信した画像をＷｅｂブラウザ（表示手段２０２）へ引き渡して、ディスプレイへ表示される。
また、キャッシュ管理手段２０１は、受信した画像をキャッシュ情報に変換するとともにキャッシュ記憶手段２０３へ記録する。
【００４６】
次に、ユーザは、表示されたＷｅｂページに含まれるＪＰＥＧ２０００符号化方式の画像データへのリンク部分をマウスでクリック（選択操作）することにより、その画像データを取得するようにキャッシュ管理手段２０１へ要求する。
キャッシュ管理手段２０１では、その画像データの取得要求をサーバ１０３へ転送する。
【００４７】
サーバ１０３では、取得要求を出したユーザのキャッシュモデルを参照して、要求された画像データのうちクライアント１０１のキャッシュ記憶手段２０３に記録されていない部分の画像データを返信するとともに、ユーザへ返信した部分画像データに関する情報をキャッシュモデルで更新する。
【００４８】
クライアント１０１のキャッシュ管理手段２０１は、返信された画像データとキャッシュ記憶手段２０３に記録されたキャッシュとから、ユーザの所望した画像データを構成して、Ｗｅｂブラウザ（表示手段２０２）へ引き渡して、所望するサイズや解像度で表示装置へ表示する。また、キャッシュ管理手段２０１では、返信された画像データをキャッシュ情報に変換してキャッシュ記憶手段２０３へ記録する。
【００４９】
図４は、上述したＪＰＩＰを使用した場合の表示画面例を示す。
図４（Ａ）では、２つのタイル（花、鳥）からなるデータが表示されている。それぞれのタイルをクリックすることによって、図４（Ｂ）のような画質の劣ったタイルからなる対応する画像データが表示される。
さらに、右下の画像部分をクリックすることによって、そのタイルの部分画像（図４（Ｃ））の解像度が変倍され、部分画質レベルが向上する。このように、部分画像データを参照するたびに、クライント側からサーバ側へ符号データの転送要求が再生する。
【００５０】
図５は、ステートフルで動作するときのサーバのキャッシュモデルとクライアントのキャッシュとの関係を説明するための模式図である。
図５において、画像データ全体は、１番から１６番までのタイルに分割されており、このうちの２，３，６，７，１０，１１，１４番のタイルの部分画像の高解像度のデータがキャッシュされているものとする。この情報はサーバのキャッシュモデルに記録されている。
図５（Ａ）では、クライアントのユーザが全体画像データのうち、左上１／４の部分画像（１，２，５，６番）（ユーザの関心領域：ＲＯＩ）を選択して、サーバに高解像度の画像データを要求している。
サーバでは、このユーザのキャッシュモデルを参照して、高解像度の部分画像のうちユーザのクライアントにキャッシュされていない１，５番の高解像度の部分画像のデータを応答する。
【００５１】
また、図５（Ｂ）では、クライアントがメモリ容量の関係から、キャッシュされている２番の部分画像の高解像度の画像データを削除した場合、クライアントからサーバに対して２番の部分画像をキャッシュから削除したことを通知している。サーバでは、当該ユーザのキャッシュモデルから２番の高解像度の部分画像データが削除されたことを記録し、処理を完了したことを応答する。
これにより、クライアントでキャッシュされている部分画像データと、サーバにおけるキャッシュモデルの情報を同期させる。
【００５２】
以上のように、ＪＰＩＰによる画像通信では、画像を分割してサーバからクライアントに転送することが可能であり、クライアント側では分割画像をキャッシュ情報として管理することが可能である。
しかしながら、このキャッシュ情報は暗号化されていないため、第三者がそのキャッシュ情報を集めることにより、元の画像を再構成することができてしまうというセキュリティ上の問題がある。
【００５３】
以下、キャッシュ情報を集めたとしても、全体を再構成できないようにした本実施形態を説明する。
図６は、キャッシュ管理手段２０１のキャッシュ管理の機能に本実施形態で追加した機能に係る部分の機能構成を示すブロック図である。同図において、キャッシュ管理手段２０１には、キャッシュ管理の機能の他に、キャッシュデータを暗号化する暗号化手段２０４、暗号化されたキャッシュデータを復号する復号化手段２０６および暗号化／復号化キーを記憶しておくキー記憶手段２０５をさらに備えている。
【００５４】
ここで、暗号化／復号化のアルゴリズムは、例えば、ＤＥＳ（Data Encryption Standard、 64bitブロック暗号 1977年NIST制定）やＡＥＳ（Advanced Encryption Standard、128bitブロック暗号 2001年NIST制定）のような公知のアルゴリズムでよい。
【００５５】
ＤＥＳとは、１９６０年代後半にＩＢＭ社によって開発された秘密鍵暗号化アルゴリズムで、１９７７年にアメリカ政府標準技術局（NIST）によって連邦情報処理基準に採用された。現在では、あまりにも暗号強度が低すぎるために、Triple DESなど、別の暗号方式が使用されるようになっている。
【００５６】
また、ＡＥＳは、米国商務省標準技術局（以下、NIST）によって選定作業が行われている米国政府の次世代標準暗号化方式のことである。近年のコンピュータの高性能化、暗号理論の発展に伴い、ＤＥＳの信頼性は年々低下している。そこで、NISTはＤＥＳに代わる次世代の暗号標準として、AES候補となる暗号方式を全世界から公募し、２０００年１０月に、ベルギーの暗号開発者Joan Daemen氏とVincent Rijmen氏が開発した「Rijndael」という方式が選ばれた。
【００５７】
また、暗号化／復号化キーとしては、クライアント機器の固有情報を暗号化／復号化キーとしてキー記憶手段２０５に予め記憶させておく。
このクライアント機器の固有情報としては、ＬＡＮで利用するＭＡＣアドレスや専用同一機種であれば製造機番等を用いる。
【００５８】
表示手段２０２により画像の表示要求がキャッシュ管理手段２０１に引き渡される。
キャッシュ管理手段２０１では、要求された画像（例えば、ＵＲＬで指定された画像）がキャッシュ管理されているか否かを判断する。キャッシュ管理されていなければ、サーバ１０３に画像取得要求を転送する。
一方、キャッシュ管理されていれば、後述のように、キャッシュ記憶手段２０３から取得して表示手段２０２へ応答する。
【００５９】
キャッシュ管理手段２０１では、サーバ１０３から転送された画像データをキャッシュ記憶手段２０３へ記憶するときに、その画像データをキャッシュ形式に変換した後に、暗号化手段２０４を起動する。
暗号化手段２０４は、キー記憶手段２０５に記憶された固有情報を暗号化キーとして、キャッシュ形式に変換された画像データを上述したような予め決められた暗号化方式によって暗号化し、暗号化されたデータの先頭にマジックナンバー（例えば、７５５７）をつける。
【００６０】
このマジックナンバーは、暗号化されているキャッシュデータとそうでないキャッシュデータを区別するためであり、復号化のときにマジックナンバーがあるかないかで復号化する必要があるかどうかを判断できる。また、このマジックナンバーは、通常のキャッシュデータでは出現しないものでなければならない。
キャッシュ管理手段２０１は、暗号化手段２０４で暗号化されたデータをキャッシュ記憶手段２０３へ記録させる。
【００６１】
また、キャッシュ記憶手段２０３に記憶されているキャッシュデータを用いて表示する場合には、復号化しなければならない。
この場合、キャッシュ管理手段２０１は、キャッシュ記憶手段２０３から、該当するキャッシュデータを取り出して、このキャッシュデータの先頭にマジックナンバーがあるか否かを判断する。
キャッシュ管理手段２０１は、マジックナンバーが先頭になければ、通常のキャッシュデータとして、表示できる画像データに変換して表示手段２０２へ引き渡す。
また、キャッシュ管理手段２０１は、マジックナンバーが先頭にあれば、復号化手段２０６を起動する。
【００６２】
復号化手段２０６は、キー記憶手段２０５に記憶された固有情報を復号キーとして、先頭からマジックナンバーを削除した残りのデータに対して、上述の暗号化方式によって復号し、復号したキャッシュデータを表示手段２０２で表示できる画像データに変換して表示手段２０２へ引き渡す。
【００６３】
上述した固有情報を用いて暗号化／復号化するようにすれば、ユーザは特に何も設定しなくて済み、また、キャッシュ情報を他の機器に複写したとしても、機器の固有情報は異なるので簡単に他の機器で復号できなくなる。
【００６４】
しかしながら、同一クライアントであっても、ＬＡＮカードを変更したりするとＭＡＣアドレスも変わってしまうので復号できなくなってしまう。
また、そもそもＭＡＣアドレスや製造機番は公開情報であるので、上級攻撃者には比較的容易に復号化の方法を解析できてしまうという問題がある。
【００６５】
そこで、固有情報を機器固有の値ではなく、ユーザの固有情報を利用するようにする。
このユーザ固有情報は、ユーザが事前に入力した暗号化のためのキーや、発生させた乱数をパスワードのようにハッシュを利用して変換したものである。
例えば、事前に暗号化のためのキー入力する場合には、キー記憶手段２０５への書き込み用のアプリケーションを起動して、図７に例示したようなダイアログを表示させ、設定ボタンを押して、暗号化アルゴリズムを選択すると、このダイアログの「アルゴリズム、キー」フィールドに表示され、その後、パスワードを入力して、登録ボタンを押すことによって、入力した暗号化アルゴリズムとパスワードがキー記憶手段２０５へ登録される。
【００６６】
このユーザ固有情報は、クライアント機器の内部に記憶されてもよいし、あるいは、フラッシュメモリ等の外部の記憶装置に記憶されてもよい。しかし、外部の記憶装置にキーを記憶させた場合には、画像データを表示させるときに、クライアント機器に接続させるようにしなければならない。このため、この外部の記憶装置を所持していないユーザは、キャッシュされた画像データを表示することができない。
いずれの場合にも、キャッシュ管理手段２０１は、暗号化あるいは復号化するときに、キー記憶手段２０５に記憶されるものとして上記のユーザの固有情報を読み込む。
【００６７】
また、このユーザの固有情報は、ユーザ名と対応させるものであれば、クライアント機器にユーザがログインするときのユーザ名とパスワードのようなものであってもよく、例えば、図８に例示したように、ランダムな数値や記号とユーザ名とをリンクさせてキー記憶手段２０５に記憶させておいても構わない。
このように記憶したキーであれば、そのパスワードや乱数等を知っている（あるいは、キーを記憶した外部の記憶装置を持っている）ユーザのみがキャッシュデータを元の画像に再構成することが可能になる。
【００６８】
あるいは、固有情報とユーザの固有情報とを組み合わせた場合、指定されたユーザが特定のクライアント機器でのみ画像を再構成できることを保証するようにしてもよい。
例えば、図９に例示したように、製造機番とユーザのパスワードとを連結したり（製造機番の後にユーザのパスワードを連結させる、あるいは、逆の順に連結させる）、これらの値から一定の規則によって取り出して連結した文字列で暗号化すれば、その両方が一致しない限り、元の画像には戻せなくなる。
これは、特にセキュリティを必要とする画像に対して閲覧させるときに有効である。
【００６９】
上述したように、ＪＰＩＰでは、画像の再転送の負荷を軽減するためにキャッシュが明示的に利用されるが、その部分はひとつの分割領域として独立性が高いため、所謂、通常のキャッシュ情報よりも再構成が簡単に行える。
したがって、ＪＰＥＧ２０００方式で符号化された画像ファイルに対して、ＪＰＩＰにて転送したときに、転送を受けた全ての画像や部分画像について、上述した暗号化／復号化を行うようにする。これにより、キャッシュ情報から元の情報が再構成されないようにできる。
【００７０】
しかしながら、暗号化／復号化にはどうしても時間がかかるため、関心領域（ＲＯＩ）のみに上述した暗号化／復号化を行うようにする。ＲＯＩは、通常画像として重要な情報であり、この部分の情報を守ることがまず大切であり、逆にＲＯＩ以外の部分は再構成されてもよい場合も少なくないからである。
【００７１】
図１０は、サーバ１０３から受信した画像情報をキャッシュ記憶手段に保存するときの処理を示すフローチャートである。
クライアント１０１がサーバ１０３に取得要求をして、応答された画像情報を受信する（ステップＳ１１）。
キャッシュ管理手段２０１では、受信した画像情報がユーザからＲＯＩとして要求を受けたものであるかを判断し、ＲＯＩであれば（ステップＳ１２／ＹＥＳ）、受信した画像情報をキャッシュに変換した後、キー記憶手段２０５に記憶したキーを使って、登録されている暗号化アルゴリズムで暗号化し、マジック番号を付してキャッシュ記憶手段２０３へ記憶して（ステップＳ１３）、処理を終了する。
一方、ユーザからＲＯＩとして要求されていない場合（ステップＳ１２／ＮＯ）、受信した画像情報をキャッシュに変換した後、キャッシュ記憶手段２０３へ記憶して（ステップＳ１４）、処理を終了する。
【００７２】
また、キャッシュ管理手段２０１でサーバ１０３から画像データを受信するたびに、暗号化処理を行うのではなく、例えば、クライアント機器の電源を切る際に、ユーザの明示的な指定で暗号化処理を行うようにしてもよい。あるいは、電源を切るときに、自動的に暗号化処理をするか否かをユーザに問い合わせるようにしてもよい。
【００７３】
この暗号化処理をするか否かの問い合わせは、キャッシュ記憶手段２０３に記憶されたキャッシュデータのうち、電源を入れてから切るまでに作成され、暗号化されていない（マジック番号を持たない）キャッシュデータを検索し、検索された画像データのサムネイル画像のリストを表示する。このリストには、選択するか否かを指定できるチェックボックスが付けられている。
ユーザは、このサムネイル画像リストから暗号化すべき秘匿性の高い画像をチェックして選択し、暗号化実行ボタンを押す。
【００７４】
また、このように電源を切るような場合ではなく、Ｗｅｂブラウザで画像を表示中に、画面上で範囲を指定して、暗号化処理を実行するようにしてもよい。
暗号化処理では、事前に設定されたキーで暗号化アルゴリズムを実行させて、暗号化されたデータにマジック番号をつけて、キャッシュ記憶手段２０３の該当キャッシュデータと置き換える。
これにより、ユーザが明示的に秘匿性の高くないものは暗号化せず、必要なものだけ暗号化することにより、暗号化／復号化に要するパフォーマンスの低下をより効率的に抑えることが可能となる。
【００７５】
上記の実施形態では、画像データをＪＰＥＧ２０００符号化方式で符号化されたものとして説明したが、これに限定されたものではなく、他の符号化方式でも構わないし、分割可能でなくても良い。
また、ＪＰＩＰによるキャッシュ管理も、「ステートフル」ではなく、「ステートレス」であっても同様に適用することができる。
【００７６】
本発明は、上述した実施形態のみに限定されたものではない。上述した実施形態の符号化処理装置を構成する各機能をそれぞれプログラム化して、予め記録媒体に書き込んでおき、この記録媒体に記録されたこれらのプログラムをコンピュータに備えられたメモリあるいは記憶装置に格納し、そのプログラムを実行することによって、本発明の目的が達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラム自体が上述した実施形態の機能を実現することになり、そのプログラムおよびそのプログラムを記録した記録媒体も本発明を構成することになる。
また、上記プログラムは、そのプログラムの指示に基づき、オペレーティングシステムあるいは他のアプリケーションプログラム等と共同して処理することによって上述した実施形態の機能が実現される場合も含まれる。
【００７７】
なお、上述した実施形態の機能を実現するプログラムは、ディスク系（例えば、磁気ディスク、光ディスク等）、カード系（例えば、メモリカード、光カード等）、半導体メモリ系（例えば、ＲＯＭ、不揮発性メモリ等）、テープ系（例えば、磁気テープ、カセットテープ等）等のいずれの形態の記録媒体で提供されてもよい。あるいは、ネットワークを介して記憶装置に格納されたプログラムをサーバコンピュータから直接供給を受けるようにしてもよい。この場合、このサーバコンピュータの記憶装置も本発明の記録媒体に含まれる。
このように、上述した実施形態の機能をプログラム化して流通させることによって、コストの低廉化、および可搬性や汎用性を向上させることができる。
【図面の簡単な説明】
【００７８】
【図１】本発明の実施形態における通信ネットワークの概略を示す図であり、サーバ・クライアント環境を示している。
【図２】クライアントあるいはサーバのハードウェアの概略構成を示すブロック図である。
【図３】本発明の実施形態の概略機能構成を示すブロック図である。
【図４】ＪＰＩＰを使用した場合の表示画面例である。
【図５】ステートフルで動作するときのサーバのキャッシュモデルとクライアントのキャッシュとの関係を説明するための模式図である。
【図６】キャッシュ管理手段のキャッシュ管理の機能に本実施形態で追加した機能に係る部分の機能構成を示すブロック図である。
【図７】暗号化キーを入力するときのダイアログの例である。
【図８】ランダムな数値や記号とユーザ名とをリンクさせたキー記憶手段のデータ例である。
【図９】暗号化キーの種々の構成例である。
【図１０】サーバから受信した画像情報をキャッシュ記憶手段に保存するときの処理を示すフローチャートである。
【符号の説明】
【００７９】
１０１…クライアント、１０２…ネットワーク、１０３…サーバ、１０４…記憶装置、１１１…ＣＰＵ、１２１…一次記憶装置、１３１…二次記憶装置、１４１…入力装置、１５１…出力装置、１６１…通信Ｉ／Ｆ、１７１…内部バス、２０１…キャッシュ管理手段、２０２…表示手段、２０３…キャッシュ記憶手段、２０４…暗号化手段、２０５…キー記憶手段、２０６…復号化手段。
【図１】
2007072543.tif 000003
【図２】
2007072543.tif 000004
【図３】
2007072543.tif 000005
【図４】
2007072543.tif 000006
【図５】
2007072543.tif 000007
【図６】
2007072543.tif 000008
【図７】
2007072543.tif 000009
【図８】
2007072543.tif 000010
【図９】
2007072543.tif 000011
【図１０】
2007072543.tif 000012