(57)【特許請求の範囲】
【請求項１】
情報本体と該情報本体に対応する型情報とを有する複数の情報単位を含む、コンテンツデータを処理する情報処理装置であって、
前記複数の情報単位のうちの、一以上の連続した情報単位又は前記一以上の連続した情報単位の情報本体が暗号化されて生成された一のデータクラスタと、前記一以上の連続した情報単位毎に対応する暗号化される前の型情報と、を含む新たな情報本体を生成する情報本体生成手段と、
前記新たな情報本体に対応する新たな型情報を生成する型情報生成手段と、
前記新たな情報本体と前記新たな型情報とを有する新たな情報単位により前記一以上の連続した情報単位が置き換えられたコンテンツデータを生成するコンテンツデータ生成手段と、
を有する情報処理装置。
【請求項２】
前記情報単位は、さらに、該情報単位の長さに係る長さ情報を有し、
前記新たな情報単位に対応する新たな長さ情報を生成する長さ情報生成手段を有し、
前記情報本体生成手段は、さらに、前記一以上の連続した情報単位毎に対応する暗号化される前の長さ情報を、前記新たな情報本体に含ませる請求項１記載の情報処理装置。
【請求項３】
前記複数の情報単位のうちの第一の情報単位が前記複数の情報単位のうちの第二の情報単位を参照する場合に、
前記第一の情報単位の情報本体は、前記第二の情報単位への参照アドレス情報を有する請求項２記載の情報処理装置。
【請求項４】
前記情報本体生成手段は、
前記一以上の連続した情報単位毎の長さ情報の一覧を、前記暗号化される前の長さ情報とする請求項２又は３記載の情報処理装置。
【請求項５】
前記情報本体生成手段は、
前記一以上の連続した情報単位の長さの値の総和を、前記暗号化される前の長さ情報とする請求項２又は３記載の情報処理装置。
【請求項６】
請求項１ないし５何れか一項に記載の情報処理装置によって生成されたコンテンツデータを処理する情報処理装置であって、
前記コンテンツデータから、前記暗号化される前の型情報を取得する型情報取得手段と、
前記暗号化される前の型情報に基づいて、予め定められる所定の処理を行う情報処理手段と、
を有する情報処理装置。
【請求項７】
前記コンテンツデータは、コンテンツと該コンテンツに対応するメタデータとを含み、
前記情報単位は、前記コンテンツ若しくは該コンテンツが分割されたデータ又は前記メタデータ若しくは該メタデータが分割されたデータを、前記情報本体に有し、
前記情報処理手段は、前記暗号化される前の型情報が、前記メタデータに対応する型情報である場合に、該メタデータを取得する請求項６記載の情報処理装置。
【請求項８】
請求項３ないし５何れか一項に記載の情報処理装置によって生成されたコンテンツデータを処理する情報処理装置であって、
前記第一の情報単位から、前記第二の情報単位への参照アドレス情報を取得するアドレス情報取得手段と、
前記参照アドレス情報と前記暗号化される前の長さ情報とに基づいて、前記第二の情報単位を参照する参照手段と、
を有する情報処理装置。
【請求項９】
情報本体と該情報本体に対応する型情報とを有する複数の情報単位を含む、コンテンツデータを処理する情報処理方法であって、
前記複数の情報単位のうちの、一以上の連続した情報単位又は前記一以上の連続した情報単位の情報本体が暗号化されて生成された一のデータクラスタと、前記一以上の連続した情報単位毎に対応する暗号化される前の型情報と、を含む新たな情報本体を生成する情報本体生成ステップと、
前記新たな情報本体に対応する新たな型情報を生成する型情報生成ステップと、
前記新たな情報本体と前記新たな型情報とを有する新たな情報単位により前記一以上の連続した情報単位が置き換えられたコンテンツデータを生成するコンテンツデータ生成ステップと、
を有する情報処理方法。
【請求項１０】
前記情報単位は、さらに、該情報単位の長さに係る長さ情報を有し、
前記新たな情報単位に対応する新たな長さ情報を生成する長さ情報生成手段を有し、
前記情報本体生成ステップにおいて、さらに、前記一以上の連続した情報単位毎に対応する暗号化される前の長さ情報を、前記新たな情報本体に含ませる請求項９記載の情報処理方法。
【請求項１１】
前記複数の情報単位のうちの第一の情報単位が前記複数の情報単位のうちの第二の情報単位を参照する場合に、
前記第一の情報単位の情報本体は、前記第二の情報単位への参照アドレス情報を有する請求項１０記載の情報処理方法。
【請求項１２】
前記情報本体生成ステップにおいて、
前記一以上の連続した情報単位毎の長さ情報の一覧を、前記暗号化される前の長さ情報とする請求項１０又は１１記載の情報処理方法。
【請求項１３】
前記情報本体生成ステップにおいて、
前記一以上の連続した情報単位の長さの値の総和を、前記暗号化される前の長さ情報とする請求項１０又は１１記載の情報処理方法。
【請求項１４】
請求項９ないし１３何れか一項に記載の情報処理方法によって生成されたコンテンツデータを処理する情報処理方法であって、
前記コンテンツデータから、前記暗号化される前の型情報を取得する型情報取得ステップと、
前記暗号化される前の型情報に基づいて、予め定められる所定の処理を行う情報処理ステップと、
を有する情報処理方法。
【請求項１５】
前記コンテンツデータは、コンテンツと該コンテンツに対応するメタデータとを含み、
前記情報単位は、前記コンテンツ若しくは該コンテンツが分割されたデータ又は前記メタデータ若しくは該メタデータが分割されたデータを、前記情報本体に有し、
前記情報処理ステップにおいて、前記暗号化される前の型情報が、前記メタデータに対応する型情報である場合に、該メタデータを取得する請求１４記載の情報処理方法。
【請求項１６】
請求項１１ないし１３何れか一項に記載の情報処理方法によって生成されたコンテンツデータを処理する情報処理方法であって、
前記第一の情報単位から、前記第二の情報単位への参照アドレス情報を取得するアドレス情報取得ステップと、
前記参照アドレス情報と前記暗号化される前の長さ情報とに基づいて、前記第二の情報単位を参照する参照ステップと、
を有する情報処理方法。
【請求項１７】
請求項９ないし１６何れか一項に記載の情報処理方法をコンピュータに実行させるコンピュータプログラムを格納したコンピュータ読取可能な情報記録媒体。
【請求項１８】
請求項９ないし１６何れか一項に記載の情報処理方法をコンピュータに実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及び、情報記録媒体に関する。
【背景技術】
【０００２】
従来から、情報単位毎に画像データを処理する画像処理装置の技術がある。例えば、Ｊ
ＰＥＧ２０００のファイルフォーマット規格（非特許文献１参照。）には、情報単位とし
て、ＢＯＸ構造を有する画像データの構成が定められている。また、例えば、特開２００
７−８０２２３号公報（特許文献１参照。）には、ＢＯＸ間で共有や参照を行うことにより、画像データを可逆圧縮する符号変換装置等の技術が開示されている。
【０００３】
なお、上記特許文献に記載されているＢＯＸとは、本願発明の「情報単位」に対応する。
【特許文献１】特開２００７−８０２２３号公報
【非特許文献１】ＩＳＯ／ＩＥＣ  １５４４４−１／ＩＴＵ−Ｔ  Ｒｅｃ．Ｔ．８００（ＪＰＥＧ２０００  Ｐａｒｔ１  ＪＰＥＧ２０００  ＩＭＡＧＥ  ＣＯＤＩＮＧ  ＳＹＳＴＥＭ）
【非特許文献２】ＩＳＯ／ＩＥＣ  １５４４４−９／ＩＴＵ−Ｔ  Ｒｅｃ．Ｔ．８０８（ＪＰＥＧ２０００  Ｐａｒｔ８  Ｓｅｃｕｒｅ  ＪＰＥＧ２０００）（ＪＰＳＥＣ）
【非特許文献３】ＩＳＯ／ＩＥＣ  １５４４４−６／ＩＴＵ−Ｔ  Ｒｅｃ．Ｔ．８０５（ＪＰＥＧ２０００  Ｐａｒｔ６  ＣＯＭＰＯＵＮＤ  ＩＭＡＧＥ  ＦＩＬＥ  ＦＯＲＭＡＴ）（ＪＰＭ）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、暗号化されたＢＯＸを含むコンテンツデータでは、暗号化された部分の中身が全く判らない場合には、その部分を復号した後に、中身に応じた処理を行うことになり、コンテンツの秘匿性と利便性とを両立することができないと言う不具合が生じるが、上記特許文献１に開示の符号変換装置等の技術には、そのようなことは考慮されていない。
【０００５】
そこで、例えば、複数の連続するＢＯＸを暗号化により一の暗号ＢＯＸとした場合には、暗号ＢＯＸとして構成されるデータを全て復号しなくてはならず、暗号ＢＯＸのサイズが大きくなるほど、また、暗号ＢＯＸに含まれる暗号化された複数のＢＯＸの数が多くなるほど、復号処理に時間を要し、さらに、利便性が損なわれる。
【０００６】
本発明は、上記の点に鑑みて、これらの問題を解消するために発明されたものであり、
暗号化された情報単位を含むコンテンツデータに対するアクセスが容易なコンテンツデータを生成する情報処理装置、情報処理方法、その情報処理方法をコンピュータに実行させるコンピュータプログラムを格納した情報記録媒体、及び、その情報処理装置によって処理されるコンテンツデータを格納した情報記録媒体を提供することを目的としている。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の情報処理装置は次の如き構成を採用した。
【０００８】
本発明の情報処理装置は、情報本体と該情報本体に対応する型情報とを有する複数の情報単位を含む、コンテンツデータを処理する情報処理装置であって、前記複数の情報単位のうちの、一以上の連続した情報単位又は前記一以上の連続した情報単位の情報本体が暗号化されて生成された一のデータクラスタと、前記一以上の連続した情報単位毎に対応する暗号化される前の型情報と、を含む新たな情報本体を生成する情報本体生成手段と、前記新たな情報本体に対応する新たな型情報を生成する型情報生成手段と、前記新たな情報本体と前記新たな型情報とを有する新たな情報単位により前記一以上の連続した情報単位が置き換えられたコンテンツデータを生成するコンテンツデータ生成手段と、を有する構成とすることができる。
【０００９】
これにより、暗号化された情報単位を含むコンテンツデータに対するアクセスが容易なコンテンツデータを生成する情報処理装置を提供することができる。
【００１０】
なお、上記課題を解決するため、本発明は、さらに、上記情報処理装置によって実行される情報処理方法、その情報処理方法をコンピュータに実行させるコンピュータプログラムを格納した情報記録媒体としてもよい。
【発明の効果】
【００１１】
本発明の情報処理装置、情報処理方法、及び、情報記録媒体によれば、暗号化された情報単位を含むコンテンツデータに対するアクセスが容易なコンテンツデータを生成する情報装置、情報処理方法、及び、情報記録媒体を提供することが可能になる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態を図面に基づき説明する。
〔本発明の実施の形態〕
（情報単位の説明）
本実施の形態におけるコンテンツデータは、情報単位を含んで構成される。情報単位は、情報本体と、その情報本体に係る情報であるヘッダ情報とからなる。情報単位とは、例えば、ＪＰＥＧ２０００のファイルフォーマット規格に定められるＢＯＸである。ヘッダ情報は、その情報単位に固有の情報を含む。固有の情報とは、例えば、情報単位の長さであるデータ長であり、さらに、情報単位に含まれる情報本体の型情報等である。
【００１３】
なお、以下の実施の形態では、情報単位としてＢＯＸを有するコンテンツデータについて説明するが、本発明の実施の形態は、ＢＯＸを有するコンテンツデータに限らない。情報本体とその情報本体に係る情報であるヘッダ情報とからなる情報単位を含むコンテンツデータを処理する構成であればよい。
【００１４】
（ＢＯＸの基本構成の例）
図１は、本発明の一実施の形態に係る情報処理装置によって処理されるコンテンツデータに含まれる、ＢＯＸの例である。図１（Ａ）のＢＯＸは、所定の長さで表される「データ長」及び所定の長さで表される「識別子」とからなるヘッダ情報と、情報の本体である「データ」とを有する。図１（Ａ）では、所定の長さは４バイトであるが、本発明の実施の形態は、この例に限らず固定長又は可変長でもよい。
【００１５】
「データ長」は、ＢＯＸの長さを表す長さ情報である。「データ長」は、ＢＯＸの全体の長さでもよく、ＢＯＸの全体の長さから、「データ長」の長さである４バイトを除いた長さでもよく、またさらに、ＢＯＸ全体の長さから「ヘッダ」部分の長さである８バイトを除いた長さでもよい。
【００１６】
「識別子」は、そのＢＯＸに含まれるデータに係る情報であって、例えば、データの種類を表す情報を含む「型情報」である。識別子は、また、そのＢＯＸの識別情報を含んでもよい。これにより、他のＢＯＸからデータに含まれる情報が共有され又は他のＢＯＸからデータに含まれる情報が参照される場合には、この識別情報により参照等がなされることができる。
【００１７】
「データ」には、コンテンツを構成するための情報の他に、コンテンツに係る様々な情報、又は、その他の付加情報が含まれてよい。
【００１８】
図１（Ｂ）は、ヘッダ情報に含まれる「識別子」と「データ長」との順が、図１（Ａ）と異なる他は、図１（Ａ）と同一であるので、ここでは説明を省略する。
【００１９】
（ＢＯＸを有するコンテンツデータの例）
本発明の実施の形態では、コンテンツデータとしてバイナリ形式のデータを処理する。本実施の形態において処理されるバイナリ形式のデータは、画像データの他に、音声データでもよく、また、画像と音声とが一のバイナリ形式として構成されるデータ、又は、その他のバイナリ形式のデータでもよい。以下の実施の形態では、バイナリ形式のデータを「バイナリデータ」という。
【００２０】
本実施の形態では、バイナリデータがファイルの場合には、そのデータフォーマットは「ファイルフォーマット」であり、また、バイナリデータが伝送路におけるデータの形態を有する場合には、そのデータフォーマットは「伝送フォーマット」でもよい。
【００２１】
ファイルフォーマットは、例えば、ＪＰ２ファイルフォーマット（非特許文献１参照）、ＪＰＭファイルフォーマット（非特許文献３参照。）、ＭＪ２ファイルフォーマット（ＩＳＯ／ＩＥＣ  １５４４４−３参照。）、又は、ＱｕｉｃｋＴｉｍｅ（登録商標）ファイルフォーマット（ｈｔｔｐ：／／ｄｅｖｅｌｏｐｅｒ．ａｐｐｌｅ．ｃｏｍ／ｑｕｉｃｋｔｉｍｅ／  参照。）等、Ｂｏｘ構造を含むファイルフォーマットでもよく、また例えば、ＭＰ４ファイルフォーマット（ＩＳＯ／ＩＥＣ  １４４９６−１４参照。）、又は、ＩＳＯ／ＩＥＣ  １５４４４−１２に定められるファイルフォーマット等、画像に加えて音声データを含む画像データでもよく、また例えば、ＭＰ３ファイルフォーマットのように音声データのファイルフォーマットでもよい。ファイルフォーマットは、また例えば、Ｔｉｆｆファイル又はＧｉｆファイル等のファイルフォーマットでもよい。
【００２２】
なお、ＢＯＸとは、例えば、ＪＰＥＧ２０００規格のファイルフォーマットにおけるＢｏｘであり、また例えば、ＪＰＥＧ２０００規格のコードストリームにおけるパケットでもよい。ＢＯＸとは、また例えば、ＭＰＥＧ−２（ＩＳＯ／ＩＥＣ  １３８１８参照。）又はＭＰＥＧ−４（ＩＳＯ／ＩＥＣ  １４４９６参照。）規格等による画像データ又は音声データ等において、所定のスタートコードによってその開始が表されるデータのクラスタでもよく、また例えば、ＭＰＥＧ−４  ＡＶＣ（ＩＳＯ／ＩＥＣ  １４４９６−１０参照。）／Ｈ．２６４（ＩＴＵ−Ｔ  勧告  Ｈ．２６４参照。）規格におけるＮＡＬユニットでもよい。
【００２３】
（暗号化されたＢＯＸを含むコンテンツデータの例）
図２は、本実施形態の情報処理装置によって処理されるコンテンツデータの例であって、暗号化されたＢＯＸを含むコンテンツデータの例を説明する図である。図２（Ａ）のコンテンツデータａは、Ｂ０からＢ５の６個のＢＯＸを有する。コンテンツデータａのＢＯＸ間の参照関係は、Ｂ０が、Ｂ１、Ｂ２及びＢ５を参照し、Ｂ３が、Ｂ４を参照している。これらの６個のＢＯＸのうち、Ｂ２からＢ４の３個のＢＯＸに対して暗号化が行われる。
【００２４】
図２（Ｂ）は、コンテンツデータａに対して、暗号化が行われたコンテンツデータｂを示す図である。コンテンツデータｂにおいては、Ｂ０からＢ１への参照は、コンテンツデータａに含まれる参照アドレス情報と同一の参照アドレス情報により、参照することができる。
【００２５】
なお、参照アドレス情報とは、例えば、そのＢＯＸのコンテンツデータ内における位置、そのＢＯＸと当該ＢＯＸとの相対位置等を表す情報であり、位置又は相対位置は、例えばバイト数によって表される。コンテンツデータの中に含まれるＢＯＸの位置を表す場合には、例えば、コンテンツデータの先頭位置からのオフセット値でもよい。コンテンツデータ内における位置を表す場合には、例えば、コンテンツデータの先頭位置からのオフセット値を表すバイト数でもよく、また、ＢＯＸの位置情報とＢＯＸの先頭からその情報までのバイト数によって表される相対距離との組み合わせでもよい。
【００２６】
また、他のコンテンツデータの中に含まれるＢＯＸの位置を表す場合には、他のコンテンツデータのＵＲＩ等の識別情報を含んでもよく、さらに、他のコンテンツデータ内におけるそのＢＯＸの参照アドレス情報を含んでもよい。また、参照又は共有される情報は、ＢＯＸそのもの、ＢＯＸ内のデータに含まれる情報、又は、ＢＯＸ内のヘッダ情報に含まれる情報の何れでもよい。
【００２７】
図２（Ｂ）に戻り、コンテンツデータｂは、コンテンツデータａにおけるＢ２からＢ４の３個のＢＯＸが暗号化された暗号ＢＯＸであるＢＥを含んでいる。ここで、ＢＥの長さは、Ｂ２からＢ４の長さの総和と異なるため、コンテンツデータａに含まれている参照アドレス情報では、Ｂ０からＢ５を参照することはできない。また、暗号ＢＯＸであるＢＥへの参照も全く行うことができない。なお、暗号ＢＯＸとは、例えば、情報本体に暗号化された情報単位等を有するＢＯＸである。
【００２８】
図２（Ｃ）は、Ｂ０に含まれる参照アドレス情報を更新したコンテンツデータの例である。図２（Ｃ）のコンテンツデータｃは、暗号ＢＯＸであるＢＥのデータ長にあわせて、Ｂ０が有する参照アドレス情報が更新されていることにより、Ｂ１及びＢ５への参照が可能になっている。
【００２９】
しかしながら、ＢＯＸ間の参照関係が多い場合や、ＢＯＸの数が多い場合、又は、暗号化処理によりデータ長が変更されて生成される暗号ＢＯＸの数が多い場合には、コンテンツデータの全てに渉って参照アドレス情報を変更しなくてはならず、その処理が膨大になる。
【００３０】
（元データ長を有するコンテンツデータの例）
図３は、本実施形態の情報処理装置によって生成されるコンテンツデータの例を示す図である。図３のコンテンツデータｄは、暗号化されたＢＯＸの、暗号化される前のデータ長である「元データ長」を、暗号ＢＯＸであるＢＥが有する。「元データ長」は、暗号ＢＯＸの中に、暗号化されない状態で保持される。
【００３１】
例えば、Ｂ０からＢ５への参照は、Ｂ０が有する参照アドレス情報に基づいて、Ｂ１が有するＢ１のデータ長、及び、ＢＥが有する元データ長を参照して取得することにより、実現される。
【００３２】
（互いに対応づけられている暗号ＢＯＸの例）
図４は、互いに対応づけられている暗号ＢＯＸの例を説明する図である。図４（Ａ）のコンテンツデータｅは、図２（Ａ）のコンテンツデータａと同一の構成及びＢＯＸ間の参照関係を有する。コンテンツデータｅは、さらに、Ｂ２及びＢ３が、Ｂ４と対応づけられる関係を有する。
【００３３】
なお、対応づけられるとは、例えば、コンテンツデータｅが、画像データであって、Ｂ２及びＢ３が、画像のデータであり、Ｂ４が、画像に付随するメタデータである場合等である。対応づけられるとは、また例えば、コンテンツデータｅの「コンテンツ」の部分に対応するＢＯＸ同士が、互いに関連する情報を有する場合であり、例えば、ＪＰＭフォーマットにおいて一のレイアウトオブジェクト内に含まれる複数のオブジェクト間の関係でもよい。
【００３４】
図４（Ｂ）は、Ｂ２からＢ４が暗号化されたコンテンツデータの例であって、図２（Ｂ）とは異なる構成を有する例である。図４（Ｂ）のコンテンツデータｆは、暗号ＢＯＸであるＢＥ１及びＢＥ２を有する。ＢＥ１は、Ｂ２及びＢ３が暗号化されて一の暗号ＢＯＸとなったＢＯＸであり、ＢＥ２は、Ｂ４が暗号化されて一の暗号ＢＯＸとなったＢＯＸである。Ｂ２及びＢ３は、Ｂ４と対応づけられるが、暗号ＢＯＸであるＢＥ１とＢＥ２とは、暗号化されているため、互いに対応づけられるＢＯＸの有無及びそのＢＯＸへの参照アドレス情報等は、復号されることによってのみ判別することができる。
【００３５】
図４（Ｃ）は、暗号化される前の識別子を有する暗号ＢＯＸを含むコンテンツデータの例である。図４（Ｃ）のコンテンツデータｇは、暗号ＢＯＸであるＢＥ１が、暗号化される前のＢＯＸであるＢ２及び／又はＢ３の識別子である元識別子を有する。これにより、元識別子に基づいて、識別子毎に対応する処理を行うことができる。
【００３６】
識別子毎に対応する処理とは、例えば、その識別子に対応する暗号化されたＢＯＸを復号するか否かを決定する等であり、またさらに、復号した情報本体に基づいて、対応づけられている他のＢＯＸを取得してもよい。
【００３７】
（本実施形態の情報処理装置の機能構成）
図５は、本実施形態の情報処理装置の機能構成の例を示す図である。図５は、情報処理装置１及び情報処理装置２が示されている。情報処理装置１は、コンテンツデータから情報単位を取得し、一以上の連続する情報単位を暗号化する。情報処理装置２は、情報処理装置１によって暗号化された情報単位を有するコンテンツデータから、暗号化される前の型情報及び／又は参照アドレス情報を取得して処理を行う。
【００３８】
情報処理装置１は、例えば、情報単位取得手段１１０、暗号化手段１２０、ヘッダ情報生成手段１３０、情報本体生成手段１４０、及び、コンテンツデータ生成手段１５０を有する。情報単位取得手段１１０は、情報処理装置１に入力されるコンテンツデータから情報単位を取得する。情報単位取得手段１１０は、例えば、情報単位のヘッダ情報を解析することにより、所定の情報単位を取得する。
【００３９】
暗号化手段１２０は、情報単位取得手段１１０によって取得された情報単位に対し、暗号化処理を行う。暗号化手段１２０は、一以上の連続した情報単位に対して暗号化処理を行い、一のデータクラスタとしてもよい。暗号化手段１２０は、また例えば、一以上の連続した情報単位の情報本体に対して暗号化処理を行い、一のデータクラスタとしてもよい。
【００４０】
暗号化手段１２０は、また例えば、一以上の連続した情報単位に対して、暗号化処理を行い、一以上のデータクラスタを生成してもよい。より詳細には、情報単位毎にデータクラスタを生成してもよく、連結した情報単位を所定の長さ毎に暗号化することにより、複数のデータクラスタを生成してもよい。
【００４１】
ヘッダ情報生成手段１３０は、暗号化手段１２０によって生成されたデータクラスタを、情報本体に含む新たな情報単位のヘッダ情報を生成する。ヘッダ情報生成手段１３０は、新たな情報単位のデータ長である長さ情報及び／又は識別子である型情報を生成する。ヘッダ情報生成手段１３０は、例えば、長さ情報生成手段１３１及び型情報生成手段１３２を有する。
【００４２】
長さ情報生成手段１３１は、新たな情報単位のデータ長の情報を生成する。なお、データ長は、暗号化手段１２０によって生成されたデータクラスタの長さに加えて、情報本体が、元データのデータ長又は元識別子を含む場合には、それらの長さを加えた値である。
【００４３】
型情報生成手段１３２は、新たな情報単位の型情報を生成する。新たな情報単位は、暗号ＢＯＸとして構成され、例えば、ＪＰＳＥＣ（非特許文献２参照。）に規定されるＧｅｎｅｒｉｃ  Ｐｒｏｔｅｃｔｅｄ  Ｂｏｘでもよく、その場合の型情報は「ｇｐｒｔ」となる。
【００４４】
情報本体生成手段１４０は、暗号化手段１２０によって生成されたデータクラスタと、暗号化される前の情報単位毎のヘッダ情報とに基づいて、新たな情報本体を生成する。新たな情報本体には、暗号化される前の情報単位毎の、長さ情報に基づく値、及び／又は、型情報に基づく情報が含まれる。
【００４５】
長さ情報に基づく値は、例えば、暗号化される前の情報単位毎の長さ情報の一覧でもよく、また、暗号化される前の情報単位が複数の場合には、それらの長さの値の総和でもよい。型情報に基づく情報は、例えば、暗号化される前の情報単位毎の型情報の一覧でもよい。
【００４６】
コンテンツデータ生成手段１５０は、情報処理装置１に入力されたコンテンツデータの暗号化された情報単位を、情報本体生成手段１４０によって生成された情報本体と、ヘッダ情報生成手段１３０によって生成されたヘッダ情報とを含む新たな情報単位に置き換えることにより、新たなコンテンツデータを生成する。
【００４７】
なお、新たな情報単位は、新たなコンテンツデータにおいて、暗号化された情報単位と同じ位置に含まれてもよく、また暗号化された情報単位と異なる位置に含まれてもよい。新たな情報単位は、また例えば、新たなコンテンツデータの末尾に含まれてもよい。新たな情報単位は、また例えば、コンテンツデータ内のＢＯＸが、「入れ子」構造を有する場合には、暗号化される前の情報単位と、「入れ子」の深さが同じＢＯＸ群の末尾又は先頭でもよい。
【００４８】
情報処理装置２は、情報処理装置１によって生成されたコンテンツデータを処理する。情報処理装置２は、コンテンツデータにアクセスすることにより、その中に含まれるＢＯＸ毎に、処理を行う。なお、「アクセスする」とは、例えば、コンテンツデータの所定の部分を読み出す、コンテンツデータの所定の部分にデータを追記、又は、更新、編集等することである。
【００４９】
情報処理装置２は、例えば、情報単位取得手段２１０、型情報取得手段２２０、情報処理手段２３０、アドレス情報取得手段２４０、及び、参照手段２５０を有する。情報単位取得手段２１０は、情報処理装置２に入力されるコンテンツデータに含まれる情報単位のヘッダ情報に基づいて、所定の情報単位を取得する。
【００５０】
型情報取得手段２２０は、情報単位取得手段２１０によって取得された情報単位が、暗号化ＢＯＸであって、その暗号ＢＯＸが元識別子を有する場合に、元識別子を取得する。これにより、暗号ＢＯＸに含まれるコンテンツの型に係る情報を取得することができる。
【００５１】
情報処理手段２３０は、型情報取得手段２２０によって取得された元識別子に基づいて、所定の処理を行う。所定の処理とは、例えば、その暗号ＢＯＸを復号することであり、また例えば、復号された暗号ＢＯＸに含まれる情報に基づいて、コンテンツデータが有する他の情報単位を参照する処理である。なお、他の情報単位とは、暗号ＢＯＸに含まれている情報単位でもよく、暗号ＢＯＸに含まれていないその他の情報単位でもよい。
【００５２】
アドレス情報取得手段２４０は、情報単位取得手段２１０によって取得された情報単位が、他の情報単位への参照アドレス情報を含む場合に、その参照アドレス情報を取得する。参照手段２５０は、アドレス情報取得手段２４０によって取得された参照アドレス情報に基づいて、参照先の情報単位を参照する。参照手段２５０は、コンテンツデータに含まれる情報単位毎に有する長さ情報を取得し、その長さ情報と、参照アドレス情報とに基づいて、参照先の情報単位を識別する。参照手段２５０は、情報単位が暗号ＢＯＸの場合には、その暗号ＢＯＸの長さ情報に代えて、暗号化される前の情報単位毎の長さ情報に基づく値を取得して、参照先の情報単位を識別する。
【００５３】
（暗号ＢＯＸの構成の例）
図６は、暗号ＢＯＸの構成の例を示す図である。図６（Ａ）から図６（Ｄ）の暗号ＢＯＸは、全て、先頭部分に暗号ＢＯＸ自身のヘッダ情報である「データ長」、及び、暗号ＢＯＸであることを表す「ｇｐｒｔ識別子」とを有する。これらの情報は、例えば、それぞれ４バイトの固定長の長さである。
【００５４】
図６（Ａ）は、元データ長と元識別子とを暗号化されない形態で含む暗号ＢＯＸの構成の例である。図６（Ａ）の暗号ＢＯＸは、ヘッダ情報の後に、暗号化される前のＢＯＸ毎の「元データ長」と「元識別子」との組が続く。これにより、暗号化される前のＢＯＸ毎に対応するヘッダ情報を取得することができる。なお、「元データ長」と「元識別子」とは、ＢＯＸ毎に一組ずつ連続する構成の他に、暗号化される前の全てのＢＯＸの「元データ長」の一覧に続いて、「元識別子」の一覧が含まれてもよい。
【００５５】
また、図６（Ａ）では、「元データ長」と「元識別子」とが、暗号化される前のＢＯＸと、その並び順によって対応づけられているが、本発明の実施の形態はこの例に限らない。例えば、暗号化されたＢＯＸが、暗号化される前のＢＯＸのヘッダ情報を含んでいる場合には、そのヘッダ情報によって対応づけられてもよい。また、図６（Ａ）の暗号ＢＯＸは、「暗号化されたＢＯＸ」の部分が、暗号化される前のＢＯＸの情報本体の部分が暗号化されて生成したデータクラスタに対応する構成でもよい。
【００５６】
図６（Ａ）の構成において、参照手段２５０が、暗号ＢＯＸを跨ぐ参照を行う際には、「元データ長」の総和を演算することにより、暗号化される前のデータ長を取得することができる。
【００５７】
図６（Ｂ）は、図６（Ａ）が有する元データ長の一覧に代えて、「元データ長」の総和を、暗号化されない形態で情報本体に含む暗号ＢＯＸの例である。これにより、暗号ＢＯＸを含むコンテンツデータを、参照手段２５０が参照する際に、暗号化される前のデータ長を演算する必要がないため、処理を高速に行うことができる。
【００５８】
なお、図６（Ｂ）の例では、「暗号化されたＢＯＸ」の部分に、暗号化される前のＢＯＸ毎に対応する元データ長が含まれる。したがって、暗号化されたＢＯＸは、ヘッダを含むＢＯＸがそのまま暗号化された構成でもよく、また例えば、暗号化される前の情報本体の部分に対応するデータと、データ長に対応するデータとが、暗号化された構成でもよい。
【００５９】
図６（Ｃ）は、元データ長の一覧が暗号化されない形態で情報本体に含む暗号ＢＯＸの例である。図６（Ｃ）では、元識別子の一覧は、「暗号化されたＢＯＸ」の中に含まれる。したがって、図６（Ａ）及び（Ｂ）に比べて、より秘匿性の高い暗号ＢＯＸを実現することができる。なお、元識別子の一覧の情報は、暗号化される前のＢＯＸが、ヘッダ部分を含んだまま暗号化されることにより、「暗号化されたＢＯＸ」に含まれる構成でもよい。
【００６０】
図６（Ｄ）は、元データ長の総和が、暗号化されない状態で情報本体に含まれる暗号ＢＯＸの例である。図６（Ｄ）では、元データ長の一覧と元識別子の一覧とは、「暗号化されたＢＯＸ」に含まれる。したがって、図６（Ｄ）は、図６（Ａ）から（Ｃ）に比べて、より秘匿性の高い暗号ＢＯＸを実現することができる。なお、元データ長の一覧と元識別子の一覧の情報は、暗号化される前のＢＯＸが、ヘッダ部分を含んだまま暗号化されることにより、「暗号化されたＢＯＸ」に含まれる構成でもよい。
【００６１】
（暗号ＢＯＸを含むコンテンツデータを生成する処理の例を示すフロー図）
図７は、暗号ＢＯＸを含むコンテンツデータを生成する処理の例を示すフロー図である。図７の処理は、例えば、本実施形態の情報処理装置１によって実行される。図７のステップＳ１０１では、情報単位取得手段１１０が、情報処理装置１に入力されたコンテンツデータから、処理するＢＯＸを取得する。処理するＢＯＸは、一以上の連続したＢＯＸである。
【００６２】
ステップＳ１０１に続いてステップＳ１０２に進み、暗号化手段１２０が、ステップＳ１０１で取得されたＢＯＸに対して暗号化処理を行い、一以上のデータクラスタを生成する。暗号化手段１２０は、例えば、取得されたＢＯＸがヘッダ情報を含んだまま暗号化処理を行ってもよく、また例えば、取得されたＢＯＸの情報本体を取り出して連結した後に暗号化処理を行ってよい。情報本体に対して暗号化処理を行う場合には、ヘッダに含まれる情報を、連結された情報本体に対してさらに連結してもよい。
【００６３】
ステップＳ１０２に続いてステップＳ１０３に進み、情報本体生成手段１４０が、暗号化されない元識別子を、新たな情報単位に含ませるか否かの判断を行う。新たな情報単位に暗号化されない元識別子を含ませる場合にはステップＳ１０４に進み、含ませない場合にはステップＳ１０５に進む。なお、図中「ＢＯＸタイプ」は、「型情報」又は「識別子」に対応する。ステップＳ１０３に続くステップＳ１０４では、情報本体生成手段１４０が、暗号化される前のＢＯＸの識別子の一覧を生成する。ステップＳ１０４に続いてステップＳ１０５に進む。
【００６４】
ステップＳ１０５では、情報本体生成手段１４０が、暗号化されない元データ長を、新たな情報単位に含ませるか否かの判断を行う。新たな情報単位に、暗号化されない元データ長を含ませる場合には、ステップＳ１０６に進み、含ませない場合にはステップＳ１０７に進む。なお、図中「ＢＯＸ長」は、「長さ情報」又は「データ長」に対応する。ステップＳ１０５に続くステップＳ１０６では、情報本体生成手段１４０が、暗号化されない元データ長の一覧を生成する。なお、情報本体生成手段１４０は、元データ長の一覧に代えて、元データ長の総和を生成してもよい。ステップＳ１０６に続いてステップＳ１０７に進む。
【００６５】
ステップＳ１０７では、情報本体生成手段１４０が、ステップＳ１０２で生成されたデータクラスタ、ステップＳ１０４で生成された元識別子の一覧、及び、ステップＳ１０６で生成された元データ長の一覧又は総和を含む、情報本体を生成し、ヘッダ情報生成手段１３０が、その情報本体に対応するヘッダ情報を生成する。
【００６６】
さらに、コンテンツデータ生成手段１５０が、ヘッダ情報生成手段１３０によって生成されたヘッダ情報と、情報本体生成手段１４０によって生成された情報本体とからなる情報単位を生成し、この情報単位を、コンテンツデータが有するステップＳ１０１で取得された情報単位と置き換えることにより、新たなコンテンツデータを生成する。
【００６７】
以上のステップＳ１０１からステップＳ１０７の処理により、一以上の連続したＢＯＸが、暗号化されて暗号ＢＯＸとなったコンテンツデータが生成される。
【００６８】
（暗号ＢＯＸを含むコンテンツデータを参照する処理の例）
図８は、本発明の一実施の形態に係る情報処理方法によって生成されたコンテンツデータを処理する例のフロー図であって、参照アドレス情報がコンテンツデータの先頭位置からのオフセット値によって表される場合の例である。図８の処理は、例えば、情報処理装置１によって実行され、図６（Ｂ）の構成を有するコンテンツデータが処理される。
【００６９】
図８のステップＳ２０１では、情報単位取得手段２１０が、入力されたコンテンツデータから処理するＢＯＸを取得する。ステップＳ２０１に続いてステップＳ２０２に進み、アドレス情報取得手段２４０が、処理するＢＯＸに含まれている、参照アドレス情報を取得する。図８の例では、参照アドレス情報は、コンテンツデータの先頭位置からのオフセット値で表される。
【００７０】
ステップＳ２０２に続いてステップＳ２０３に進み、参照手段２５０によって、コンテンツデータの先頭位置からの各ＢＯＸのデータ長の和を求める処理が開始される。ステップＳ２０３からステップＳ２０９の処理は、参照手段２５０によって実行される。
【００７１】
ステップＳ２０３では、和Ｄに０が代入されて初期化され、さらにＢＯＸ位置を表すカウンタＮが初期化されて０が代入される。ステップＳ２０３に続いてステップＳ２０４に進み、コンテンツデータの先頭位置からＮ番目のＢＯＸが暗号ＢＯＸか否かを判定する。暗号ＢＯＸではない場合には、ステップＳ２０５に進み、暗号ＢＯＸの場合には、ステップＳ２０６に進む。
【００７２】
ステップＳ２０４に続くステップＳ２０５では、Ｎ番目のＢＯＸのヘッダ情報に含まれているデータ長Ｄｎが取得される。一方、ステップＳ２０４に続くステップＳ２０６では、暗号ＢＯＸに含まれている元データ長の総和が、Ｄｎとして取得される。なお、コンテンツデータが、図６（Ａ）又は（Ｃ）の構成を有する場合には、暗号ＢＯＸに含まれている元データ長の一覧から、元データ長の総和を演算し、その値をＤｎとして取得する。
【００７３】
ステップＳ２０５又はステップＳ２０６に続くステップＳ２０７では、和ＤにステップＳ２０５又はステップＳ２０６で取得されたＤｎが加算される。ステップＳ２０７に続いてステップＳ２０８に進み、参照アドレス情報Ａの値が、Ｄよりも小さいか否かが判断される。参照アドレス情報Ａの値がＤよりも小さい場合には、Ｎ番目のＢＯＸが参照されるＢＯＸであると判断されて、ステップＳ２０９に進む。位置情報Ａの値がＤよりも大きい場合には、Ｎ番目のＢＯＸが参照されるＢＯＸでは無いと判断され、Ｎの値を１加算してステップＳ２０４に戻り、処理を繰り返す。ステップＳ２０９では、参照先のＢＯＸに含まれる情報が参照される。
【００７４】
（複数の暗号ＢＯＸが互いに対応づけられているコンテンツデータを処理する例）
図９は、複数の暗号ＢＯＸが互いに対応づけられているコンテンツデータを処理する例である。図９の処理は、例えば、情報処理装置２によって実行され、処理されるコンテンツデータは、図６（Ａ）又は（Ｂ）の構成を有する。
【００７５】
図９のステップＳ３０１では、情報単位取得手段２０１が、入力されたコンテンツデータの中から、暗号ＢＯＸを取得する。ステップＳ３０１に続くステップＳ３０２からステップＳ３０４の処理は、暗号ＢＯＸに含まれている元識別子の情報の数だけ繰り返される。ステップＳ３０２では、型情報取得手段２２０が、暗号ＢＯＸに含まれている暗号化されていない元識別子の一つを取得する。
【００７６】
ステップＳ３０２に続いてステップＳ３０３に進み、情報処理手段２３０が、ステップＳ３０２で取得された識別子が、所定のメタデータの識別子か否かを判断する。所定のメタデータの識別子である場合には、ステップＳ３０４に進み、そうではない場合には、ステップＳ３０２に戻って、次の元データの識別子に係る処理を繰り返す。
【００７７】
ステップＳ３０３に続くステップＳ３０４では、情報処理手段２３０が、ステップＳ３０２で取得された識別子に対応するメタデータのＢＯＸを復号する。
【００７８】
（暗号ＢＯＸと対応づけられるＢＯＸを有するコンテンツデータの例）
図１０は、図９の処理が施されるコンテンツデータの例を説明する図である。図９は、文書画像であるＪＰＭフォーマットを有するコンテンツデータの例である。ＪＰＭフォーマットのコンテンツデータは、画像データの内容をアノテーションとして文字情報で表すことが許容されている。このアノテーション情報はページ一枚毎に対応づけて設けられることができ、ＪＰＭフォーマットに含まれる画像データを暗号化した際にはこのアノテーション情報も同時に暗号化されるとよい。
【００７９】
ところで、暗号化された画像データを有するＪＰＭファイルフォーマットのコンテンツデータを扱うアプリケーションでは、暗号化されたデータが単に画像データのみから構成されているのか、それともアノテーションのようなメタデータを含んだ形態で構成されているのかを暗号化されたファイルのままでの判別ができない場合には、その文章を復号しない限り、メタデータが含まれているのか否かを推し量ることができないという不具合があった。
【００８０】
より詳細には、例えば、コンテンツデータを購入する者が、暗号のキーを購入する際に、対価に含まれている情報が、画像データのみなのか、メタデータを含んでいるのかが判らないという事態が生じることがある。
【００８１】
そこで、暗号化される前のＢＯＸの識別子を暗号ＢＯＸが有することにより、この不具合を解消することができる。
【００８２】
図１０のコンテンツデータは、画像データがページ毎に暗号化され、アノテーションを保存するＸＭＬ  ＢＯＸ（以下、「ＸＭＬＢ」という。）も、ページ毎に対応づけられて暗号化されている。
【００８３】
暗号化されているＰａｇｅ  Ｂｏｘは、アノテーション情報を持つＢＯＸへのポインタを持つＨｉｄｄｅｎ  Ｔｅｘｔ  Ｍｅｔａｄａｔａ  Ｂｏｘ（以下、「ＨＴＸＢ」という。）を有し、ＨＴＸＢもＰａｇｅ  Ｂｏｘの中の一データとして暗号化されている。すなわち、ＨＴＸＢの中にＸＭＬＢへの参照アドレス情報が含まれている。
【００８４】
そこで、暗号化されたページデータを送信するサーバを考えると、このサーバは、暗号化された画像のページデータとあわせて、そのページに関連したアノテーション情報を保存したＸＭＬＢも送信することが望ましい。そこで、暗号化された状態でも、ページデータの中にアノテーション情報があるのか否かを確かめる必要が生じる。
【００８５】
本実施形態による暗号ＢＯＸは暗号化される前の型情報を有するため、その型情報に基づいて、アノテーションデータの有無を確認することができる。より詳細には、ＨＴＸＢの有無により、アノテーションデータの有無を確認することができる。そこで、サーバは、暗号ＢＯＸ中の元の型情報を調べ、その中から必要なＢＯＸの識別子、ここでは、ＨＴＸＢの識別子を見つけ出し、ＨＴＸＢの識別子がある場合には、ページデータを復号してＨＴＸＢを取得し、対応するＸＭＬＢを取得することで好ましい動作を行うことができる。
【００８６】
（コンピュータの構成）
図１１は、本実施形態の情報処理装置を実現するコンピュータの構成図である。図１１のコンピュータは、主処理部４００、入力デバイス４１０、表示装置４２０、プリンタ４３０、スキャナ４４０、及び、ＨＤＤ４９０を有する。主処理部４００は、コンピュータの機能を実現する主たる部分であり、ＣＰＵ４０１、ＲＯＭ４０８、及び、ＲＡＭ４０９を有する。ＣＰＵ４０１は、コンピュータプログラムをＲＯＭ４０８等から読み出し、ＲＡＭ４０９に展開することにより、そのコンピュータプログラムを実行する。ＲＯＭ４０８は不揮発性のメモリであり、ＣＰＵ４０１によって実行されるコンピュータプログラム、及び、情報処理装置の制御に必要なパラメータ等を保持する。ＲＡＭ４０９は、ＣＰＵ４０１が処理を行う際の、ワークメモリである。
【００８７】
入力デバイス４１０は、例えば、キーボード等であり、操作者が指示の入力を行う際に使用する。表示装置４２０は、コンピュータの状態等の表示を行う。プリンタ４３０は、画像を媒体に形成して出力する装置であり、スキャナ４４０は、媒体上に形成された画像を光学的に読み取る装置である。ＨＤＤ４９０は、画像のデータ等の大容量のデータを格納する。
【００８８】
本発明の情報処理方法をコンピュータに実行させるコンピュータプログラムは、ＨＤＤ４９０、又は、ＲＯＭ４０８に格納される他に、その他図示しないドライブ装置に挿入可能な記録媒体に格納されていてもよい。
【００８９】
以上、発明を実施するための最良の形態について説明を行ったが、本発明は、この最良の形態で述べた実施の形態に限定されるものではない。本発明の主旨をそこなわない範囲で変更することが可能である。
【図面の簡単な説明】
【００９０】
【図１】本発明の一実施の形態に係る情報処理装置によって処理されるコンテンツデータに含まれるＢＯＸの例
【図２】本発明の一実施の形態に係る情報処理装置によって処理されるコンテンツデータの例。
【図３】元データ長を有する暗号ＢＯＸを含んで構成されるコンテンツデータの例。
【図４】複数の暗号ＢＯＸが互いに対応づけられるコンテンツデータの例。
【図５】本発明の一実施の形態に係る情報処理装置の機能構成の例を示す図。
【図６】暗号ＢＯＸの構成の例を示す図。
【図７】暗号ＢＯＸを含むコンテンツデータを生成する処理の例を示すフロー図。
【図８】暗号ＢＯＸを含むコンテンツデータを参照する処理の例を示すフロー図。
【図９】複数の暗号ＢＯＸが互いに対応づけられているコンテンツデータを処理する例を示すフロー図。
【図１０】暗号ＢＯＸと対応づけられるＢＯＸを有するコンテンツデータの例を示す図。
【図１１】本実施形態のコンピュータの構成の例を示す図。
【符号の説明】
【００９１】
１、２  情報処理装置
１１０、２１０  情報単位取得手段
１２０  暗号化手段
１３０  ヘッダ情報生成手段
１３１  長さ情報生成手段
１３２  型情報生成手段
１４０  情報本体生成手段
１５０  コンテンツデータ生成手段
２２０  型情報取得手段
２３０  情報処理手段
２４０  アドレス情報取得手段
２５０  参照手段
４００  コンピュータの主処理部
４０１  ＣＰＵ
４０８  ＲＯＭ
４０９  ＲＡＭ
４１０  入力デバイス
４２０  表示装置
４３０  プリンタ
４４０  スキャナ
４９０  ＨＤＤ
【図１】
0004995042.tif 000002
【図２】
0004995042.tif 000003
【図３】
0004995042.tif 000004
【図４】
0004995042.tif 000005
【図５】
0004995042.tif 000006
【図６】
0004995042.tif 000007
【図７】
0004995042.tif 000008
【図８】
0004995042.tif 000009
【図９】
0004995042.tif 000010
【図１０】
0004995042.tif 000011
【図１１】
0004995042.tif 000012