(57)【要約】【課題】符号化されたデータを暗号処理する負荷をできるだけ減らしつつ、不正な利用を阻止する。【解決手段】符号化画像データ５０１（符号化データ）から暗号処理する部分を、暗号部分抽出部が抽出し、部分データ５６１を生成する。部分データ５６１を、暗号処理部が暗号処理して、処理済部分データを生成する。符号化画像データ５０１のうち暗号部分抽出部が部分データ５６１を抽出した部分と同一の部分を、置換部が処理済部分データで置換する。暗号部分抽出部が抽出する抽出部分５４１〜５５０は、符号化画像データ５０１の先頭に近いほど抽出部分の割合が高く、先頭から遠くなるほど抽出部分の割合が低くなるようにする。【選択図】図４
2008131556.tif 000002
【特許請求の範囲】
【請求項１】
情報を処理する処理装置と、暗号部分抽出部と、暗号処理部と、置換部とを有し、
上記暗号部分抽出部は、上記処理装置を用いて、符号化データを入力し、上記処理装置を用いて、入力した符号化データのなかから一部を抽出して部分データとし、
上記暗号処理部は、上記処理装置を用いて、上記暗号部分抽出部が抽出した部分データを暗号処理して処理済部分データとし、
上記置換部は、上記処理装置を用いて、上記符号化データのうち、上記暗号部分抽出部が部分データを抽出した部分と同一の部分を、上記暗号処理部が暗号処理した処理済部分データで置換して処理済データとし、上記処理装置を用いて、置換した処理済データを出力する
ことを特徴とするデータ変換装置。
【請求項２】
上記暗号部分抽出部は、
上記処理装置を用いて、入力した符号化データを複数のブロックに分割し、上記処理装置を用いて、分割した複数のブロックそれぞれのなかで抽出する部分が一様に分布するように、部分データを抽出する
ことを特徴とする請求項１に記載のデータ変換装置。
【請求項３】
上記暗号部分抽出部は、
上記処理装置を用いて、分割した複数のブロックそれぞれにおける抽出する部分の割合が、先頭に近いブロックほど高くなるよう、部分データを抽出する
ことを特徴とする請求項２に記載のデータ変換装置。
【請求項４】
上記暗号部分抽出部は、
上記処理装置を用いて、入力した符号化データを複数のブロックに分割し、上記処理装置を用いて、分割した複数のブロックそれぞれのなかで所定の長さの部分を部分データとして抽出する
ことを特徴とする請求項１に記載のデータ変換装置。
【請求項５】
上記暗号部分抽出部は、
上記処理装置を用いて、分割した複数のブロックそれぞれの長さが、先頭に近いブロックほど短くなるよう、符号化データを分割する
ことを特徴とする請求項４に記載のデータ変換装置。
【請求項６】
上記暗号部分抽出部は、
上記処理装置を用いて、入力した符号化データを所定の長さの複数のブロックに分割し、上記処理装置を用いて、分割した複数のブロックなかから複数のブロックを選択し、上記処理装置を用いて、選択した複数のブロックを部分データとして抽出する
ことを特徴とする請求項１に記載のデータ変換装置。
【請求項７】
上記暗号部分抽出部は、
上記処理装置を用いて、分割した複数のブロックそれぞれを選択する確率が、先頭に近いブロックほど高くなるよう、複数のブロックを選択する
ことを特徴とする請求項６に記載のデータ変換装置。
【請求項８】
上記データ変換装置は、更に、情報を記憶する記憶装置と、周波数変換部と、量子化表記憶部と、量子化部と、符号化表記憶部と、符号化部と、形式化部とを有し、
上記周波数変換部は、上記処理装置を用いて、原画像データを入力し、上記処理装置を用いて、入力した原画像データを周波数変換して周波数画像データとし、
上記量子化表記憶部は、上記記憶装置を用いて、量子化表を記憶し、
上記量子化部は、上記処理装置を用いて、上記周波数変換部が周波数変換した周波数画像データを、上記量子化表記憶部が記憶した量子化表に基づいて量子化して量子化画像データとし、
上記符号化表記憶部は、上記記憶装置を用いて、符号化表を記憶し、
上記符号化部は、上記処理装置を用いて、上記量子化部が量子化した量子化画像データを、上記符号化表記憶部が記憶した符号化表に基づいて符号化して符号化画像データとし、
上記暗号部分抽出部は、上記処理装置を用いて、上記符号化部が符号化した符号化画像データを符号化データとして入力し、
上記形式化部は、上記置換部が出力した処理済データを暗号化画像データとし、上記処理装置を用いて、上記暗号化画像データと上記量子化表記憶部が記憶した量子化表と上記符号化表記憶部が記憶した符号化表とに基づいて、形式化画像データを生成し、上記処理装置を用いて、生成した形式化画像データを出力する
ことを特徴とする請求項１に記載のデータ変換装置。
【請求項９】
上記データ変換装置は、更に、情報を記憶する記憶装置と、分解部と、符号化表記憶部と、量子化表記憶部と、復号部と、逆量子化部と、周波数逆変換部とを有し、
上記分解部は、上記処理装置を用いて、所定の形式で形式化された形式化画像データを入力し、上記処理装置を用いて、入力した形式化画像データに基づいて、暗号化画像データと符号化表と量子化表とを取得し、
上記符号化表記憶部は、上記記憶装置を用いて、上記分解部が取得した符号化表を記憶し、
上記量子化表記憶部は、上記記憶装置を用いて、上記分解部が取得した量子化表を記憶し、
上記暗号部分抽出部は、上記処理装置を用いて、上記分解部が取得した暗号化画像データを符号化データとして入力し、
上記復号部は、上記置換部が出力した処理済データを符号化画像データとし、上記処理装置を用いて、上記符号化画像データを、上記符号化表記憶部が記憶した符号化表に基づいて復号して復号画像データとし、
上記逆量子化部は、上記処理装置を用いて、上記復号部が復号した復号画像データを、上記量子化表記憶部が記憶した量子化表に基づいて逆量子化して逆量子化画像データとし、
上記周波数逆変換部は、上記処理装置を用いて、上記逆量子化部が逆量子化した逆量子化画像データを周波数逆変換して再生画像データとし、上記処理装置を用いて、周波数逆変換した再生画像データを出力する
ことを特徴とする請求項１に記載のデータ変換装置。
【請求項１０】
上記データ変換装置は、更に、形式補正部を有し、
上記暗号部分抽出部は、上記処理装置を用いて、所定の形式で形式化された形式化画像データを、符号化データとして入力し、上記処理装置を用いて、入力した形式化画像データのなかから部分データを抽出し、
上記形式補正部は、上記処理装置を用いて、上記置換部が出力した処理済データの形式を補正して処理済形式化画像データとし、上記処理装置を用いて、補正した処理済形式化画像データを出力する
ことを特徴とする請求項１に記載のデータ変換装置。
【請求項１１】
上記データ変換装置は、更に、分解部と、形式化部とを有し、
上記分解部は、上記処理装置を用いて、所定の形式で形式化された形式化画像データを入力し、上記処理装置を用いて、入力した形式化画像データに基づいて、符号化画像データと符号化表と量子化表とを取得し、
上記暗号部分抽出部は、上記処理装置を用いて、上記分解部が取得した符号化画像データを符号化データとして入力し、
上記形式化部は、上記処理装置を用いて、上記置換部が出力した処理済データと上記分解部が取得した符号化表と上記分解部が取得した量子化表とに基づいて、処理済形式化データを生成し、上記処理装置を用いて、生成した処理済形式化データを出力する
ことを特徴とする請求項１に記載のデータ変換装置。
【請求項１２】
上記暗号部分抽出部は、
上記処理装置を用いて、エントロピー符号化されたデータを符号化データとして入力する
ことを特徴とする請求項１に記載のデータ変換装置。
【請求項１３】
上記暗号部分抽出部は、
上記処理装置を用いて、ハフマン符号化されたデータを符号化データとして入力する
ことを特徴とする請求項１２に記載のデータ変換装置。
【請求項１４】
上記暗号部分抽出部は、
上記処理装置を用いて、算術符号化されたデータを符号化データとして入力する
ことを特徴とする請求項１２に記載のデータ変換装置。
【請求項１５】
上記暗号部分抽出部は、
上記処理装置を用いて、エントロピー符号化されたデータの一部を暗号化したデータを符号化データとして入力する
ことを特徴とする請求項１に記載のデータ変換装置。
【請求項１６】
上記暗号部分抽出部は、
上記処理装置を用いて、ハフマン符号化されたデータの一部を暗号化したデータを符号化データとして入力する
ことを特徴とする請求項１５に記載のデータ変換装置。
【請求項１７】
上記暗号部分抽出部は、
上記処理装置を用いて、算術符号化されたデータの一部を暗号化したデータを符号化データとして入力する
ことを特徴とする請求項１５に記載のデータ変換装置。
【請求項１８】
情報を処理する処理装置を有するデータ変換装置がデータを変換するデータ変換方法において、
上記処理装置が、符号化データを入力し、
上記処理装置が、入力した符号化データのなかから一部を抽出して部分データとし、
上記処理装置が、抽出した部分データを暗号処理して処理済部分データとし、
上記処理装置が、上記符号化データのうち、抽出した部分を、暗号処理した処理済部分データで置換して処理済データとし、
上記処理装置が、置換した処理済データを出力する
ことを特徴とするデータ変換方法。
【請求項１９】
情報を処理する処理装置を有するコンピュータを、請求項１に記載のデータ変換装置として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、符号化されたデータを不正な利用から守るため、暗号処理をするデータ変換装置に関する。
【背景技術】
【０００２】
近年デジタルカメラの普及や文書の電子化に伴い、画像を電子データのまま扱う機会が増えている。また、これらのデータサイズは増加する傾向にある。一方で、これらのコンテンツを不正な閲覧から守るため、データの暗号化が求められる。
画像などのデータが大きなデータである場合、そのデータ全てを暗号化するには、暗号処理に必要な負荷が高くなる。
そこで、データの一部のみを暗号化して、少ない負荷でデータの利用性を悪くする技術がある。
【特許文献１】特開２００４−１９８７６０号公報
【特許文献２】特開２００５−７２６９９号公報
【特許文献３】特開２００３−１５３２２８号公報
【特許文献４】特開平６−１２５５５３号公報
【特許文献５】特開平１１−７５１７８号公報
【特許文献６】特開２００４−３２５３８号公報
【特許文献７】特開平１０−１０８１８０号公報
【非特許文献１】日本工業標準調査会「日本工業規格  Ｘ４３０１  連続階調静止画像のディジタル圧縮及び符号処理」１９９５年
【発明の開示】
【発明が解決しようとする課題】
【０００３】
暗号処理の負荷を減らすには、できるだけ暗号化する部分を少なくする必要がある。
しかし、暗号化する部分が少なければ、不正にデータを利用しようとする者が、暗号化されていない部分から暗号化された部分を推定し、データを不正に利用できる危険が高くなる。
この発明は、例えば、上記のような課題を解決するためになされたものであり、できるだけ暗号処理する部分を少なくしつつ、不正にデータを利用できなくすることを目的とする。
【課題を解決するための手段】
【０００４】
この発明にかかるデータ変換装置は、
情報を処理する処理装置と、暗号部分抽出部と、暗号処理部と、置換部とを有し、
上記暗号部分抽出部は、上記処理装置を用いて、符号化データを入力し、上記処理装置を用いて、入力した符号化データのなかから一部を抽出して部分データとし、
上記暗号処理部は、上記処理装置を用いて、上記暗号部分抽出部が抽出した部分データを暗号処理して処理済部分データとし、
上記置換部は、上記処理装置を用いて、上記符号化データのうち、上記暗号部分抽出部が抽出した部分を、上記暗号処理部が暗号処理した処理済部分データで置換して処理済データとし、上記処理装置を用いて、置換した処理済データを出力する
ことを特徴とする。
【発明の効果】
【０００５】
この発明にかかるデータ変換装置によれば、入力した符号化データをすべて暗号処理するのではなく、暗号部分抽出部が抽出した部分データだけを暗号処理するので、暗号処理に必要な資源を節約することができ、効率のよい暗号化を実現できるという効果を奏する。
【発明を実施するための最良の形態】
【０００６】
実施の形態１．
実施の形態１について、図１〜図９を用いて説明する。
【０００７】
図１は、この実施の形態におけるデータ変換装置１００の外観の一例を示す図である。
データ変換装置１００は、システムユニット９１０、ＣＲＴ（Ｃａｔｈｏｄｅ・Ｒａｙ・Ｔｕｂｅ）やＬＣＤ（液晶）の表示画面を有する表示装置９０１、キーボード９０２（Ｋｅｙ・Ｂｏａｒｄ：Ｋ／Ｂ）、マウス９０３、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ・Ｄｉｓｋ・Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。
システムユニット９１０は、コンピュータであり、ファクシミリ機９３２、電話器９３１とケーブルで接続され、また、ローカルエリアネットワーク９４２（ＬＡＮ）、ゲートウェイ９４１を介してインターネット９４０に接続されている。
【０００８】
図２は、この実施の形態におけるデータ変換装置１００のハードウェア資源の一例を示す図である。
図２において、データ変換装置１００は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ・Ｐｒｏｃｅｓｓｉｎｇ・Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、通信装置９１５、表示装置９０１、キーボード９０２、マウス９０３、ＦＤＤ９０４、ＣＤＤ９０５、プリンタ装置９０６、スキャナ装置９０７、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
通信装置９１５、キーボード９０２、スキャナ装置９０７、ＦＤＤ９０４などは、入力部、入力装置の一例である。
また、通信装置９１５、表示装置９０１、プリンタ装置９０６などは、出力部、出力装置の一例である。
【０００９】
通信装置９１５は、ファクシミリ機９３２、電話器９３１、ＬＡＮ９４２等に接続されている。通信装置９１５は、ＬＡＮ９４２に限らず、インターネット９４０、ＩＳＤＮ等のＷＡＮ（ワイドエリアネットワーク）などに接続されていても構わない。インターネット９４０或いはＩＳＤＮ等のＷＡＮに接続されている場合、ゲートウェイ９４１は不用となる。
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００１０】
上記プログラム群９２３には、以下に述べる実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の計算結果」、「〜の処理結果」として説明する情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、以下に述べる実施の形態の説明において説明するフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ・Ｖｅｒｓａｔｉｌｅ・Ｄｉｓｃ）等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００１１】
また、以下に述べる実施の形態の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、以下に述べる「〜部」としてコンピュータを機能させるものである。あるいは、以下に述べる「〜部」の手順や方法をコンピュータに実行させるものである。
【００１２】
図３は、この実施の形態におけるデータ変換装置１００の機能ブロックの構成の一例を示すブロック構成図である。
データ変換装置１００は、原画像データを入力し、入力した原画像データを変換して形式化画像データを生成し、生成した形式化画像データを出力する。
原画像データとは、写真などの画像を表わすデータである。原画像データは、画像を構成する画素の色を、ＲＧＢ（Ｒｅｄ−Ｇｒｅｅｎ−Ｂｌｕｅ：赤緑青）系やＹＣｂＣｒ（輝度色差）系などの表色系（色空間）を用いて表わしたデータである。原画像データは、例えば、ビットマップ形式の画像データである。
形式化画像データとは、原画像データを変換したデータである。形式化画像データは、原画像データが表わす画像と同一の画像を表わすデータであるが、形式化画像データの大きさを小さくするため、変換の過程で一部の情報が捨てられていてもよい。形式化画像データは、例えば、ＪＦＩＦ（ＪＰＥＧ  Ｆｉｌｅ  Ｉｎｔｅｒｃｈａｎｇｅ  Ｆｏｒｍａｔ）形式の画像データである。
【００１３】
この実施の形態におけるデータ変換装置１００が生成する形式化画像データは、所定の暗号鍵で暗号化されている。したがって、暗号鍵に対応する復号鍵を知る者のみが形式化画像データが表わす画像を閲覧することができる。
【００１４】
データ変換装置１００は、原画像入力部１１１、周波数変換部１２１、量子化表記憶部１３１、量子化部１３２、符号化表記憶部１４１、符号化部１４２、暗号部分抽出部１５１、暗号鍵記憶部１５２、暗号化部１５３、置換部１５４、形式化部１６１、形式化画像出力部１７１を有する。
【００１５】
原画像入力部１１１は、ＣＰＵ９１１などの処理装置を用いて、原画像データを入力する。
原画像入力部１１１は、ＣＰＵ９１１などの処理装置を用いて、入力した原画像データを出力する。
【００１６】
周波数変換部１２１は、ＣＰＵ９１１などの処理装置を用いて、原画像入力部１１１が出力した原画像データを入力する。
周波数変換部１２１は、ＣＰＵ９１１などの処理装置を用いて、入力した原画像データを周波数変換して、周波数画像データを生成する。
周波数変換部１２１は、ＣＰＵ９１１などの処理装置を用いて、生成した周波数画像データを出力する。
周波数変換とは、例えば、二次元離散余弦変換（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ、ＤＣＴ）や二次元ウェーブレット（Ｗａｖｅｌｅｔ）変換である。
周波数変換部１２１は、例えば、ＣＰＵ９１１などの処理装置を用いて、入力した原画像データを８×８画素の部分画像に分解し、各部分画像を表わす（１色につき）８×８個のデータを周波数変換して、８×８個のデータを生成する。
【００１７】
量子化表記憶部１３１は、磁気ディスク装置９２０などの記憶装置を用いて、量子化表を記憶する。
量子化表とは、周波数変換部１２１が周波数変換した周波数画像データを、量子化部１３２が量子化するためのテーブルである。量子化表は、量子化テーブルともいう。
量子化表記憶部１３１は、例えば、周波数変換部１２１が周波数変換する単位となる部分画像の画素数に対応して、８×８個の整数を表わすデータを量子化表として記憶する。
【００１８】
量子化部１３２は、ＣＰＵ９１１などの処理装置を用いて、周波数変換部１２１が出力した周波数画像データを入力する。
量子化部１３２は、ＣＰＵ９１１などの処理装置を用いて、量子化表記憶部１３１が記憶した量子化表を入力する。
量子化部１３２は、ＣＰＵ９１１などの処理装置を用いて、入力した周波数画像データを、入力した量子化表に基づいて量子化し、量子化画像データを生成する。
量子化部１３２は、ＣＰＵ９１１などの処理装置を用いて、生成した量子化画像データを出力する。
量子化とは、符号化した画像データの大きさを小さくするため、周波数画像データの情報量を圧縮する処理である。
例えば、量子化部１３２は、量子化画像データを構成する各データが表わす数値を、対応する量子化表のデータが表わす整数で除し、小数点以下を切り捨てて、整数化する。
【００１９】
符号化表記憶部１４１は、磁気ディスク装置９２０などの記憶装置を用いて、符号化表を記憶する。
符号化表とは、量子化部１３２が量子化した量子化画像データを、符号化部１４２が符号化するためのテーブルである。符号化表は、符号化テーブルともいう。
【００２０】
符号化部１４２は、ＣＰＵ９１１などの処理装置を用いて、量子化部１３２が出力した量子化画像データを入力する。
符号化部１４２は、ＣＰＵ９１１などの処理装置を用いて、符号化表記憶部１４１が記憶した符号化表を入力する。
符号化部１４２は、ＣＰＵ９１１などの処理装置を用いて、入力した量子化画像データを、入力した符号化表に基づいて符号化し、符号化画像データを生成する。
符号化部１４２は、ＣＰＵ９１１などの処理装置を用いて、生成した符号化画像データを出力する。
符号化とは、量子化画像データをビット列（ストリームデータ）に変換し、変換したビット列を、対応する他のビット列に置き換えて、ビット列の長さを短くする（圧縮）処理である。
符号化には、例えば、エントロピー符号を用いたエントロピー符号化がある。エントロピー符号化は、ビット列の出現確率を考慮して、出現確率の高いビット列には短いビット列を対応させ、出現確率の低いビット列には長いビット列を対応させる。
【００２１】
例えば、静的ハフマン符号を用いる符号化方式の場合、符号化部１４２は、ＣＰＵ９１１などの処理装置を用いて、入力した量子化画像データを分析してビット列の出現確率を算出し、算出した出現確率に基づいてハフマン木を生成する。符号化表記憶部１４１は、磁気ディスク装置９２０などの記憶装置を用いて、符号化部１４２が生成したハフマン木を表わすデータを符号化表として記憶する。符号化表記憶部１４１は、ＣＰＵ９１１などの処理装置を用いて、符号化部１４２が記憶した符号化表が表わすハフマン木に基づいて、量子化画像データを符号化する。静的ハフマン符号は、エントロピー符号の一種である。
あるいは、動的ハフマン符号を用いる符号化方式の場合、符号化表記憶部１４１は、最初に、空のハフマン木を表わすデータを符号化表として記憶する。符号化部１４２は、入力した量子化画像データを、符号化表記憶部１４１が記憶したデータが表わすハフマン木に基づいて符号化しながら、ハフマン木を更新する。動的ハフマン符号は、エントロピー符号の一種である。
【００２２】
なお、あらかじめ定めたハフマン木を表わすデータを、符号化表記憶部１４１が符号化表として記憶しておいてもよい。その場合、符号化部１４２が入力した量子化画像データにかかわらず、符号化表記憶部１４１があらかじめ記憶したデータが表わすハフマン木を用いて、符号化部１４２が量子化画像データを符号化する。
【００２３】
また、（静的）算術符号を用いる符号化方式の場合、符号化部１４２は、ＣＰＵ９１１などの処理装置を用いて、入力した量子化画像データを分析してビット列の出現確率を算出する。符号化表記憶部１４１は、磁気ディスク装置９２０などの記憶装置を用いて、符号化部１４２が算出した出現確率を表わすデータを符号化表として記憶する。符号化表記憶部１４１は、ＣＰＵ９１１などの処理装置を用いて、符号化部１４２が記憶した符号化表が表わす出現確率に基づいて、量子化画像データを符号化する。（静的）算術符号は、エントロピー符号の一種である。
【００２４】
あるいは、適応型算術符号を用いる符号化方式の場合、符号化表記憶部１４１は、磁気ディスク装置９２０などの記憶装置を用いて、統計的モデルを表わすデータを符号化表として記憶する。統計的モデルとは、その時点におけるビット列の出現確率の推定値と、出現したビット列とに基づいて、ビット列の出現確率の推定値を更新するためのモデルである。符号化部１４２は、それまでに求めた出現確率の推定値に基づいて、入力した量子化画像データを符号化しながら、符号化表記憶部１４１が記憶したデータが表わす統計的モデルに基づいて、出現確率の推定値を更新する。適応型算術符号は、エントロピー符号の一種である。
【００２５】
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、符号化部１４２が出力した符号化画像データを入力する。符号化画像データは、符号化データの一例である。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、入力した符号化画像データのなかから暗号化する部分を抽出して、部分データを生成する。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、生成した部分データを出力する。
【００２６】
図４は、この実施の形態における暗号部分抽出部１５１が抽出する部分データの一例を示す図である。
【００２７】
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、符号化画像データ５０１を入力する。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、入力した符号化画像データ５０１を、複数のブロック５１１〜５１３に分割する。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、分割した複数のブロック５１１〜５１３それぞれにおける抽出する部分の割合が、符号化画像データ５０１の先頭に近いブロックほど高く、先頭から遠くなるほど低くなるように、部分データを抽出する。
例えば、ブロック５１１における抽出する部分の割合が１／２、ブロック５１２における抽出する部分の割合が１／４、ブロック５１３における抽出する部分の割合が１／８というように、先頭から遠くなるほど抽出する部分の割合が下がっていく。
【００２８】
また、暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、分割した複数のブロック５１１〜５１３それぞれのなかで、抽出する部分が一様に分布するように、部分データを抽出する。
例えば、ブロック５１２から１／４の部分を抽出する場合、連続したひとかたまりのデータを抽出するのではなく、ブロック５１２のなかのあちこちから少しずつデータを抽出して、全体の抽出割合が１／４になるようにする。
【００２９】
そのため、暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、分割したブロック５１１〜５１３を、更に小さい小ブロック５２１〜５３０に分割する。
例えば、暗号部分抽出部１５１は、ブロック５１１を小ブロック５２１〜５２４に分割する。小ブロック５２１〜５２４の長さは等しい。同様に、暗号部分抽出部１５１は、ブロック５１２を小ブロック５２５〜５２８に分割する。小ブロック５２５〜５２８の長さは等しく、小ブロック５２１〜５２４の長さより長い。
すなわち、暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、分割した複数の小ブロック５２１〜５３０それぞれの長さが、符号化画像データ５０１の先頭に近い小ブロックほど短く、先頭から遠くなるほど長くなるように、分割する。
例えば、暗号部分抽出部１５１は、小ブロック５２１〜５２４の長さが１６バイト、小ブロック５２５〜５２８の長さが３２バイト、小ブロック５２９〜５３０の長さが６４バイトとなるように、分割する。
【００３０】
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、分割した複数の小ブロック５２１〜５３０それぞれのなかで、所定の長さの部分を抜き出して、抽出部分５４１〜５５０とする。
例えば、暗号部分抽出部１５１は、分割した小ブロック５２１〜５３０それぞれにおいて、先頭から８バイトのデータを抜き出す。
【００３１】
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、抜き出した部分を結合して、部分データ５６１とする。
これにより、例えば、ブロック５１１から１／２、ブロック５１２から１／４、ブロック５１３から１／８を抽出したデータが、部分データとなる。
抽出した部分の割合は、符号化画像データ５０１の先頭に近いほど高い。また、各ブロック５１１〜５１３内では、抽出した部分が一様に分布する。
【００３２】
なお、これは一例であり、分割するブロックの数・長さ、抜き出す抽出部分の位置・長さは、これに限るものではない。
また、符号化画像データ５０１から部分データ５６１が得られるのであれば、処理の内容は必ずしもここで説明した手順によらなくてもよい。
ただし、抜き出す抽出部分の長さは、暗号化部１５３が暗号化する暗号化ブロックの長さよりも短いほうが好ましい。
【００３３】
図３に戻り、データ変換装置１００の機能ブロックの説明を続ける。
【００３４】
暗号鍵記憶部１５２は、磁気ディスク装置９２０などの記憶装置を用いて、暗号鍵を記憶する。暗号鍵は、暗号部分抽出部１５１が抽出した部分データを、暗号化部１５３が暗号化するために使用する鍵である。
【００３５】
暗号化部１５３は、ＣＰＵ９１１などの処理装置を用いて、暗号部分抽出部１５１が出力した部分データを入力する。
暗号化部１５３は、ＣＰＵ９１１などの処理装置を用いて、暗号鍵記憶部１５２が記憶した暗号鍵を入力する。
暗号化部１５３は、ＣＰＵ９１１などの処理装置を用いて、入力した部分データを、入力した暗号鍵で暗号化して、暗号化部分データを生成する。
暗号化部１５３は、ＣＰＵ９１１などの処理装置を用いて、生成した暗号化部分データを出力する。
暗号化部１５３は、暗号処理部の一例である。暗号化は、暗号処理の一例である。暗号化部分データは、処理済部分データの一例である。
【００３６】
暗号化部１５３が使用する暗号化の方式は、任意でよい。例えば、ＡＥＳ（Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）やＭＩＳＴＹ（登録商標）などの共通鍵暗号方式でもよいし、ＲＳＡ（Ｒｉｖｅｓｔ  Ｓｈａｍｉｒ  Ａｄｌｅｍａｎ）や楕円曲線暗号などの公開鍵暗号方式でもよい。
ただし、暗号化部１５３が使用する暗号化の方式は、入力した部分データの長さと、出力する暗号化部分データの長さとが等しい暗号方式であるものとする。
【００３７】
置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、符号化部１４２が出力した符号化画像データを入力する。
置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、暗号化部１５３が出力した暗号化部分データを入力する。
置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、入力した符号化画像データのうち、暗号部分抽出部１５１が部分データを抽出した部分と同一の部分を、入力した暗号化部分データで置換して、暗号化画像データを生成する。暗号化画像データは、処理済データの一例である。
置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、生成した暗号化画像データを出力する。
【００３８】
図５は、この実施の形態における置換部１５４が生成する暗号化画像データの一例を示す図である。
置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、暗号化部分データ５７１を入力する。
置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、入力した暗号化部分データ５７１を分割して、置換部分５８１〜５９０とする。置換部１５４が分割する置換部分５８１〜５９０の長さは、暗号部分抽出部１５１が抜き出した抽出部分５４１〜５５０の長さと等しい。
置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、符号化画像データ５０１を入力する。
置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、入力した符号化画像データ５０１のうち、暗号部分抽出部１５１が抽出した部分（網掛け部分）を、分割した置換部分５８１〜５９０で置換して、暗号化画像データ６０１とする。
ここで、暗号化部分データ５７１の長さは、暗号部分抽出部１５１が抽出した部分データ５６１の長さと等しいので、置換部１５４は、暗号部分抽出部１５１が部分データを抽出した部分と同一の部分を過不足なく置換する。すなわち、置換部１５４が置換する前の符号化画像データ５０１と、置換部１５４が置換した後の暗号化画像データ６０１とは、情報量が等しく、長さも等しい。
このように、置換部１５４は、符号化画像データのうち、部分データに相当する部分を、対応する暗号化部分データに置き換えて、暗号化画像データを生成する。
【００３９】
図３に戻り、データ変換装置１００の機能ブロックの説明を続ける。
【００４０】
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、置換部１５４が出力した暗号化画像データを入力する。
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、量子化表記憶部１３１が記憶した量子化表を入力する。
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、符号化表記憶部１４１が記憶した符号化表を入力する。
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、入力した暗号化画像データと、入力した量子化表と、入力した符号化表とに基づいて、形式化画像データを生成する。
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、生成した形式化画像データを出力する。
形式化画像データとは、あらかじめ定めたフォーマットにしたがって生成したデータである。あらかじめ定めたフォーマットは、例えば、ＪＦＩＦ形式のような既存のフォーマットでもよいし、独自に定めたフォーマットであってもよい。
ＪＦＩＦ形式のような既存のフォーマットを使用する場合、形式化部１６１は、入力した暗号化画像データを、符号化画像データの代わりとして、形式化画像データを生成する。これにより、既存のフォーマットの符号化画像データを閲覧できる閲覧装置を用いて、形式化部１６１が生成した形式化画像データを閲覧することができる。ただし、暗号化画像データを符号化画像データの代わりとしているので、これを解読しなければ正しい画像を閲覧できない。
【００４１】
形式化画像出力部１７１は、ＣＰＵ９１１などの処理装置を用いて、形式化部１６１が出力した形式化画像データを入力する。
形式化画像出力部１７１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データを出力する。
【００４２】
図６は、ＪＦＩＦ形式の形式化画像データの一例を示す図である。
【００４３】
形式化画像データは、マーカＳＯＩ、フレーム、マーカＥＯＩの順でデータを結合したデータである。
マーカＳＯＩは、２バイトのデータ（Ｘ‘ＦＦＤ８’）であり、形式化画像データの開始を示す。ここで、Ｘ‘…’は１６進数を示す。
マーカＥＯＩは、２バイトのデータ（Ｘ‘ＦＦＤ９’）であり、形式化画像データの終了を示す。
フレームは、表定義、フレームヘッダ、走査の順でデータを結合したデータである。表定義はなくてもよい。走査は２以上あってもよい。
表定義は、量子化に使用した量子化表や、符号化に使用した符号化表などを定義するデータである。
表定義のうち、量子化表を定義する部分は、マーカＤＱＴ、長さ、量子化表の順でデータを結合したデータである。
マーカＤＱＴは、２バイトのデータ（Ｘ‘ＦＦＤＢ’）であり、以下のデータが量子化表の定義であることを表わす。
長さは、２バイトのデータであり、量子化表のバイト数＋２を表わす。
量子化表は、任意長のデータであり、量子化に使用した量子化表を表わす。
表定義のうち、符号化表を定義する部分は、マーカＤＨＴ、長さ、符号化表の順でデータを結合したデータである。
マーカＤＨＴは、２バイトのデータ（Ｘ‘ＦＦＣ４’）であり、以下のデータがハフマン符号化に用いる符号化表の定義であることを表わす。
長さは、２バイトのデータであり、符号化表のバイト数＋２を表わす。
符号化表は、任意長のデータであり、符号化に使用した符号化表を表わす。
表定義のなかで、量子化表を定義する部分と符号化表を定義する部分との順序は、どちらが先でも構わない。表定義は、どちらか一方のみを含むものでもよいし、他の定義を含んでもよい。また、複数の量子化表や複数の符号化表を定義してもよい。
フレームヘッダは、その形式化画像データが表わす画像の特徴などを表わす。
フレームヘッダは、マーカＳＯＦ０、長さ、引数の順でデータを結合したデータである。
マーカＳＯＦ０は、２バイトのデータ（Ｘ‘ＦＦＣ０’）であり、フレームヘッダの開始を示す。また、マーカＳＯＦ０は、そのフレームが非差分フレームであり、符号化の方式がハフマン符号化であり、周波数変換の方式が基本ＤＣＴであることを表わす。
長さは、２バイトのデータであり、引数のバイト数＋２を表わす。
引数は、任意長のデータであり、画像の精度や画素数などを表わす。
走査は、走査ヘッダ、符号化画像データの順でデータを結合したデータである。
走査ヘッダは、マーカＳＯＳ、長さ、引数の順でデータを結合したデータである。
マーカＳＯＳは、２バイトのデータ（Ｘ‘ＦＦＤＡ’）であり、走査ヘッダの開始を示す。
長さは、２バイトのデータであり、引数のバイト数＋２を表わす。
引数は、任意長のデータであり、画像の成分数や使用する符号化表の選択などを表わす。
符号化画像データは、符号化された画像データである。なお、マーカと区別するため、符号化画像データのなかにＸ‘ＦＦ’が現れる場合には、その次にＸ‘００’が挿入される。
従来のデータ変換装置が生成する形式化画像データでは、符号化画像データとして符号化部が出力する符号化画像データを使用する。
【００４４】
図７は、この実施の形態における形式化部１６１が生成する形式化画像データの一例を示す図である。
この例において、形式化部１６１は、図６で説明したＪＦＩＦ形式の形式化画像データを生成するものとする。しかし、上述したように、形式化部１６１は、他の従来形式の形式化画像データを生成してもよいし、独自の形式あるいは新規な形式の形式化画像データを生成してもよい。
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、量子化表記憶部１３１が記憶した量子化表と、符号化表記憶部１４１が記憶した符号化表とを入力し、入力した量子化表と、入力した符号化表とを含む表定義を生成する。
また、形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、置換部１５４が出力した暗号化画像データを入力し、入力した暗号化画像データを符号化画像データとして含む走査を生成する。
なお、従来の形式化画像データと同じ形式となるよう、暗号化画像データのなかにＸ‘ＦＦ’が現れる場合には、形式化部１６１がその次にＸ‘００’を挿入する。
【００４５】
形式化部１６１が生成する形式化画像データに含まれる暗号化画像データは、部分的に暗号化されている（図の斜線部分）。暗号化画像データの暗号化されている部分は、全体に散らばり、均等に分かれているが、先頭に近い部分ほど暗号化されている部分の割合が高い。
【００４６】
次に、動作について説明する。
【００４７】
図８は、この実施の形態における暗号部分抽出部１５１が、部分データを生成する部分データ抽出処理の流れの一例を示すフローチャート図である。
【００４８】
入力工程Ｓ１１において、暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、符号化部１４２が出力した符号化画像データを入力する。
暗号部分抽出部１５１は、ＲＡＭ９１４などの記憶装置を用いて、入力した符号化画像データを記憶する。
【００４９】
初期設定工程Ｓ１２において、暗号部分抽出部１５１は、ＲＡＭ９１４などの記憶装置を用いて、抽出位置として１を記憶する。
暗号部分抽出部１５１は、ＲＡＭ９１４などの記憶装置を用いて、抽出ブロック数として０を記憶する。
暗号部分抽出部１５１は、ＲＡＭ９１４などの記憶装置を用いて、ブロック長としてあらかじめ定めた初期値ｂ０を記憶する。
暗号部分抽出部１５１は、ＲＡＭ９１４などの記憶装置を用いて、部分データとして長さ０のデータを記憶する。
【００５０】
抽出工程Ｓ１３において、暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ１１で記憶した符号化画像データのなかで、初期設定工程Ｓ１２（または後述する位置更新工程Ｓ１５）で記憶した抽出位置にあたる位置からあらかじめ定めたバイト数ｗのデータを抜き出して、抽出部分とする。
【００５１】
結合工程Ｓ１４において、暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ１２（または結合工程Ｓ１４）で記憶した部分データの後ろに、抽出工程Ｓ１３で抜き出した抽出部分を結合する。
暗号部分抽出部１５１は、ＲＡＭ９１４などの記憶装置を用いて、結合したデータを、新たな部分データとして記憶する。
【００５２】
位置更新工程Ｓ１５において、暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ１２（または位置更新工程Ｓ１５）で記憶した抽出位置に、初期設定工程Ｓ１２（または後述するブロック長更新工程Ｓ１９）で記憶したブロック長を加える。
暗号部分抽出部１５１は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな抽出位置として記憶する。
【００５３】
終了判定工程Ｓ１６において、暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、位置更新工程Ｓ１５で記憶した新たな抽出位置を、入力工程Ｓ１１で記憶した符号化画像データの長さと比較する。
抽出位置のほうが大きい場合、出力工程Ｓ２０へ進む。
符号化画像データの長さのほうが大きい場合、抽出計数工程Ｓ１７へ進む。
【００５４】
抽出計数工程Ｓ１７において、暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ１２（または抽出計数工程Ｓ１７）で記憶した抽出ブロック数に１を加える。
暗号部分抽出部１５１は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな抽出ブロック数として記憶する。
【００５５】
更新判定工程Ｓ１８において、暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、抽出計数工程Ｓ１７で記憶した新たな抽出ブロック数を、あらかじめ定めた抽出数ｃと比較する。
抽出ブロック数のほうが大きい場合、ブロック長更新工程Ｓ１９へ進む。
抽出数ｃのほうが大きい場合、抽出工程Ｓ１３に戻る。
【００５６】
ブロック長更新工程Ｓ１９において、暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ１２（またはブロック長更新工程Ｓ１９）で記憶したブロック長にあらかじめ定めた数ｄを加える。
暗号部分抽出部１５１は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たなブロック長として記憶する。
暗号部分抽出部１５１は、ＲＡＭ９１４などの記憶装置を用いて、新たな抽出ブロック数として０を記憶する。
その後、抽出工程Ｓ１３に戻る。
【００５７】
出力工程Ｓ２０において、暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、記憶した部分データを出力する。
【００５８】
以上のようにして、暗号部分抽出部１５１は、部分データを生成する。
例えば、ブロック長の初期値ｂ０を４バイト、ブロック長の増分ｄを４バイト、抜き出すデータの長さｗを４バイト、所定の抽出数ｃを２５とすれば、暗号部分抽出部１５１は、符号化画像データの先頭から１００バイトの部分について、すべてのデータを抽出する。また、符号化画像データの１０１バイト目から３００バイト目までの部分については、抽出割合が１／２となる。符号化画像データの３０１バイト目から６００バイト目までの部分については、抽出割合が１／３となる。
【００５９】
なお、ここで説明した処理の手順は一例であり、暗号部分抽出部１５１は他の手順によって部分データを生成してもよい。
【００６０】
図９は、この実施の形態における置換部１５４が、暗号化画像データを生成する部分データ置換処理の流れの一例を示すフローチャート図である。
【００６１】
入力工程Ｓ３１において、置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、符号化部１４２が出力した符号化画像データを入力する。
置換部１５４は、ＲＡＭ９１４などの記憶装置を用いて、入力した符号化画像データを記憶する。
置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、暗号化部１５３が出力した暗号化部分データを入力する。
置換部１５４は、ＲＡＭ９１４などの記憶装置を用いて、入力した暗号化部分データを記憶する。
【００６２】
初期設定処理Ｓ３２において、置換部１５４は、ＲＡＭ９１４などの記憶装置を用いて、置換位置として１を記憶する。
置換部１５４は、ＲＡＭ９１４などの記憶装置を用いて、置換ブロック数として０を記憶する。
置換部１５４は、ＲＡＭ９１４などの記憶装置を用いて、ブロック長としてあらかじめ定めた初期値ｂ０を記憶する。初期値ｂ０は、部分データ抽出処理の初期設定工程Ｓ１２で、暗号部分抽出部１５１が記憶するものと同一である。
置換部１５４は、ＲＡＭ９１４などの記憶装置を用いて、抽出位置として１を記憶する。
【００６３】
抽出工程Ｓ３３において、置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ３１で記憶した暗号化部分データのなかで、初期設定工程Ｓ３２（または後述する抽出位置更新工程Ｓ３４）で記憶した抽出位置からあらかじめ定めたバイト数ｗのデータを抜き出して、置換部分とする。バイト数ｗは、部分データ抽出処理の抽出工程Ｓ１３で暗号部分抽出部１５１が抜き出す抽出部分のバイト数と同一である。
【００６４】
抽出位置更新工程Ｓ３４において、置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ３２（または抽出位置更新工程Ｓ３４）で記憶した抽出位置に、あらかじめ定めたバイト数ｗを加える。
置換部１５４は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな抽出位置として記憶する。
【００６５】
置換工程Ｓ３５において、置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ３１（または置換工程Ｓ３５）で記憶した符号化画像データのなかで、初期設定工程Ｓ３２（または後述する置換位置更新工程Ｓ３６）で記憶した置換位置からあらかじめ定めたバイト数ｗのデータを、抽出工程Ｓ３３で抜き出した置換部分で置き換える。
置換部１５４は、ＲＡＭ９１４などの記憶装置を用いて、置き換えた結果を、新たな符号化画像データとして記憶する。
【００６６】
置換位置更新工程Ｓ３６において、置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ３２（または置換位置更新工程Ｓ３６）で記憶した置換位置に、初期設定工程Ｓ３２（または後述するブロック長更新工程Ｓ４０）で記憶したブロック長を加える。
置換部１５４は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな置換位置として記憶する。
【００６７】
終了判定工程Ｓ３７において、置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、抽出位置更新工程Ｓ３４で記憶した新たな抽出位置を、入力工程Ｓ３１で記憶した暗号化部分データの長さと比較する。
抽出位置のほうが大きい場合、出力工程Ｓ４１へ進む。
暗号化部分データの長さのほうが大きい場合、置換計数工程Ｓ３８へ進む。
【００６８】
置換計数工程Ｓ３８において、置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ３２（または置換計数工程Ｓ３８）で記憶した置換ブロック数に、１を加える。
置換部１５４は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな置換ブロック数として記憶する。
【００６９】
更新判定工程Ｓ３９において、置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、置換計数工程Ｓ３８で記憶した新たな置換ブロック数を、あらかじめ定めた抽出数ｃと比較する。抽出数ｃは、部分データ抽出処理の更新判定工程Ｓ１８で、暗号部分抽出部１５１が比較する抽出数と同一である。
抽出ブロック数のほうが大きい場合、ブロック長更新工程Ｓ４０へ進む。
抽出数ｃのほうが大きい場合、抽出工程Ｓ３３に戻る。
【００７０】
ブロック長更新工程Ｓ４０において、置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ３２（またはブロック長更新工程Ｓ４０）で記憶したブロック長にあらかじめ定めた数ｄを加える。数ｄは、部分データ抽出処理のブロック長更新工程Ｓ１９で暗号部分抽出部１５１が加える数と同一である。
置換部１５４は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たなブロック長として記憶する。
置換部１５４は、ＲＡＭ９１４などの記憶装置を用いて、新たな抽出ブロック数として０を記憶する。
その後、抽出工程Ｓ３３に戻る。
【００７１】
出力工程Ｓ４１において、置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、置換工程Ｓ３５で記憶した符号化画像データを、暗号化画像データとして出力する。
【００７２】
以上のような処理により、置換部１５４は、図５で説明したような暗号化画像データを生成できる。
なお、ここで説明した処理の手順は一例であり、置換部１５４は他の手順によって暗号化画像データを生成してもよい。
【００７３】
エントロピー符号を用いて符号化されたデータは、先頭から順に処理しなければ、復号することができない。
例えば、ハフマン符号を用いた場合、符号語のビット長が可変なので、先頭から順に処理しなければ、符号語の切れ目がどこにあるかわからず、復号できない。
また、適応型算術符号を用いた場合、復号したデータに基づいて、確率間隔が変わっていくので、先頭から順に処理しなければ、確率推定をすることができず、復号できない。
【００７４】
したがって、符号化画像データの先頭部分のみを暗号化しても、これを解読する権限（すなわち、暗号鍵に対応する復号鍵）を持たない者が、画像を閲覧するのを防ぐ効果がある。
【００７５】
しかし、例えば、ＪＦＩＦ形式において、周波数変換部１２１が部分画像（８×８画素）を周波数変換し、量子化部１３２が量子化した量子化画像データには０が多いので、符号化部１４２は、０の連続をランレングス符号化したデータをハフマン符号により符号化する場合がある。
その場合、符号化画像データを各部分画像についてのデータ（６４バイト未満）に分割すると、それぞれのデータの最後は、そのあとが全部０であることを示す特別なシンボル（ＥＯＢ）となる場合が多い。
そのため、不正に画像を閲覧しようとする閲覧者は、符号化画像データのうち暗号化されていない部分からＥＯＢに対応する符号語を探し、その次から、部分画像についてのデータが始まると仮定して復号を試みる。
ＥＯＢは出現する確率が高いので、通常、ビット長の短い符号語を割り当てる。
したがって、他のデータに割り当てた符号語のなかに、ＥＯＢに対応する符号語と同じビットパターンが現れる場合が多くあり、不正な閲覧者は、そのなかからどれが本当のＥＯＢか判別しなければ、復号は成功しない。
例えば、復号して得られた部分画像についてのデータ（正しく復号していれば、量子化画像データの一部と同じになる）が６４バイトより大きくなった場合には、最初の仮定が間違っていたことになる。
不正な閲覧者は、このようにしてＥＯＢの候補についてしらみつぶしに調べていけば、どれが本当のＥＯＢかを判別できる。
【００７６】
不正な閲覧者にこのような判別をさせないためには、符号化画像データのうち暗号化されていない部分の長さを短くすればよい。
そうすれば、ＥＯＢの仮定が正しいか否かを不正な閲覧者が判別するには、次の暗号化された部分を解読する必要が生じるので、暗号を解読しなければ画像を閲覧できなくなる。
【００７７】
この実施の形態におけるデータ変換装置１００は、分割した複数のブロックそれぞれのなかで抽出する部分（すなわち、暗号化する部分）が一様に分布するように、部分データを抽出するので、抽出する部分と抽出する部分との間の暗号化されない部分の長さがほぼ一定となる。したがって、不正な閲覧者は、暗号を解読せずに画像を閲覧することができない。
【００７８】
同様に、算術符号化された符号化データの途中から復号しようとする不正な閲覧者は、その時点でのＭＰＳ（Ｍｏｒｅ  Ｐｒｏｂａｂｌｅ  Ｓｙｍｂｏｌ：優勢シンボル）が０か１か、確率推定状態がどれかなどを仮定して、復号を試みる。
仮定が正しいかどうかを判別するには、ある程度の長さを復号してみる必要がある。
【００７９】
したがって、暗号化する部分を一様に分布させれば、仮定が正しいか否かを判別できず、不正な閲覧者が暗号を解読せずに画像を閲覧することができない。
【００８０】
また、不正な閲覧者が、仮定が正しいかどうかを判別するために復号してみなければならない長さは、先頭から遠くなるほど長くなる。これは、先頭に近い部分を正しく復号できないことの影響により、誤差が蓄積するからである。
したがって、符号化データの先頭から遠い部分については、先頭に近い部分よりも、暗号化されない連続した部分の長さが長くても、不正な閲覧者が暗号を解読せずに画像を閲覧することを防ぐことができる。
【００８１】
この実施の形態におけるデータ変換装置１００は、分割した複数のブロックそれぞれにおける抽出する部分の割合が、先頭に近いブロックほど高く、先頭から遠くなるほど低くなるように部分データを抽出するので、暗号化すべき部分データの長さをできるだけ短くすることができる。
これにより、暗号処理に必要な資源（ＣＰＵ９１１などの処理装置の処理量やＲＡＭ９１４などの記憶装置の消費量）が少なくて済む。
したがって、不正な閲覧者による画像の閲覧を、効率よく防ぐことができる。
【００８２】
この実施の形態におけるデータ変換装置１００は、
情報を処理するＣＰＵ９１１などの処理装置と、暗号部分抽出部１５１と、暗号処理部（暗号化部１５３）と、置換部１５４とを有することを特徴とする。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、符号化データ（符号化画像データ）を入力し、ＣＰＵ９１１などの処理装置を用いて、入力した符号化データ（符号化画像データ）のなかから一部を抽出して部分データとすることを特徴とする。
暗号処理部（暗号化部１５３）は、ＣＰＵ９１１などの処理装置を用いて、暗号部分抽出部１５１が抽出した部分データを暗号処理（暗号化）して処理済部分データ（暗号化部分データ）とすることを特徴とする。
置換部１５４は、ＣＰＵ９１１などの処理装置を用いて、符号化データ（符号化画像データ）のうち、暗号部分抽出部１５１が部分データを抽出した部分と同一の部分を、暗号処理部（暗号化部１５３）が暗号処理（暗号化）した処理済部分データ（暗号化部分データ）で置換して処理済データ（暗号化画像データ）とし、ＣＰＵ９１１などの処理装置を用いて、置換した処理済データ（暗号化画像データ）を出力することを特徴とする。
【００８３】
この実施の形態におけるデータ変換装置１００によれば、入力した符号化データをすべて暗号処理するのではなく、暗号部分抽出部１５１が抽出した部分データだけを暗号処理するので、暗号処理に必要な資源を節約することができ、効率のよい暗号化を実現できるという効果を奏する。
【００８４】
この実施の形態におけるデータ変換装置１００は、以下の点を特徴とする。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、入力した符号化データ（符号化画像データ）を複数のブロックに分割し、ＣＰＵ９１１などの処理装置を用いて、分割した複数のブロックそれぞれのなかで抽出する部分が一様に分布するように、部分データを抽出することを特徴とする。
【００８５】
この実施の形態におけるデータ変換装置１００によれば、暗号部分抽出部１５１が抽出する部分が一様に分布するよう部分データを抽出するので、処理済データのなかに、暗号処理していない連続した部分の長さが短くなり、暗号処理する部分が少なくても、暗号を解読しなければ符号化データを利用できないという効果を奏する。
【００８６】
この実施の形態におけるデータ変換装置１００は、以下の点を特徴とする。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、分割した複数のブロックそれぞれにおける抽出する部分の割合が、先頭に近いブロックほど高くなるよう、部分データを抽出することを特徴とする。
【００８７】
この実施の形態におけるデータ変換装置１００によれば、暗号部分抽出部１５１が抽出する部分の割合が、先頭に近いブロックほど高く、先頭から遠くなるほど低くなるので、抽出する部分データの長さが短くなり、暗号処理に必要な資源を節約でき、効率のよい暗号化を実現できるという効果を奏する。
【００８８】
この実施の形態におけるデータ変換装置１００は、以下の点を特徴とする。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、入力した符号化データ（符号化画像データ）を複数のブロックに分割し、ＣＰＵ９１１などの処理装置を用いて、分割した複数のブロックそれぞれのなかで所定の長さの部分を部分データとして抽出することを特徴とする。
【００８９】
この実施の形態におけるデータ変換装置１００によれば、暗号部分抽出部１５１が分割した複数のブロックのなかから所定の長さの部分を部分データとして抽出するので、抽出する部分が一様に分布し、効率のよい暗号化を実現できるという効果を奏する。
【００９０】
この実施の形態におけるデータ変換装置１００は、以下の点を特徴とする。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、分割した複数のブロックそれぞれの長さが、先頭に近いブロックほど短くなるよう、符号化データ（符号化画像データ）を分割することを特徴とする。
【００９１】
この実施の形態におけるデータ変換装置１００によれば、暗号部分抽出部１５１が分割した複数のブロックそれぞれの長さが先頭に近いブロックほど短いので、暗号部分抽出部１５１が抽出する部分の割合が、先頭に近いブロックほど高く、先頭から遠くなるほど低くなり、効率のよい暗号処理を実現できるという効果を奏する。
【００９２】
この実施の形態におけるデータ変換装置１００は、更に、情報を記憶する磁気ディスク装置９２０などの記憶装置と、周波数変換部１２１と、量子化表記憶部１３１と、量子化部１３２と、符号化表記憶部１４１と、符号化部１４２と、形式化部１６１とを有することを特徴とする。
周波数変換部１２１は、ＣＰＵ９１１などの処理装置を用いて、原画像データを入力し、ＣＰＵ９１１などの処理装置を用いて、入力した原画像データを周波数変換して周波数画像データとすることを特徴とする。
量子化表記憶部１３１は、磁気ディスク装置９２０などの記憶装置を用いて、量子化表を記憶することを特徴とする。
量子化部１３２は、ＣＰＵ９１１などの処理装置を用いて、周波数変換部１２１が周波数変換した周波数画像データを、量子化表記憶部１３１が記憶した量子化表に基づいて量子化して量子化画像データとすることを特徴とする。
符号化表記憶部１４１は、磁気ディスク装置９２０などの記憶装置を用いて、符号化表を記憶することを特徴とする。
符号化部１４２は、ＣＰＵ９１１などの処理装置を用いて、量子化部１３２が量子化した量子化画像データを、符号化表記憶部１４１が記憶した符号化表に基づいて符号化して符号化画像データとすることを特徴とする。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、符号化部１４２が符号化した符号化画像データを符号化データとして入力することを特徴とする。
形式化部１６１は、置換部１５４が出力した処理済データを暗号化画像データとし、ＣＰＵ９１１などの処理装置を用いて、暗号化画像データと量子化表記憶部１３１が記憶した量子化表と符号化表記憶部１４１が記憶した符号化表とに基づいて、形式化画像データを生成し、ＣＰＵ９１１などの処理装置を用いて、生成した形式化画像データを出力することを特徴とする。
【００９３】
この実施の形態におけるデータ変換装置１００によれば、原画像データから、ＪＦＩＦ形式などの形式に形式化され、暗号化された形式化画像データを生成するので、暗号を解読しなければ画像を閲覧できないようにすることができるという効果を奏する。
【００９４】
この実施の形態におけるデータ変換装置１００は、以下の点を特徴とする。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、エントロピー符号化されたデータを符号化データ（符号化画像データ）として入力することを特徴とする。
【００９５】
この実施の形態におけるデータ変換装置１００によれば、エントロピー符号化されたデータの一部を抽出して暗号処理するので、暗号処理する部分が少なくても、暗号を解読しなければ符号化データを利用できないという効果を奏する。
【００９６】
この実施の形態におけるデータ変換装置１００は、以下の点を特徴とする。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、ハフマン符号化されたデータを符号化データ（符号化画像データ）として入力することを特徴とする。
【００９７】
この実施の形態におけるデータ変換装置１００によれば、ハフマン符号化されたデータの一部を抽出して暗号処理するので、暗号処理する部分が少なくても、暗号を解読しなければ符号化データを利用できないという効果を奏する。
【００９８】
この実施の形態におけるデータ変換装置１００は、以下の点を特徴とする。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、算術符号化されたデータを符号化データとして入力することを特徴とする。
【００９９】
この実施の形態におけるデータ変換装置１００によれば、算術符号化されたデータの一部を抽出して暗号処理するので、暗号処理する部分が少なくても、暗号を解読しなければ符号化データを利用できないという効果を奏する。
【０１００】
この実施の形態におけるデータ変換装置１００がデータを変換するデータ変換方法は、
情報を処理するＣＰＵ９１１などの処理装置を有するデータ変換装置がデータを変換するデータ変換方法において、
ＣＰＵ９１１などの処理装置が、符号化データ（符号化画像データ）を入力し、
ＣＰＵ９１１などの処理装置が、入力した符号化データ（符号化画像データ）のなかから一部を抽出して部分データとし（部分データ抽出処理）、
ＣＰＵ９１１などの処理装置が、抽出した部分データを暗号処理（暗号化）して処理済部分データ（暗号化部分データ）とし、
ＣＰＵ９１１などの処理装置が、符号化データ（符号化画像データ）のうち、抽出した部分を、暗号処理（暗号化）した処理済部分データ（暗号化部分データ）で置換して処理済データ（暗号化画像データ）とし（部分データ置換処理）、
ＣＰＵ９１１などの処理装置が、置換した処理済データ（暗号化画像データ）を出力することを特徴とする。
【０１０１】
この実施の形態におけるデータ変換方法によれば、入力した符号化データをすべて暗号処理するのではなく、暗号部分抽出部１５１が抽出した部分データだけを暗号処理するので、暗号処理に必要な資源を節約することができ、効率のよい暗号化を実現できるという効果を奏する。
【０１０２】
この実施の形態におけるデータ変換装置１００は、情報を処理するＣＰＵ９１１などの処理装置を有するコンピュータを、データ変換装置として機能させるプログラムを、コンピュータが実行することにより、実現することができる。
【０１０３】
この実施の形態におけるデータ変換装置１００としてコンピュータを機能させるプログラムによれば、入力した符号化データをすべて暗号処理するのではなく、暗号部分抽出部１５１が抽出した部分データだけを暗号処理するので、暗号処理に必要な資源を節約できるデータ変換装置１００を実現することができるという効果を奏する。
【０１０４】
以上説明したデータ変換装置１００がデータを変換するデータ変換方法は、
算術符号（またはハフマン符号などを含むエントロピー符号）で符号化されたデータを暗号化する方法であって、以下の全ての処理を有するデータ変換方法である。
（１）符号化されたデータ（符号化画像データ５０１）を複数のデータブロック５１１〜５１３に分割し、分割したブロック内で暗号化を行うデータの配置の分布が一様になるように、前期暗号化を行うデータ（部分データ）を選択する暗号位置抽出処理（部分データ抽出処理）。
（２）前記選択されたデータ（部分データ）を暗号化し、暗号化されたデータ（暗号化部分データ）を生成する暗号化処理。
（３）前記暗号化されたデータを前記符号化されたデータ本体中の前記選択されたデータと置換するデータ置換処理（部分データ置換処理）。
【０１０５】
以上説明したデータ変換装置１００がデータを変換するデータ変換方法は、
前記算術符号（またはハフマン符号などを含むエントロピー符号）で符号化されたデータ（符号化画像データ）がＪＰＥＧ圧縮されたデータであるデータ変換方法である。
【０１０６】
以上説明したデータ変換装置１００がデータを変換するデータ変換方法は、
前記算術符号（またはハフマン符号などを含むエントロピー符号）で符号化されたデータ（符号化画像データ）がＪＰＥＧ圧縮されたうえで、所定の形式で記述されたデータであるデータ変換方法である。
【０１０７】
以上説明したデータ変換装置１００がデータを変換するデータ変換方法は、
暗号位置抽出処理において、データ（符号化画像データ）の先頭に近い部分のデータブロックでは抽出する暗号化部分データ（抽出部分）の割合を多くし、遠くなるにしたがってその割合を下げるデータ変換方法である。
【０１０８】
以上説明したデータ変換装置１００がデータを変換するデータ変換方法は、
暗号化する画像を複数の領域に分け、領域ごとに暗号化するデータの割合を決定し、先頭に近い領域は密に、遠い領域は粗く割合を決定するデータ変換方法である。
【０１０９】
このように、画像データを分割し、演算の高速化のため、全てのデータを暗号化せずに、特定の部分を選択して暗号化する。このとき、先頭アドレスに近い部分を集中的に選択し、遠くなるにしたがい、選択する部分を減らす。したがって、先頭アドレスに近い部分は集中的に暗号化され、遠くなるにしたがい、暗号化しないブロックが増える。
【０１１０】
符号化された状態のデータについて、所定のサイズに分割されたデータブロック内で、暗号化を施すデータの配置の分布が一様になるように暗号化対象を選択し、暗号処理を施すことで、画像データ全体の一部分を暗号化しても、対象画像に対して十分な秘匿効果をもたらすことができる。
また、符号化された後のデータに対し、その一部のみを暗号化するので、暗号化にかかる時間を短縮することができる。
さらに、画像データの先頭に近い部分のデータブロックでは抽出する暗号化部分データの割合を多くし、遠くなるにしたがってその割合を下げることで、さらに少ない暗号化データサイズで画像を閲覧不能にすることができる。
【０１１１】
なお、この実施の形態では、ＪＰＥＧ圧縮した画像データを暗号化する場合について説明したが、この方式は、画像データに限らず、符号化されたデータ全般に適用可能である。特に、ハフマン符号や算術符号などのエントロピー符号を用いて符号化する場合に、効果が高い。
【０１１２】
これにより、画像データなどを高速かつ確実に暗号化し、情報を秘匿することができる。
【０１１３】
実施の形態２．
実施の形態２について、図１０を用いて説明する。
この実施の形態におけるデータ変換装置２００の外観、ハードウェア資源は、実施の形態１で説明したデータ変換装置１００と同様なので、ここでは説明を省略する。
【０１１４】
図１０は、この実施の形態におけるデータ変換装置２００の機能ブロックの構成の一例を示すブロック構成図である。
データ変換装置２００は、実施の形態１で説明したデータ変換装置１００が生成した形式化画像データを入力し、もとの画像を再生して、再生画像データを出力する。
再生画像データとは、写真などの画像を表わすデータである。再生画像データは、画像を構成する画素の色を、ＲＧＢ（Ｒｅｄ−Ｇｒｅｅｎ−Ｂｌｕｅ：赤緑青）系やＹＣｂＣｒ（輝度色差）系などの表色系（色空間）を用いて表わしたデータである。再生画像データは、例えば、ビットマップ形式の画像データである。
再生画像データは、実施の形態１で説明したデータ変換装置１００が生成した形式化画像データから再生したもとの画像を表わす。ただし、実施の形態１で説明したデータ変換装置１００がデータを変換する過程で一部の情報が捨てられている場合があるので、再生画像データが表わす画像は、実施の形態１で説明したデータ変換装置１００が入力した原画像データが表わす画像と同じではない。しかし、捨てる情報を適切に選択することにより、見た目にはほとんど変わらない画像を表わすことができる。
【０１１５】
実施の形態１で説明したデータ変換装置１００が生成する形式化画像データは、所定の暗号鍵で暗号化されている。この実施の形態におけるデータ変換装置２００は、これを暗号鍵に対応する復号鍵で解読し、再生画像データを生成する。
【０１１６】
データ変換装置２００は、形式化画像入力部２７１、分解部２６１、量子化表記憶部２３１、符号化表記憶部２４１、暗号部分抽出部２５１、復号鍵記憶部２５２、暗号解読部２５３、置換部２５４、復号部２４２、逆量子化部２３２、周波数逆変換部２２１、再生画像出力部２１１を有する。
【０１１７】
形式化画像入力部２７１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像データを入力する。
形式化画像入力部２７１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データを出力する。
【０１１８】
分解部２６１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部２７１が出力した形式化画像データを入力する。
分解部２６１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データに基づいて、量子化表と、符号化表と、暗号化画像データとを取得する。
分解部２６１は、ＣＰＵ９１１などの処理装置を用いて、取得した量子化表と、符号化表と、暗号化画像データとを出力する。
【０１１９】
形式化処理において、暗号化画像データをそのまま形式化画像データの一部とする場合と、所定の形式に合致するよう、何らかの変形を施したデータを形式化画像データの一部とする場合とがある。暗号化画像データがそのまま形式化画像データに含まれる場合には、分解部２６１は、形式化画像データのなかから暗号化画像データに相当する部分を探して、暗号化画像データを抽出する。また、何らかの変形を施した場合には、分解部２６１は、抽出したデータに逆の変形を施し、暗号化画像データを復元する。
例えば、形式化画像データのなかでデータＸ‘ＦＦ’を特別な意味に用いる場合、暗号化画像データに含まれるデータＸ‘ＦＦ’を、形式化処理において別のデータで置き換えるなどの処理をする。分解部２６１は、形式化画像データから暗号化画像データに相当する部分を抽出し、置き換えられたデータをもとのデータＸ‘ＦＦ’に戻す。
【０１２０】
量子化表記憶部２３１は、ＣＰＵ９１１などの処理装置を用いて、分解部２６１が出力した量子化表を入力する。
量子化表記憶部２３１は、磁気ディスク装置９２０などの記憶装置を用いて、入力した量子化表を記憶する。
【０１２１】
符号化表記憶部２４１は、ＣＰＵ９１１などの処理装置を用いて、分解部２６１が出力した符号化表を入力する。
符号化表記憶部２４１は、磁気ディスク装置９２０などの記憶装置を用いて、入力した符号化表を記憶する。
【０１２２】
暗号部分抽出部２５１は、ＣＰＵ９１１などの処理装置を用いて、分解部２６１が出力した暗号化画像データを入力する。暗号化画像データは、符号化データの一例である。
暗号部分抽出部２５１は、ＣＰＵ９１１などの処理装置を用いて、入力した暗号化画像データのなかから暗号化された部分を抽出して、部分データを生成する。
暗号部分抽出部２５１は、ＣＰＵ９１１などの処理装置を用いて、生成した部分データを出力する。
暗号部分抽出部２５１は、実施の形態１で説明した暗号部分抽出部１５１の部分データ抽出処理と同様の処理により、部分データを生成する。
【０１２３】
部分データを生成するために必要なパラメータ（例えば、ブロック長の初期値ｂ０、抽出数ｃ、バイト数ｗなど）は、形式化画像データを生成したデータ変換装置と、データ変換装置２００との間で共有している。
例えば、形式化画像データの作成者がこれらのパラメータを公開し、データ変換装置２００が公開されたパラメータを取得して、取得したパラメータに基づいて、暗号部分抽出部２５１が部分データを生成する。
あるいは、これらのパラメータを形式化画像データのなかに埋め込んでおき、分解部２６１が形式化画像データからパラメータを取得してもよい。
【０１２４】
復号鍵記憶部２５２は、磁気ディスク装置９２０などの記憶装置を用いて、復号鍵を記憶する。復号鍵は、暗号部分抽出部２５１が抽出した部分データを、暗号解読部２５３が解読するために使用する鍵である。
当然のことながら、復号鍵記憶部２５２が記憶する復号鍵は、形式化画像データを生成したデータ変換装置が暗号化に使用した暗号鍵と対応するものでなければならない。例えば、共通鍵暗号方式であれば、暗号鍵と復号鍵とが同一である必要がある。
復号鍵記憶部２５２が記憶する復号鍵が、暗号鍵と正しく対応するものでない場合、データ変換装置２００は処理を続けられるが、正しい再生画像データを生成することはできない。したがって、正しい復号鍵を持つものだけが、形式化画像データが表わす画像を閲覧することができる。
【０１２５】
暗号解読部２５３は、ＣＰＵ９１１などの処理装置を用いて、暗号部分抽出部２５１が出力した部分データを入力する。
暗号解読部２５３は、ＣＰＵ９１１などの処理装置を用いて、復号鍵記憶部２５２が記憶した復号鍵を入力する。
暗号解読部２５３は、ＣＰＵ９１１などの処理装置を用いて、入力した部分データを、入力した復号鍵で解読して、解読部分データを生成する。なお、「解読」は「復号」ともいうが、後述する復号部２４２が行う「エントロピー復号」と区別するため、ここでは「解読」という用語を用いる。
暗号解読部２５３は、ＣＰＵ９１１などの処理装置を用いて、生成した解読部分データを出力する。
暗号解読部２５３は、暗号処理部の一例である。解読は、暗号処理の一例である。解読部分データは、処理済部分データの一例である。
【０１２６】
置換部２５４は、ＣＰＵ９１１などの処理装置を用いて、分解部２６１が出力した暗号化画像データを入力する。
置換部２５４は、ＣＰＵ９１１などの処理装置を用いて、暗号解読部２５３が出力した解読部分データを入力する。
置換部２５４は、ＣＰＵ９１１などの処理装置を用いて、入力した暗号化画像データのうち、暗号部分抽出部２５１が抽出した部分を、入力した解読部分データで置換して、解読画像データを生成する。解読画像データは、処理済データの一例である。
置換部２５４は、ＣＰＵ９１１などの処理装置を用いて、生成した解読画像データを出力する。
置換部２５４は、実施の形態１で説明した置換部１５４の部分データ置換処理と同様の処理を行う。
これにより、暗号解読部２５３が正しい復号鍵で解読したのであれば、暗号化画像データの暗号化された部分がもとのデータに戻るので、置換部２５４が出力する解読画像データは、暗号化される前の符号化画像データと同一となる。
【０１２７】
復号部２４２は、ＣＰＵ９１１などの処理装置を用いて、置換部２５４が出力した解読画像データを入力する。
復号部２４２は、ＣＰＵ９１１などの処理装置を用いて、符号化表記憶部２４１が記憶した符号化表を入力する。
復号部２４２は、ＣＰＵ９１１などの処理装置を用いて、入力した解読画像データを、入力した符号化表に基づいて復号し、復号画像データを生成する。
復号部２４２は、ＣＰＵ９１１などの処理装置を用いて、生成した復号画像データを出力する。
【０１２８】
復号部２４２が行う復号は、実施の形態１で説明した符号化部１４２が行う符号化の逆の処理である。符号化方式がエントロピー符号化であれば、復号部２４２はエントロピー復号を行う。符号化方式が静的ハフマン符号化であれば、復号部２４２は静的ハフマン復号を行う。符号化方式が適応型算術符号化であれば、復号部２４２は適応型算術復号を行う。符号化の方式は、形式化画像データに埋め込んでおき、分解部２６１が取得してもよいし、あらかじめ定めておいてもよい。
これにより、復号部２４２が入力した解読画像データが、暗号化される前の符号化画像データと同一であれば、復号部２４２が出力する復号画像データは、符号化される前の量子化画像データと同一となる。
【０１２９】
逆量子化部２３２は、ＣＰＵ９１１などの処理装置を用いて、復号部２４２が出力した復号画像データを入力する。
逆量子化部２３２は、ＣＰＵ９１１などの処理装置を用いて、量子化表記憶部２３１が記憶した量子化表を入力する。
逆量子化部２３２は、ＣＰＵ９１１などの処理装置を用いて、入力した符号画像データを、入力した量子化表に基づいて逆量子化し、逆量子化画像データを生成する。
逆量子化部２３２は、ＣＰＵ９１１などの処理装置を用いて、生成した逆量子化画像データを出力する。
【０１３０】
逆量子化部２３２が行う逆量子化は、実施の形態１で説明した量子化部１３２が行う量子化と逆の処理である。例えば、量子化処理が、周波数画像データに含まれるデータを対応する量子化表のデータで除す処理であれば、逆量子化部２３２は、復号画像データに含まれるデータに、対応する量子化表のデータを乗じる。
なお、量子化処理において、小数点以下を切り捨てるなど、一部の情報を捨てる処理を行っている場合には、逆量子化部２３２が生成する逆量子化画像データは、量子化される前の周波数画像データと同一とはならない。しかし、捨てられた情報が適切に選択されたものであれば、見た目には、もとのデータが表わす画像と変わらない画像を表わす。
【０１３１】
周波数逆変換部２２１は、ＣＰＵ９１１などの処理装置を用いて、逆量子化部２３２が出力した逆量子化画像データを入力する。
周波数逆変換部２２１は、ＣＰＵ９１１などの処理装置を用いて、入力した逆量子化画像データを周波数逆変換して、再生画像データを生成する。
周波数逆変換部２２１は、ＣＰＵ９１１などの処理装置を用いて、生成した再生画像データを出力する。
周波数逆変換部２２１が行う周波数逆変換は、実施の形態１で説明した周波数変換部１２１が行う周波数変換の逆の処理である。周波数変換が二次元ＤＣＴであれば、周波数逆変換部２２１は二次元逆ＤＣＴを行う。周波数変換が二次元ウェーブレット変換であれば、周波数逆変換部２２１は二次元逆ウェーブレット変換を行う。周波数変換の方式は、形式化画像データに埋め込んでおき、分解部２６１が取得してもよいし、あらかじめ定めておいてもよい。
【０１３２】
再生画像出力部２１１は、ＣＰＵ９１１などの処理装置を用いて、周波数逆変換部２２１が出力した再生画像データを入力する。
再生画像出力部２１１は、ＣＰＵ９１１などの処理装置を用いて、入力した再生画像データを出力する。
【０１３３】
次に、動作について説明する。
【０１３４】
上述したように、暗号部分抽出部２５１が部分データを生成する部分データ抽出処理は、実施の形態１で説明した暗号部分抽出部１５１の部分データ抽出処理と同様の処理である。
例えば、図８で説明した部分データ抽出処理と同様の処理を、暗号部分抽出部２５１が実行する。ただし、図８において、入力工程Ｓ１１で暗号部分抽出部１５１が符号化画像データを入力するのに対し、この実施の形態における暗号部分抽出部２５１は、分解部２６１が出力した暗号化画像データを入力する点が異なる。
【０１３５】
また、置換部２５４が解読画像データを生成する部分データ置換処理も、実施の形態１で説明した置換部１５４の部分データ置換処理と同様の処理である。
例えば、図９で説明した部分データ置換処理と同様の処理を、置換部２５４が実行する。ただし、図９において、入力工程Ｓ３１で置換部１５４が符号化画像データを入力するのに対し、この実施の形態における置換部２５４は、分解部２６１が出力した暗号化画像データを入力する点が異なる。また、同じく入力工程Ｓ３１で置換部１５４が暗号化部分データを入力するのに対し、この実施の形態における置換部２５４は、暗号解読部２５３が出力した解読部分データを入力する点が異なる。更に、出力工程Ｓ４１で置換部１５４が暗号化画像データを出力するのに対し、この実施の形態における置換部２５４は、解読画像データを出力する点が異なる。
【０１３６】
このように、入出力するデータの名称は異なるが、処理の内容は同じである。
そこで、実施の形態１における暗号部分抽出部１５１・置換部１５４が入力する符号化画像データと、この実施の形態における暗号部分抽出部２５１・置換部２５４が入力する暗号化画像データとをまとめて、符号化データと呼ぶ。
実施の形態１における置換部１５４が入力する暗号化部分データと、この実施の形態における置換部２５４が入力する解読部分データとをまとめて、処理済部分データと呼ぶ。
実施の形態１における置換部１５４が出力する暗号化画像データと、この実施の形態における置換部２５４が出力する解読画像データとをまとめて、処理済データと呼ぶ。
【０１３７】
また、暗号方式によっては、暗号化処理と暗号解読処理とをまったく同じ処理で実現できるものがある。
その場合、実施の形態１における暗号化部１５３と、この実施の形態における暗号解読部２５３とも、同じ処理となる。
【０１３８】
したがって、実施の形態１における暗号部分抽出部１５１・暗号鍵記憶部１５２・暗号化部１５３・置換部１５４の構成と、この実施の形態における暗号部分抽出部２５１・復号鍵記憶部２５２・暗号解読部２５３・置換部２５４の構成とは、まったく同じであってもよい。
【０１３９】
この実施の形態におけるデータ変換装置２００は、
情報を処理するＣＰＵ９１１などの処理装置と、暗号部分抽出部２５１と、暗号処理部（暗号解読部２５３）と、置換部２５４とを有することを特徴とする。
暗号部分抽出部２５１は、ＣＰＵ９１１などの処理装置を用いて、符号化データ（暗号化画像データ）を入力し、ＣＰＵ９１１などの処理装置を用いて、入力した符号化データ（暗号化画像データ）のなかから一部を抽出して部分データとすることを特徴とする。
暗号処理部（暗号解読部２５３）は、ＣＰＵ９１１などの処理装置を用いて、暗号部分抽出部２５１が抽出した部分データを暗号処理（暗号解読）して処理済部分データ（解読部分データ）とすることを特徴とする。
置換部２５４は、ＣＰＵ９１１などの処理装置を用いて、符号化データ（暗号化画像データ）のうち、暗号部分抽出部２５１が抽出した部分を、暗号処理部（暗号解読部２５３）が暗号処理（暗号解読）した処理済部分データ（解読部分データ）で置換して処理済データ（解読画像データ）とし、ＣＰＵ９１１などの処理装置を用いて、置換した処理済データ（解読画像データ）を出力することを特徴とする。
【０１４０】
この実施の形態におけるデータ変換装置２００によれば、入力した符号化データをすべて暗号処理するのではなく、暗号部分抽出部２５１が抽出した部分データだけを暗号処理するので、暗号処理に必要な資源を節約することができ、効率のよい暗号解読を実現できるという効果を奏する。
【０１４１】
この実施の形態におけるデータ変換装置２００は、更に、情報を記憶する磁気ディスク装置９２０などの記憶装置と、分解部２６１と、符号化表記憶部２４１と、量子化表記憶部２３１と、復号部２４２と、逆量子化部２３２と、周波数逆変換部２２１とを有することを特徴とする。
分解部２６１は、ＣＰＵ９１１などの処理装置を用いて、所定の形式で形式化された形式化画像データを入力し、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データに基づいて、暗号化画像データと符号化表と量子化表とを取得することを特徴とする。
符号化表記憶部２４１は、磁気ディスク装置９２０などの記憶装置を用いて、分解部２６１が取得した符号化表を記憶することを特徴とする。
量子化表記憶部２３１は、磁気ディスク装置９２０などの記憶装置を用いて、分解部２６１が取得した量子化表を記憶することを特徴とする。
暗号部分抽出部２５１は、ＣＰＵ９１１などの処理装置を用いて、分解部２６１が取得した暗号化画像データを符号化データとして入力することを特徴とする。
復号部２４２は、置換部２５４が出力した処理済データを符号化画像データとし、ＣＰＵ９１１などの処理装置を用いて、上記符号化画像データを、符号化表記憶部２４１が記憶した符号化表に基づいて復号して復号画像データとすることを特徴とする。
逆量子化部２３２は、ＣＰＵ９１１などの処理装置を用いて、復号部２４２が復号した復号画像データを、量子化表記憶部２３１が記憶した量子化表に基づいて逆量子化して逆量子化画像データとすることを特徴とする。
周波数逆変換部２２１は、ＣＰＵ９１１などの処理装置を用いて、逆量子化部２３２が逆量子化した逆量子化画像データを周波数逆変換して再生画像データとし、ＣＰＵ９１１などの処理装置を用いて、周波数逆変換した再生画像データを出力することを特徴とする。
【０１４２】
この実施の形態におけるデータ変換装置２００によれば、ＪＦＩＦ形式などの形式に形式化され、一部を暗号化された形式化画像データから、再生画像データを生成するので、実施の形態１におけるデータ変換装置１００が生成した形式化画像データが表わす画像を閲覧できる形にすることができるという効果を奏する。
【０１４３】
この実施の形態におけるデータ変換装置２００は、以下の点を特徴とする。
暗号部分抽出部２５１は、ＣＰＵ９１１などの処理装置を用いて、エントロピー符号化されたデータの一部を暗号化したデータを符号化データとして入力することを特徴とする。
【０１４４】
この実施の形態におけるデータ変換装置２００によれば、エントロピー符号化されたデータの一部を暗号化したデータの暗号化された部分を抽出して暗号処理するので、少ない処理で暗号を解読できるという効果を奏する。
【０１４５】
この実施の形態におけるデータ変換装置２００は、以下の点を特徴とする。
暗号部分抽出部２５１は、ＣＰＵ９１１などの処理装置を用いて、ハフマン符号化されたデータの一部を暗号化したデータを符号化データとして入力することを特徴とする。
【０１４６】
この実施の形態におけるデータ変換装置２００によれば、ハフマン符号化されたデータの一部を暗号化したデータの暗号化された部分を抽出して暗号処理するので、少ない処理で暗号を解読できるという効果を奏する。
【０１４７】
この実施の形態におけるデータ変換装置２００は、以下の点を特徴とする。
暗号部分抽出部２５１は、ＣＰＵ９１１などの処理装置を用いて、算術符号化されたデータの一部を暗号化したデータを符号化データとして入力することを特徴とする。
【０１４８】
この実施の形態におけるデータ変換装置２００によれば、算術符号化されたデータの一部を暗号化したデータの暗号化された部分を抽出して暗号処理するので、少ない処理で暗号を解読できるという効果を奏する。
【０１４９】
以上説明したデータ変換装置２００がデータを変換するデータ変換方法は、
実施の形態１で説明したデータ変換方法によって暗号化されたデータ（形式化画像データ）を復号（解読）するデータ変換方法であって、以下の全ての処理を有するデータ変換方法である。
（１）形式化された暗号化データ（形式化画像データ）より、暗号化された符号化データ（暗号化画像データ）を抽出する分解処理。
（２）前記暗号化された符号化データ（暗号化画像データ）から暗号化された部分データを抽出する復号位置抽出処理（部分データ抽出処理）。
（３）前記暗号化された部分データを所定の鍵データ（復号鍵）と復号方法で復号化（解読）し、復号化された部分データ（解読部分データ）を生成する復号化処理（暗号解読処理）。
（４）前記暗号化された符号化データ（暗号化画像データ）の前記暗号化された部分データを対応する前記復号化された部分データに置換するデータ置換処理（部分データ置換処理）。
【０１５０】
実施の形態３．
実施の形態３について、図１１〜図１６を用いて説明する。
この実施の形態におけるデータ変換装置３００の外観、ハードウェア資源は、実施の形態１で説明したデータ変換装置１００と同様なので、ここでは説明を省略する。
【０１５１】
図１１は、この実施の形態におけるデータ変換装置３００の機能ブロックの構成の一例を示すブロック構成図である。
なお、実施の形態１で説明したデータ変換装置１００の機能ブロックと共通するブロックについては、同一の符号を付し、ここでは説明を省略する。
【０１５２】
データ変換装置３００は、所定のフォーマットにしたがって形式化された形式化画像データを入力し、暗号化した形式化画像データを出力する。
例えば、従来のデータ変換装置が生成した暗号化されていない形式化画像データを入力し、暗号化する。
あるいは、既に暗号化された形式化画像データを入力し、更に暗号化することにより、暗号強度を強くする。
【０１５３】
データ変換装置３００は、形式化画像入力部３１１、暗号部分抽出部３５１、暗号鍵記憶部１５２、暗号化部１５３、置換部３５４、形式化画像出力部１７１を有する。
【０１５４】
形式化画像入力部３１１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像データを入力する。
形式化画像入力部３１１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データを出力する。
形式化画像入力部３１１が入力する形式化画像データは、既に暗号化されていてもよいし、暗号化されていなくてもよい。
【０１５５】
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部３１１が出力した形式化画像データを入力する。形式化画像データは、符号化データの一例である。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データのなかから暗号化する部分を抽出して、部分データを生成する。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、生成した部分データを出力する。
【０１５６】
図１２は、この実施の形態における暗号部分抽出部３５１が抽出する部分データの一例を示す図である。
この例において、形式化画像データ７０２は、ＪＦＩＦ形式で形式化されているものとする。また、形式化画像データ７０２は、暗号化されていないものとする。
形式化画像データ７０２は、符号化画像データ７１２を含む。
符号化画像データ７１２は、もととなる符号化画像データ５０２とほぼ同じであるが、符号化画像データ５０２のなかにＸ‘ＦＦ’が現れる場合、その後にＸ‘００’が挿入されている。
【０１５７】
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像データ７０２を入力する。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データ７０２のなかから、符号化画像データ７１２を抽出する。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、抽出した符号化画像データ７１２に基づいて、部分データ５６２を生成する。
【０１５８】
ここで、暗号部分抽出部３５１は、符号化画像データ７１２においてＸ‘００’が挿入されている部分についても特別な処理をせず、そのままの符号化画像データ７１２から部分データ５６２を抽出する。
【０１５９】
図１１に戻り、データ変換装置３００の機能ブロックの説明を続ける。
【０１６０】
置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部３１１が出力した形式化画像データを入力する。
置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、暗号化部１５３が出力した暗号化部分データを入力する。暗号化部分データは、処理済部分データの一例である。
置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データのうち、暗号部分抽出部３５１が抽出した部分を、入力した暗号化部分データで置換して、（暗号化された）形式化画像データを生成する。（暗号化された）形式化画像データは、処理済データの一例である。
置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、生成した（暗号化された）形式化画像データを出力する。
【０１６１】
図１３は、この実施の形態における置換部３５４が生成する形式化画像データの一例を示す図である。
この例において、形式化画像データは、ＪＦＩＦ形式で形式化されているものとする。
【０１６２】
上述したように、暗号部分抽出部３５１が形式化画像データ７０２から抽出した符号化画像データ７１２には、Ｘ‘ＦＦ’のあとにＸ‘００’が挿入されている。
暗号部分抽出部３５１は、これを考慮せずに部分データ５６２を生成するので、暗号部分抽出部３５１が生成した部分データ５６２のなかには、Ｘ‘ＦＦ’やＸ‘００’が含まれる。
また、符号化画像データ７１２のなかのどこにＸ‘ＦＦ’が現れるかはわからないので、部分データのなかに含まれるＸ‘ＦＦ’やＸ‘００’は、必ずしもＸ‘ＦＦ’のあとにＸ‘００’が現れるとは限らず、断片化したＸ‘ＦＦ’やＸ‘００’が含まれる場合がある。
【０１６３】
暗号化部１５３は、部分データ５６２を暗号化して暗号化部分データ５７２を生成する。
このときも、部分データ５６２に含まれるＸ‘ＦＦ’やＸ‘００’について特別な考慮をすることなく暗号化するので、部分データ５６２に含まれるＸ‘ＦＦ’やＸ‘００’は、通常、他のデータに置き換わり、逆に、他のデータだった部分にＸ‘ＦＦ’が現れることになる。
【０１６４】
置換部３５４は、形式化画像データ７０２の一部を暗号化部分データ５７２で置換して（暗号化された）形式化画像データ７０３を生成する。
その結果、置換部３５４が生成する（暗号化された）形式化画像データ７０３には、Ｘ‘００’を伴わない断片化されたＸ‘ＦＦ’が含まれる。
【０１６５】
形式化画像データが表わす画像を表示する閲覧装置が、暗号化された形式化画像データを解読する機能を有し、暗号鍵に対応する正しい復号鍵で形式化画像データを解読した場合には、このような断片化は問題とならない。閲覧装置は、断片化のないもとのデータを復元できるからである。
したがって、置換部３５４が生成した形式化画像データは、形式化画像データがしたがうべきフォーマットに違反する部分を含むものであるが、暗号鍵に対応する復号鍵を有する正規の閲覧者は、正しい画像を閲覧することができる。
【０１６６】
一方、暗号化された形式化画像データを解読する機能がなく、あるいは、暗号鍵に対応する正しい復号鍵をもたない閲覧装置は、正しい画像を表示できないだけでなく、形式化画像データが所定の形式に違反しているので、処理を続けることができない。例えば、閲覧装置は、断片化されたＸ‘ＦＦ’をマーカと勘違いしてしまう。
【０１６７】
このように、形式違反を含むデータをそのまま出力することにより、形式化画像データが表わす画像を、不正な閲覧者から守ることができる。
【０１６８】
次に、動作について説明する。
【０１６９】
図１４は、この実施の形態における暗号部分抽出部３５１が、形式化画像データのなかから符号化画像データの開始位置を検索する符号化データ検索処理の流れの一例を示すフローチャート図である。
【０１７０】
入力工程Ｓ５１において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部３１１が出力した形式化画像データを入力する。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、入力した形式化画像データを記憶する。
【０１７１】
初期設定工程Ｓ５２において、暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、検索位置として０を記憶する。
【０１７２】
第一検索位置更新工程Ｓ５３において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ５２（または第一検索位置更新工程Ｓ５３もしくは後述する第二検索位置更新工程Ｓ５４もしくは後述する第三検索位置更新工程Ｓ５８）で記憶した検索位置に１を加える。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな検索位置として記憶する。
【０１７３】
マーカ検出工程Ｓ５４において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ５１で記憶した形式化画像データのうち、検索位置にあたるバイトのデータを取得する。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、取得したデータがＸ‘ＦＦ’であるか否かを判定する。
取得したデータがＸ‘ＦＦ’である場合、第二検索位置更新工程Ｓ５５へ進む。
取得したデータがＸ‘ＦＦ’でない場合、第一検索位置更新工程Ｓ５３に戻る。
【０１７４】
第二検索位置更新工程Ｓ５５において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、第一検索位置更新工程Ｓ５３で記憶した検索位置に１を加える。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな検索位置として記憶する。
【０１７５】
第一マーカ種類判定工程Ｓ５６において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ５１で記憶した形式化画像データのうち、検索位置にあたるバイトのデータを取得する。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、取得したデータに基づいてマーカの種類を判定する。
マーカがＳＯＩ（取得したデータがＸ‘Ｄ８’）またはＥＯＩ（Ｘ‘Ｄ９’）である場合、第一検索位置更新工程Ｓ５３に戻る。
マーカがＳＯＩ・ＥＯＩ以外である場合、長さ取得工程Ｓ５７へ進む。
【０１７６】
長さ取得工程Ｓ５７において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ５１で記憶した形式化画像データのうち、検索位置の次とその次にあたる２バイトのデータを、長さとして取得する。
【０１７７】
第三検索位置更新工程Ｓ５８において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、第二検索位置更新工程Ｓ５５で記憶した検索位置に、長さ取得工程Ｓ５７で取得した長さを加える。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、加えた結果を、新たな検索位置として記憶する。
【０１７８】
第二マーカ種類判定工程Ｓ５９において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、第一マーカ種類判定工程Ｓ５６で判定したマーカの種類がＳＯＳ（第一マーカ種類判定工程Ｓ５６で取得したデータがＸ‘ＤＡ’）であるか否かを判定する。
マーカがＳＯＳである場合、開始位置設定工程Ｓ６０へ進む。
マーカがＳＯＳでない場合、第一検索位置更新工程Ｓ５３に戻る。
【０１７９】
開始位置設定工程Ｓ６０において、暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、第三検索位置更新工程Ｓ５８で記憶した検索位置を、開始位置として記憶する。
【０１８０】
なお、この例は、形式化画像データがＪＦＩＦ形式である場合の例であり、他の形式である場合には、その形式に応じた処理が必要となる。また、形式化画像データがＪＦＩＦ形式である場合であっても、これと異なる手順によって、開始位置を求めてもよい。
【０１８１】
図１５は、この実施の形態における暗号部分抽出部３５１が、部分データを生成する部分データ抽出処理の流れの一例を示すフローチャート図である。
【０１８２】
入力工程Ｔ１１において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部３１１が出力した形式化画像データを入力する。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、入力した形式化画像データを記憶する。
なお、符号化データ検索処理で、暗号部分抽出部３５１が既に形式化画像データを入力している場合には、入力工程Ｔ１１はなくてもよい。
【０１８３】
初期設定工程Ｔ１２において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、符号化データ検索処理で求めた開始位置を入力する。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、抽出位置として、入力した開始位置を記憶する。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、抽出率として、１を記憶する。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、ブロック数として、０を記憶する。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、部分データとして、長さ０のデータを記憶する。
【０１８４】
選択工程Ｔ１３において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｔ１２（または後述するブロック計数工程Ｔ１８あるいは抽出率更新工程Ｔ２０）で記憶したブロック数を、初期設定工程Ｔ１２（または抽出率更新工程Ｔ２０）で記憶した抽出率で割った余りを算出する。
算出した余りが０である場合、抽出工程Ｔ１４へ進む。
算出した余りが０でない場合、位置更新工程Ｔ１６へ進む。
【０１８５】
抽出工程Ｔ１４において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ１１で記憶した形式化画像データのなかで、初期設定工程Ｔ１２（または位置更新工程Ｔ１６）で記憶した抽出位置にあたる位置からあらかじめ定めたブロック長ｂのデータを抜き出して、抽出部分とする。
【０１８６】
結合工程Ｔ１５において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｔ１２（または結合工程Ｔ１５）で記憶した部分データの後ろに、抽出工程Ｔ１４で抜き出した抽出部分を結合する。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、結合したデータを、新たな部分データとして記憶する。
【０１８７】
位置更新工程Ｔ１６において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｔ１２（または位置更新工程Ｔ１６）で記憶した抽出位置に、ブロック長ｂを加える。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな抽出位置として記憶する。
【０１８８】
終了判定工程Ｔ１７において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、位置更新工程Ｔ１６で記憶した新たな抽出位置を、入力工程Ｔ１１で記憶した形式化画像データの長さと比較する。
抽出位置のほうが大きい場合、出力工程Ｔ２１へ進む。
形式化画像データの長さのほうが大きい場合、ブロック計数工程Ｔ１８へ進む。
【０１８９】
ブロック計数工程Ｔ１８において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｔ１２（またはブロック計数工程Ｔ１８）で記憶したブロック数に１を加える。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たなブロック数として記憶する。
【０１９０】
更新判定工程Ｔ１９において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、ブロック計数工程Ｔ１８で記憶した新たなブロック数を、あらかじめ定めたブロック数ｍと比較する。
ブロック数のほうが大きい場合、抽出率更新工程Ｔ２０へ進む。
所定のブロック数ｍのほうが大きい場合、選択工程Ｔ１３に戻る。
【０１９１】
抽出率更新工程Ｔ２０において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｔ１２（または抽出率更新工程Ｔ２０）で記憶した抽出率に１を加える。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たなブロック長として記憶する。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、新たなブロック数として０を記憶する。
その後、選択工程Ｔ１３に戻る。
【０１９２】
出力工程Ｔ２１において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、記憶した部分データを出力する。
【０１９３】
以上のようにして、符号化データ検索処理により求めた開始位置に基づいて、暗号部分抽出部３５１は、形式化画像データから符号化画像データにあたる部分を抽出し、部分データを生成する。
例えば、ブロック長ｂを４バイト、所定のブロック数ｍを１００、符号化データ検索処理により求めた開始位置を５００バイト目とすれば、暗号部分抽出部３５１は、形式化画像データの５００バイト目から８９９バイト目までの部分について、すべてのデータを抽出する。形式化画像データの９００バイト目から１２９９バイト目までの部分については、抽出割合が１／２となる。形式化画像データの１３００バイト目から１６９９バイト目までの部分については、抽出割合が１／３となる。
【０１９４】
このように、形式化画像データの符号化画像データにあたる部分の先頭に近いほど、暗号部分抽出部３５１が抽出する部分の割合が高く、先頭から遠くなるほど、抽出する部分の割合が低くなる。
ブロック単位（上の例では、４バイト）でいえば、先頭に近いブロックほど、抽出される確率が高く、先頭から遠くなるほど、抽出される確率が低くなる。
また、所定の範囲内（上の例では、４００バイト）では、抽出する部分が一様に分布する。
【０１９５】
なお、この例では、部分データの抽出方式が、実施の形態１で説明した暗号部分抽出部１５１の部分データ抽出処理における抽出方式と異なるが、実施の形態１で説明した抽出方式と同様の手順により、暗号部分抽出部３５１が、形式化画像データから、符号化データ検索処理により求めた開始位置に基づいて、部分データを生成してもよい。
また、これと異なる手順により、暗号部分抽出部３５１が部分データを生成してもよい。
例えば、決まった間隔で必ずブロックを選択するのではなく、乱数を用いるなどして、抽出する部分の分布が統計的に一様になるように処理してもよい。
【０１９６】
図１６は、この実施の形態における置換部３５４が（暗号化された）形式化画像データを生成する部分データ置換処理の流れの一例を示すフローチャート図である。
なお、実施の形態１で説明した置換部１５４の部分データ置換処理（図９）と共通する工程については、同一の符号を付し、ここでは説明を省略する。
【０１９７】
入力工程Ｔ３１において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部３１１が出力した形式化画像データを入力する。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、入力した形式化画像データを記憶する。
置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、暗号化部１５３が出力した暗号化部分データを入力する。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、入力した暗号化部分データを記憶する。
【０１９８】
初期設定工程Ｔ３２において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、符号化データ検索処理で暗号部分抽出部３５１が求めた開始位置を入力する。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、置換位置として、入力した開始位置を記憶する。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、抽出率として、１を記憶する。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、ブロック数として、０を記憶する。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、抽出位置として、１を記憶する。
【０１９９】
選択工程Ｔ３３において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｔ３２（または後述するブロック計数工程Ｔ３９あるいは抽出率更新工程Ｔ４１）で記憶したブロック数を、初期設定工程Ｔ１２（または抽出率更新工程Ｔ２０）で記憶した抽出率で割った余りを算出する。
算出した余りが０である場合、抽出工程Ｔ３４へ進む。
算出した余りが０でない場合、置換位置更新工程Ｔ３８へ進む。
【０２００】
抽出工程Ｔ３４において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｔ３１で記憶した暗号化部分データのなかで、初期設定工程Ｔ３２（または後述する抽出位置更新工程Ｔ３５）で記憶した抽出位置からあらかじめ定めたブロック長ｂのデータを抜き出して、置換部分とする。
【０２０１】
抽出位置更新工程Ｔ３５において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｔ３２（または抽出位置更新工程Ｔ３５）で記憶した抽出位置に、所定のブロック長ｂを加える。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな抽出位置として記憶する。
【０２０２】
置換工程Ｔ３６において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｔ３１（または置換工程Ｔ３６）で記憶した形式化画像データのなかで、初期設定工程Ｔ３２（または後述する置換位置更新工程Ｔ３７）で記憶した置換位置から所定のブロック長ｂのデータを、抽出工程Ｓ３３で抜き出した置換部分で置き換える。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、置き換えた結果を、新たな形式化画像データとして記憶する。
【０２０３】
終了判定工程Ｔ３７において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、抽出位置更新工程Ｔ３５で記憶した新たな抽出位置を、入力工程Ｔ３１で記憶した暗号化部分データの長さと比較する。
抽出位置のほうが大きい場合、出力工程Ｔ４２へ進む。
暗号化部分データの長さのほうが大きい場合、置換位置更新工程Ｔ３８へ進む。
【０２０４】
置換位置更新工程Ｔ３８において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｔ３２（または置換位置更新工程Ｔ３８）で記憶した置換位置に、所定のブロック長ｂを加える。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな置換位置として記憶する。
【０２０５】
ブロック計数工程Ｔ３９において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｔ３２（またはブロック計数工程Ｔ３９）で記憶したブロック数に、１を加える。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たなブロック数として記憶する。
【０２０６】
更新判定工程Ｔ４０において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、置換計数工程Ｔ３９で記憶した新たなブロック数を、あらかじめ定めたブロック数ｍと比較する。
ブロック数のほうが大きい場合、抽出率更新工程Ｔ４１へ進む。
所定のブロック数ｍのほうが大きい場合、選択工程Ｔ３３に戻る。
【０２０７】
抽出率更新工程Ｔ４１において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｔ３２（または抽出率更新工程Ｔ４１）で記憶した抽出率に１を加える。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな抽出率として記憶する。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、新たなブロック数として、０を記憶する。
その後、選択工程Ｔ３３に戻る。
【０２０８】
出力工程Ｔ４２において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、置換工程Ｔ３６で記憶した形式化画像データを出力する。
【０２０９】
このようにして、暗号部分抽出部３５１が符号化データ検索処理により求めた開始位置に基づいて、置換部３５４は、（暗号化された）形式化画像データを生成する。
【０２１０】
なお、この例では、部分データの置換方式が、実施の形態１で説明した置換部１５４の部分データ置換処理における置換方式と異なるが、実施の形態１で説明した置換方式と同様の手順により、置換部３５４が、形式化画像データを、暗号化部分データで置換して、（暗号化された）形式化画像データを生成してもよい。
また、これと異なる手順により、置換部３５４が（暗号化された）形式化画像データを生成してもよい。
【０２１１】
この実施の形態におけるデータ変換装置３００は、
情報を処理するＣＰＵ９１１などの処理装置と、暗号部分抽出部３５１と、暗号処理部（暗号化部１５３）と、置換部３５４とを有することを特徴とする。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、符号化データ（形式化画像データ）を入力し、ＣＰＵ９１１などの処理装置を用いて、入力した符号化データ（形式化画像データ）のなかから一部を抽出して部分データとすることを特徴とする。
暗号処理部（暗号化部１５３）は、ＣＰＵ９１１などの処理装置を用いて、暗号部分抽出部３５１が抽出した部分データを暗号処理（暗号化）して処理済部分データ（暗号化部分データ）とすることを特徴とする。
置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、符号化データ（形式化画像データ）のうち、暗号部分抽出部３５１が抽出した部分を、暗号処理部（暗号化部１５３）が暗号処理（暗号化）した処理済部分データ（暗号化部分データ）で置換して処理済データ（暗号化された形式化画像データ）とし、ＣＰＵ９１１などの処理装置を用いて、置換した処理済データ（暗号化された形式化画像データ）を出力することを特徴とする。
【０２１２】
この実施の形態におけるデータ変換装置３００によれば、入力した符号化データをすべて暗号処理するのではなく、暗号部分抽出部３５１が抽出した部分データだけを暗号処理するので、暗号処理に必要な資源を節約することができ、効率のよい暗号化を実現できるという効果を奏する。
【０２１３】
この実施の形態におけるデータ変換装置３００は、以下の点を特徴とする。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、入力した符号化データ（形式化画像データ）を所定の長さの複数のブロックに分割し、ＣＰＵ９１１などの処理装置を用いて、分割した複数のブロックなかから複数のブロックを選択し、ＣＰＵ９１１などの処理装置を用いて、選択した複数のブロックを部分データとして抽出することを特徴とする。
【０２１４】
この実施の形態におけるデータ変換装置３００によれば、暗号部分抽出部３５１が符号化データを複数のブロックに分割し、分割したブロックのなかから選択した複数のブロックを部分データとして抽出するので、抽出する部分が一様に分布し、効率のよい暗号化を実現できるという効果を奏する。
【０２１５】
この実施の形態におけるデータ変換装置３００は、以下の点を特徴とする。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、分割した複数のブロックそれぞれを選択する確率が、先頭に近いブロックほど高くなるよう、複数のブロックを選択することを特徴とする。
【０２１６】
この実施の形態におけるデータ変換装置３００によれば、暗号部分抽出部３５１が分割した複数のブロックそれぞれを選択する確率が先頭に近いブロックほど高いので、暗号部分抽出部３５１が抽出する部分の割合が、先頭に近いブロックほど高く、先頭から遠くなるほど低くなり、効率のよい暗号処理を実現できるという効果を奏する。
【０２１７】
この実施の形態におけるデータ変換装置３００は、以下の点を特徴とする。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、所定の形式で形式化された形式化画像データを符号化データとして入力し、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データのなかから、所定の方式で符号化された符号化画像データに相当する部分を検索し、ＣＰＵ９１１などの処理装置を用いて、検索した符号化画像データに相当する部分から、一部を抽出して部分データとすることを特徴とする。
【０２１８】
この実施の形態におけるデータ変換装置３００によれば、暗号部分抽出部３５１が形式化画像データ全体からではなく、符号化画像データに相当する部分から、部分データを抽出するので、抽出する部分データの長さが短くなり、暗号処理に必要な資源を節約でき、効率のよい暗号化を実現できるという効果を奏する。
【０２１９】
以上説明したデータ変換装置３００がデータを変換するデータ変換方法は、
算術符号（またはハフマン符号などを含むエントロピー符号）によって符号化され、かつ所定の形式により形式化された符号化データ（形式化画像データ）を暗号化するデータ変換方法であって、以下の処理を有するデータ変換方法である。
（１）形式化された符号化データ（形式化画像データ）中の符号化されたデータ本体（符号化画像データ）を複数のデータブロックに分割し、分割したブロック内で暗号化を行うデータ（部分データ）の配置の分布が一様になるように、前記暗号化を行うデータ（部分データ）を前記符号化されたデータ本体（符号化画像データ）から選択する暗号位置抽出処理（部分データ抽出処理）。
（２）前記選択されたデータ（部分データ）を暗号化する暗号化処理。
（３）前記暗号化されたデータ（暗号化部分データ）を前記形式化された符号化データ（形式化画像データ）中の前記選択されたデータと置換するデータ置換処理（部分データ置換処理）。
【０２２０】
以上説明したデータ変換装置３００がデータを変換するデータ変換方法は、
暗号位置抽出処理（部分データ抽出処理）において、前記形式化された符号化データ（形式化画像データ）中に形式化されたデータ構造があっても、それに変更を加えずにデータの抽出を行うデータ変換方法である。
【０２２１】
以上説明したデータ変換装置３００がデータを変換するデータ変換方法は、
暗号位置抽出処理（部分データ抽出処理）において、データの先頭に近い部分のデータブロックでは抽出する暗号化部分データの割合を多くし、遠くなるにしたがってその割合を下げるデータ変換方法である。
【０２２２】
以上説明したデータ変換装置３００がデータを変換するデータ変換方法は、
データ置換処理において、置換後のデータ構成が所定の形式に違反しても、前記違反を修正せずに置換するデータ変換方法である。
【０２２３】
データ変換装置３００は、既に形式化された形式化画像データを暗号化するので、従来の形式化画像データ生成装置（例えば、ＪＰＥＧ画像エンコーダなど）の後段にカスケード接続することで、容易に暗号機能を実装することができる。
【０２２４】
以上のように、データ変換装置３００は、画像データを、エンコードされたイメージデータの先頭から一定サイズ（例えば８バイト）ごとに分割してブロックとする。画像データは、ブロック単位で暗号化する。
画像データは一般にサイズが大きく、データ全てを暗号化することは効率が悪い。画像の再生を防止するためには、データを全て暗号化する必要はなく、画像データの一部を暗号化することで、画像を効率よく復元不可能にすることができる。
【０２２５】
実施の形態４．
実施の形態４について、図１７〜図１８を用いて説明する。
この実施の形態におけるデータ変換装置４００の外観、ハードウェア資源は、実施の形態１で説明したデータ変換装置１００と同様なので、ここでは説明を省略する。
【０２２６】
図１７は、この実施の形態におけるデータ変換装置４００の機能ブロックの構成の一例を示すブロック構成図である。
なお、実施の形態２で説明したデータ変換装置２００の機能ブロックと共通するブロックについては、同一の符号を付し、ここでは説明を省略する。
【０２２７】
データ変換装置４００は、実施の形態３で説明したデータ変換装置３００が暗号化した形式化画像データを入力し、暗号を解読して、解読した形式化画像データを出力する。
データ変換装置４００が入力する形式化画像データは、複数回にわたって暗号化されたものであってもよい。その場合、データ変換装置４００は、暗号を一回分解読した（したがってまだ暗号化されている）形式化画像データを出力する。
【０２２８】
データ変換装置４００は、形式化画像入力部２７１、暗号部分抽出部４５１、復号鍵記憶部２５２、暗号解読部２５３、置換部４５４、形式化画像出力部４１１を有する。
【０２２９】
暗号部分抽出部４５１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部２７１が出力した（暗号化された）形式化画像データを入力する。（暗号化された）形式化画像データは、符号化データの一例である。
暗号部分抽出部４５１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データのなかから暗号化された部分を抽出して、部分データを生成する。
暗号部分抽出部４５１は、ＣＰＵ９１１などの処理装置を用いて、生成した部分データを出力する。
暗号部分抽出部４５１は、実施の形態３で説明した暗号部分抽出部３５１の符号化データ検索処理・部分データ抽出処理と同様の処理により、部分データを生成する。
【０２３０】
置換部４５４は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部２７１が出力した（暗号化された）形式化画像データを入力する。
置換部４５４は、ＣＰＵ９１１などの処理装置を用いて、暗号解読部２５３が出力した解読部分データを入力する。解読部分データは、処理済部分データの一例である。
置換部４５４は、ＣＰＵ９１１などの処理装置を用いて、入力した（暗号化された）形式化画像データのうち、暗号部分抽出部４５１が抽出した部分を、入力した解読部分データで置換して、（解読した）形式化画像データを生成する。（解読した）形式化画像データは、処理済データの一例である。
置換部４５４は、ＣＰＵ９１１などの処理装置を用いて、生成した（解読した）形式化画像データを出力する。
置換部４５４は、実施の形態３で説明した置換部３５４の部分データ置換処理と同様の処理を行う。
【０２３１】
形式化画像出力部４１１は、ＣＰＵ９１１などの処理装置を用いて、置換部４５４が出力した（解読した）形式化画像データを入力する。
形式化画像出力部４１１は、ＣＰＵ９１１などの処理装置を用いて、入力した（解読した）形式化画像データを出力する。
【０２３２】
図１８は、この実施の形態におけるデータ変換装置４００が生成する形式化画像データの一例を示す図である。
この例において、形式化画像データは、ＪＦＩＦ形式で形式化されているものとする。また、形式化画像データ７０３は、一回だけ暗号化されたものとする。
【０２３３】
実施の形態３で説明したように、データ変換装置４００が入力する形式化画像データ７０３は、暗号化画像データ７１３にあたる部分に断片化したＸ‘ＦＦ’を含み、形式化画像データのフォーマットに違反している。
【０２３４】
暗号部分抽出部４５１は、（暗号化された）形式化画像データ７０３から部分データ５６３を生成する。
暗号解読部２５３は、部分データ５６３を解読して、解読部分データ６７３を生成する。
置換部４５４は、形式化画像データ７０３の一部を解読部分データ６７３で置換して（解読した）形式化画像データ７０４を生成する。
【０２３５】
暗号解読部２５３が暗号解読に使用した復号鍵が、正しく暗号鍵と対応するものであれば、解読部分データ６７３に含まれるＸ‘ＦＦ’やＸ‘００’は、形式化画像データ７０３の抽出されなかった部分に含まれるＸ‘００’やＸ‘ＦＦ’と結合し、Ｘ‘ＦＦ’のあとにＸ‘００’が現れる正常な形式の（解読した）形式化画像データ７０４となる。
【０２３６】
これにより、正しく暗号鍵と対応する復号鍵を有する閲覧者は、（暗号化された）形式化画像データ７０３が表わす画像を、（解読した）形式化画像データ７０４により閲覧することができる。
【０２３７】
一方、正しく暗号鍵と対応しない復号鍵で解読した場合には、よほどの偶然がないかぎり、正常な形式の形式化画像データを得ることはできない。
したがって、不正な閲覧者は、正しい画像を閲覧できないだけでなく、誤って解読した画像すら閲覧できない。
【０２３８】
この実施の形態におけるデータ変換装置４００は、
情報を処理するＣＰＵ９１１などの処理装置と、暗号部分抽出部４５１と、暗号処理部（暗号解読部２５３）と、置換部４５４とを有することを特徴とする。
暗号部分抽出部４５１は、ＣＰＵ９１１などの処理装置を用いて、符号化データ（暗号化された形式化画像データ）を入力し、ＣＰＵ９１１などの処理装置を用いて、入力した符号化データ（暗号化された形式化画像データ）のなかから一部を抽出して部分データとすることを特徴とする。
暗号処理部（暗号解読部２５３）は、ＣＰＵ９１１などの処理装置を用いて、暗号部分抽出部４５１が抽出した部分データを暗号処理（暗号解読）して処理済部分データ（解読部分データ）とすることを特徴とする。
置換部４５４は、ＣＰＵ９１１などの処理装置を用いて、符号化データ（暗号化された形式化画像データ）のうち、暗号部分抽出部４５１が抽出した部分を、暗号処理部（暗号解読部２５３）が暗号処理（暗号解読）した処理済部分データ（解読部分データ）で置換して処理済データ（解読された形式化画像データ）とし、ＣＰＵ９１１などの処理装置を用いて、置換した処理済データ（解読された形式化画像データ）を出力することを特徴とする。
【０２３９】
この実施の形態におけるデータ変換装置４００によれば、入力した符号化データをすべて暗号処理するのではなく、暗号部分抽出部４５１が抽出した部分データだけを暗号処理するので、暗号処理に必要な資源を節約することができ、効率のよい暗号解読を実現できるという効果を奏する。
【０２４０】
なお、暗号方式として、暗号化処理と暗号解読処理とをまったく同じ処理で実現できる暗号方式を採用した場合、暗号解読部２５３の構成は、実施の形態３で説明した暗号化部１５３の構成と同じでよいので、データ変換装置４００は、データ変換装置３００と同じ構成で実現できる。
したがって、１つの装置で、形式化画像データの暗号化と解読の両方を行うことができる。
【０２４１】
データ変換装置４００は、暗号化された形式化画像データの暗号を解読し、通常の形式化画像データを生成するので、従来の画像閲覧装置（例えば、ＪＰＥＧ画像デコーダ）の前段にカスケード接続することにより、容易に暗号機能を実装できる。
【０２４２】
実施の形態５．
実施の形態５について、図１９〜図２１を用いて説明する。
この実施の形態におけるデータ変換装置３００の外観、ハードウェア資源、機能ブロックの構成は、実施の形態３で説明したデータ変換装置３００と同様なので、ここでは説明を省略する。
【０２４３】
図１９は、この実施の形態における暗号部分抽出部３５１が抽出する部分データの一例を示す図である。
この例において、形式化画像データ７０２は、ＪＦＩＦ形式で形式化されているものとする。
【０２４４】
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、符号化画像データ７１２を含む形式化画像データ７０２を入力する。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データ７０２全体のなかから暗号部分を抽出し、部分データ５６４を生成する。
【０２４５】
次に、動作について説明する。
【０２４６】
図２０は、この実施の形態における暗号部分抽出部３５１が、部分データを生成する部分データ抽出処理の流れの一例を示すフローチャート図である。
なお、実施の形態１で説明した暗号部分抽出部１５１の部分データ抽出処理と共通する工程については、同一の符号を付し、ここでは説明を省略する。
【０２４７】
入力工程Ｓ１１において、暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部３１１が出力した形式化画像データを入力する。
暗号部分抽出部３５１は、ＲＡＭ９１４などの記憶装置を用いて、入力した形式化画像データを記憶する。
以下、暗号部分抽出部３５１は、実施の形態１で説明した暗号部分抽出部１５１が符号化画像データに対して行う処理と同様の処理を、形式化画像データに対して行う。
また、暗号部分抽出部３５１は、符号化データ検索処理をせず、入力した形式化画像データの先頭から、暗号部分の抽出を始める。
なお、部分データの抽出方式は、実施の形態２で説明した方式でもよいし、他の方式であってもよい。
【０２４８】
図２１は、この実施の形態における置換部３５４が、（暗号化された）形式化画像データを生成する部分データ置換処理の流れの一例を示すフローチャート図である。
なお、実施の形態１で説明した置換部１５４の部分データ置換処理と共通する工程については、同一の符号を付し、ここでは説明を省略する。
【０２４９】
入力工程Ｓ３１において、置換部３５４は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部３１１が出力した形式化画像データを入力する。
置換部３５４は、ＲＡＭ９１４などの記憶装置を用いて、入力した形式化画像データを記憶する。
以下、置換部３５４は、実施の形態１で説明した置換部１５４が符号化画像データに対して行う処理と同様の処理を、形式化画像データに対して行う。
また、置換部３５４は、入力した形式化画像データの先頭から、暗号部分の置換を始める。
なお、部分データの置換方式は、実施の形態２で説明した方式でもよいし、他の方式であってもよい。
【０２５０】
この実施の形態におけるデータ変換装置３００は、以下の点を特徴とする。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、所定の形式で形式化された形式化画像データを、符号化データとして入力し、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データ全体のなかから、一部を抽出して部分データとすることを特徴とする。
【０２５１】
この実施の形態におけるデータ変換装置３００によれば、暗号部分抽出部３５１が形式化画像データ全体から、部分データを抽出するので、符号化画像データに相当する部分だけでなく、量子化表や符号化表の一部も暗号化される。これにより、暗号を解読せずに画像を閲覧することが更に困難となるとともに、符号化画像データに相当する部分を検索する手間が省けるので、効率のよい暗号化を実現できるという効果を奏する。
【０２５２】
このように、画像データを、アドレスの先頭から一定サイズ（例えば８バイト）ごとに分割してブロックとする。画像データは、ブロック単位で暗号化する。
画像データは一般にサイズが大きく、データ全てを暗号化することは効率が悪い。画像の再生を防止するためには、データを全て暗号化する必要はなく、画像データの一部を暗号化することで、画像を効率よく復元不可能にすることができる。
【０２５３】
実施の形態６．
実施の形態６について説明する。
この実施の形態におけるデータ変換装置４００の外観、ハードウェア資源、機能ブロックの構成は、実施の形態４で説明したデータ変換装置４００と同様なので、ここでは説明を省略する。
【０２５４】
データ変換装置４００は、実施の形態５で説明したデータ変換装置３００が暗号化した形式化画像データを入力し、暗号を解読して、解読した形式化画像データを出力する。
【０２５５】
暗号部分抽出部４５１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部２７１が出力した（暗号化された）形式化画像データを入力する。（暗号化された）形式化画像データは、符号化データの一例である。
暗号部分抽出部４５１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データのなかから暗号化された部分を抽出して、部分データを生成する。
暗号部分抽出部４５１は、ＣＰＵ９１１などの処理装置を用いて、生成した部分データを出力する。
暗号部分抽出部４５１は、実施の形態５で説明した暗号部分抽出部３５１の符号化データ検索処理・部分データ抽出処理と同様の処理により、部分データを生成する。
【０２５６】
置換部４５４は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部２７１が出力した（暗号化された）形式化画像データを入力する。
置換部４５４は、ＣＰＵ９１１などの処理装置を用いて、暗号解読部２５３が出力した解読部分データを入力する。解読部分データは、処理済部分データの一例である。
置換部４５４は、ＣＰＵ９１１などの処理装置を用いて、入力した（暗号化された）形式化画像データのうち、暗号部分抽出部４５１が抽出した部分を、入力した解読部分データで置換して、（解読した）形式化画像データを生成する。（解読した）形式化画像データは、処理済データの一例である。
置換部４５４は、ＣＰＵ９１１などの処理装置を用いて、生成した（解読した）形式化画像データを出力する。
置換部４５４は、実施の形態５で説明した置換部３５４の部分データ置換処理と同様の処理を行う。
【０２５７】
この実施の形態におけるデータ変換装置４００は、以下の点を特徴とする。
暗号部分抽出部４５１は、ＣＰＵ９１１などの処理装置を用いて、所定の形式で形式化された形式化画像データを、符号化データとして入力し、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データ全体のなかから、一部を抽出して部分データとすることを特徴とする。
【０２５８】
この実施の形態におけるデータ変換装置４００によれば、暗号部分抽出部４５１が形式化画像データ全体から、部分データを抽出するので、符号化画像データに相当する部分を検索する手間が省け、効率のよい暗号解読を実現できるという効果を奏する。
【０２５９】
実施の形態７．
実施の形態７について、図２２〜図２５を用いて説明する。
この実施の形態におけるデータ変換装置３００の外観、ハードウェア構成は、実施の形態１で説明したデータ変換装置１００と同様なので、ここでは説明を省略する。
【０２６０】
図２２は、この実施の形態におけるデータ変換装置３００の機能ブロックの構成の一例を示すブロック構成図である。
なお、実施の形態３で説明したデータ変換装置３００の機能ブロックと共通するブロックについては、同一の符号を付し、ここでは説明を省略する。
【０２６１】
データ変換装置３００は、所定のフォーマットにしたがって形式化された形式化画像データを入力し、暗号化した形式化画像データを出力する。
この実施の形態におけるデータ変換装置３００は、実施の形態３と異なり、形式違反ではない形式化画像データを出力する。
したがって、データ変換装置３００が出力した形式化画像データを正しく解読できない閲覧装置であっても、形式違反により処理が中断することはなく、画像を表示できる。もちろん、形式化画像データを正しく解読していないので、表示される画像は正しくない画像である。
閲覧装置によっては、形式化画像データの形式違反を想定していないものがあり、形式違反により誤動作をする場合も考えられる。この実施の形態のデータ変換装置３００は、形式違反ではない形式化画像データを出力するので、閲覧装置の誤動作を防ぐことができる。
【０２６２】
データ変換装置３００は、形式化画像入力部３１１、形式解除部３９１、暗号部分抽出部３５１、暗号鍵記憶部１５２、暗号化部１５３、置換部３５４、形式補正部３８１、形式化画像出力部１７１を有する。
【０２６３】
形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部３１１が出力した形式化画像データを入力する。
形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データのなかから、符号化画像データにあたる部分を抽出する。
形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、抽出した符号化画像データにあたる部分に、形式化されている部分があればそれを解除し、もとの符号化画像データを生成する。
形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、生成したもとの符号化画像データを含む形式化画像データを出力する。形式解除部３９１が出力する形式化画像データは、符号化データの一例である。
ここで、形式化されている部分とは、例えば、ＪＦＩＦ形式において、Ｘ‘ＦＦ’のあとに挿入されたＸ‘００’を指す。形式化されている部分の解除とは、例えば、挿入されたＸ‘００’を削除することである。
【０２６４】
形式解除部３９１は、例えば、形式化画像データを複数回暗号化する場合に、後述する形式補正部３８１が形式化画像データを補正することにより、形式化画像データのサイズがどんどん大きくなってしまうことを防ぐためのものである。したがって、形式解除部３９１はなくてもよい。
【０２６５】
形式補正部３８１は、ＣＰＵ９１１などの処理装置を用いて、置換部３５４が出力した（暗号化された）形式化画像データを入力する。
形式補正部３８１は、ＣＰＵ９１１などの処理装置を用いて、入力した（暗号化された）形式化画像データに、形式違反となる部分があればそれを補正し、形式違反とならない形式化画像データを生成する。
形式補正部３８１は、ＣＰＵ９１１などの処理装置を用いて、生成した形式化画像データを出力する。
ここで、形式違反となる部分とは、例えば、ＪＦＩＦ形式において、断片化したＸ‘ＦＦ’を指す。形式違反となる部分の補正とは、例えば、断片化したＸ‘ＦＦ’のあとにＸ‘００’を挿入することである。
【０２６６】
図２３は、この実施の形態におけるデータ変換装置３００が生成する形式化画像データの一例を示す図である。
この例において、形式化画像データは、ＪＦＩＦ形式で形式化されているものとする。
【０２６７】
形式化画像データ７０５は、符号化画像データ７１５を含む。
形式化画像データ７０５に含まれる符号化画像データ７１５は、Ｘ‘ＦＦ’のあとにＸ‘００’が挿入されている。
形式解除部３９１は、符号化画像データ７１５に挿入されたＸ‘ＦＦ’のあとのＸ‘００’を削除して、形式化画像データ７０６を生成する。
暗号部分抽出部３５１は、形式解除部３９１が生成した形式化画像データ７０６に基づいて、部分データ５６６を生成する。
暗号化部１５３は、暗号部分抽出部３５１が生成した部分データ５６６を暗号化して、暗号化部分データ５７６を生成する。
暗号化部分データ５７６には、Ｘ‘ＦＦ’が含まれる場合がある。
置換部３５４は、形式化画像データ７０６の一部を、暗号化部分データ５７６で置換して、形式化画像データ７０７を生成する。
形式化画像データ７０７には、Ｘ‘ＦＦ’が含まれる場合がある。これは、暗号化部分データ５７６に含まれるＸ‘ＦＦ’や、形式化画像データ７０６に含まれていたＸ‘ＦＦ’のうち、暗号部分抽出部３５１が抽出しなかった部分にあったものである。
形式補正部３８１は、形式化画像データ７０７のうち符号化画像データにあたる部分にＸ‘ＦＦ’が含まれている場合、そのあとにＸ‘００’を挿入して、形式化画像データ７０８を生成する。
【０２６８】
次に、動作について説明する。
【０２６９】
図２４は、この実施の形態における形式解除部３９１が、形式化画像データの形式を解除する形式解除処理の流れの一例を示すフローチャート図である。
なお、形式解除処理に先立って、形式解除部３９１は、図１４で説明した符号化データ検索処理をして、符号化データの開始位置を算出しているものとする。
【０２７０】
入力工程Ｓ７１において、形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部３１１が出力した形式化画像データを入力する。
形式解除部３９１は、ＲＡＭ９１４などの記憶装置を用いて、入力した形式化画像データを記憶する。
【０２７１】
初期設定工程Ｓ７２において、形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、符号化データ検索処理で算出した開始位置を入力する。
形式解除部３９１は、ＲＡＭ９１４などの記憶装置を用いて、入力した開始位置を、解除位置として記憶する。
【０２７２】
第一検出工程Ｓ７３において、形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ７１（または後述する削除工程Ｓ７６）で記憶した形式化画像データのうち、初期設定工程Ｓ７２（または後述する解除位置更新工程Ｓ７７）で記憶した解除位置にあたるバイトのデータを取得する。
形式解除部３９１、ＣＰＵ９１１などの処理装置を用いて、取得したデータがＸ‘ＦＦ’であるか否かを判定する。
取得したデータがＸ‘ＦＦ’である場合、第二検出工程Ｓ７４へ進む。
取得したデータがＸ‘ＦＦ’でない場合、解除位置更新工程Ｓ７７へ進む。
【０２７３】
第二検出工程Ｓ７４において、形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ７１（または後述する削除工程Ｓ７６）で記憶した形式化画像データのうち、初期設定工程Ｓ７２（または後述する解除位置更新工程Ｓ７７）で記憶した解除位置の次にあたるバイトのデータを取得する。
形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、取得したデータがＸ‘００’であるか否かを判定する。
取得したデータがＸ‘００’である場合、削除工程Ｓ７６へ進む。
取得したデータがＸ‘００’でない場合、終了判定工程Ｓ７５へ進む。
【０２７４】
終了判定工程Ｓ７５において、形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ７２（または後述する解除位置更新工程Ｓ７７）で記憶した解除位置を、入力工程Ｓ７１（または後述する削除工程Ｓ７６）で記憶した形式化画像データの長さと比較する。
解除位置が（形式化画像データの長さ−２）より大きい場合、出力工程Ｓ７８へ進む。
解除位置が（形式化画像データの長さ−２）より小さい場合、解除位置更新工程Ｓ７７へ進む。
【０２７５】
削除工程Ｓ７６において、形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ７１（または削除工程Ｓ７６）で記憶した形式化画像データのうち、初期設定工程Ｓ７２（または後述する解除位置更新工程Ｓ７７）で記憶した解除位置の次にあたるバイトのデータ（＝Ｘ‘００’）を削除する。
形式解除部３９１は、ＲＡＭ９１４などの記憶装置を用いて、Ｘ‘００‘を削除したデータを、新たな形式化画像データとして記憶する。
【０２７６】
解除位置更新工程Ｓ７７において、形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ７２（または解除位置更新工程Ｓ７７）で記憶した解除位置に１を加える。
形式解除部３９１は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな解除位置として記憶する。
その後、第一検出工程Ｓ７３に戻る。
【０２７７】
出力工程Ｓ７８において、形式解除部３９１は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ７１（または削除工程Ｓ７６）で記憶した形式化画像データを出力する。
【０２７８】
図２５は、この実施の形態における形式補正部３８１が、形式化画像データを補正する形式補正処理の流れの一例を示すフローチャート図である。
【０２７９】
入力工程Ｓ９１において、形式補正部３８１は、ＣＰＵ９１１などの処理装置を用いて、置換部３５４が出力した（暗号化された）形式化画像データを入力する。
形式補正部３８１は、ＲＡＭ９１４などの記憶装置を用いて、入力した形式化画像データを記憶する。
【０２８０】
初期設定工程Ｓ９２において、形式補正部３８１は、ＣＰＵ９１１などの処理装置を用いて、符号化データ検索処理で算出した開始位置を入力する。
形式補正部３８１は、ＲＡＭ９１４などの記憶装置を用いて、入力した開始位置を、補正位置として記憶する。
【０２８１】
検出工程Ｓ９３において、形式補正部３８１は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ９１（または後述する挿入工程Ｓ９５）で記憶した形式化画像データのうち、初期設定工程Ｓ９２（または後述する補正位置更新工程Ｓ９６）で記憶した補正位置にあたるバイトのデータを取得する。
形式補正部３８１は、ＣＰＵ９１１などの処理装置を用いて、取得したデータがＸ‘ＦＦ’であるか否かを判定する。
取得したデータがＸ‘ＦＦ’である場合、終了判定工程Ｓ９４へ進む。
取得したデータがＸ‘ＦＦ’でない場合、補正位置更新工程Ｓ９６へ進む。
【０２８２】
終了判定工程Ｓ９４において、形式補正部３８１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ９２（または後述する補正位置更新工程Ｓ９６）で記憶した補正位置を、入力工程Ｓ９１（または後述する挿入工程Ｓ９５）で記憶した形式化画像データの長さと比較する。
補正位置が（形式化画像データの長さ−２）より大きい場合、出力工程Ｓ９７へ進む。
補正位置が（形式化画像データの長さ−２）より小さい場合、挿入工程Ｓ９５へ進む。
【０２８３】
挿入工程Ｓ９５において、形式補正部３８１は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ９１（または挿入工程Ｓ９５）で記憶した形式化画像データの、初期設定工程Ｓ９２（または補正位置更新工程Ｓ９６）で記憶した補正位置の次に、Ｘ‘００’を挿入する。
形式補正部３８１は、ＲＡＭ９１４などの記憶装置を用いて、Ｘ‘００’を挿入したデータを、新たな形式化画像データとして記憶する。
【０２８４】
補正位置更新工程Ｓ９６において、形式補正部３８１は、ＣＰＵ９１１などの処理装置を用いて、初期設定工程Ｓ９２（または補正位置更新工程Ｓ９６）で記憶した補正位置に１を加える。
形式補正部３８１は、ＲＡＭ９１４などの記憶装置を用いて、加えた結果を、新たな補正位置として記憶する。
その後、検出工程Ｓ９３に戻る。
【０２８５】
出力工程Ｓ９７において、形式補正部３８１は、ＣＰＵ９１１などの処理装置を用いて、入力工程Ｓ９１（または挿入工程Ｓ９５）で記憶した形式化画像データを出力する。
【０２８６】
なお、この例は、形式化画像データがＪＦＩＦ形式である場合の例であり、他の形式の場合には、形式補正部３８１は、その形式に合致するよう、形式化画像データを補正する。
【０２８７】
このように、形式補正部３８１が暗号化した形式化画像データを補正して、形式違反とならない形式化画像データを生成するので、閲覧装置の誤動作による不具合を防止できる。
【０２８８】
この実施の形態におけるデータ変換装置３００は、更に、形式補正部３８１を有することを特徴とする。
暗号部分抽出部３５１は、ＣＰＵ９１１などの処理装置を用いて、所定の形式で形式化された形式化画像データを、符号化データとして入力し、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データのなかから部分データを抽出することを特徴とする。
形式補正部３８１は、ＣＰＵ９１１などの処理装置を用いて、置換部３５４が出力した処理済データ（暗号化された形式化画像データ）の形式を補正して処理済形式化画像データ（補正された形式化画像データ）とし、ＣＰＵ９１１などの処理装置を用いて、補正した処理済形式化画像データ（補正された形式化画像データ）を出力することを特徴とする。
【０２８９】
この実施の形態におけるデータ変換装置３００によれば、所定の形式で形式化された形式化画像データを暗号処理した結果、形式違反となった場合であっても、形式補正部３８１が形式を補正して出力するので、形式違反の形式化画像データに対処できない閲覧装置などが誤動作するのを防ぐことができるという効果を奏する。
【０２９０】
実施の形態８．
実施の形態８について、図２６を用いて説明する。
この実施の形態におけるデータ変換装置４００の外観、ハードウェア資源は、実施の形態４で説明したデータ変換装置４００と同様なので、ここでは説明を省略する。
【０２９１】
図２６は、この実施の形態におけるデータ変換装置４００の機能ブロックの構成の一例を示すブロック構成図である。
なお、実施の形態４で説明したデータ変換装置４００の機能ブロックと共通するブロックについては、同一の符号を付し、ここでは説明を省略する。
【０２９２】
データ変換装置４００は、形式化画像入力部２７１、形式解除部４９１、暗号部分抽出部４５１、復号鍵記憶部２５２、暗号解読部２５３、置換部４５４、形式補正部４８１、形式化画像出力部４１１を有する。
データ変換装置４００は、実施の形態７で説明したデータ変換装置３００が暗号化した形式化画像データを入力し、暗号を解読して、解読した形式化画像データを出力する。
【０２９３】
形式解除部４９１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部２７１が出力した（暗号化された）形式化画像データを入力する。
形式解除部４９１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データのなかから、符号化画像データにあたる部分を抽出する。
形式解除部４９１は、ＣＰＵ９１１などの処理装置を用いて、抽出した符号化画像データにあたる部分に、形式化されている部分があればそれを解除し、もとの（暗号化された）符号化画像データを生成する。
形式解除部４９１は、ＣＰＵ９１１などの処理装置を用いて、生成したもとの（暗号化された）符号化画像データを含む形式化画像データを出力する。形式解除部４９１が出力する形式化画像データは、符号化データの一例である。
【０２９４】
形式補正部４８１は、ＣＰＵ９１１などの処理装置を用いて、置換部４５４が出力した（解読された）形式化画像データを入力する。
形式補正部４８１は、ＣＰＵ９１１などの処理装置を用いて、入力した（解読された）形式化画像データに、形式違反となる部分があればそれを補正し、形式違反とならない形式化画像データを生成する。
形式補正部４８１は、ＣＰＵ９１１などの処理装置を用いて、生成した形式化画像データを出力する。
【０２９５】
形式解除部４９１の動作は、実施の形態７で説明した形式解除部３９１の動作と同様なので、ここでは説明を省略する。
形式補正部４８１の動作は、実施の形態７で説明した形式補正部３８１の動作と同様なので、ここでは説明を省略する。
【０２９６】
実施の形態７で説明したデータ変換装置３００は、（暗号化された）形式化画像データを、形式違反とならないように補正して出力する。したがって、暗号を解読する前に、４９１が形式を解除しなければ、正しく解読することができない。
【０２９７】
したがって、データ変換装置４００が、実施の形態７で説明したデータ変換装置３００が出力した形式化画像データではなく、実施の形態３や実施の形態５で説明したデータ変換装置３００が出力した（形式違反を含む）形式化画像データを入力する場合には、形式解除部４９１がなくてもよい。
また、形式解除部４９１は、入力した形式化画像データに形式違反が含まれるか否かを判定し、形式違反が含まれない場合には、実施の形態７で説明したデータ変換装置３００が出力した形式化画像データであると判断して、形式を解除することとしてもよい。
【０２９８】
実施の形態７で説明したデータ変換装置３００は、形式化画像データを形式解除してから、暗号化する。したがって、正しい復号鍵で解読された形式化画像データには、形式違反となる部分が含まれる可能性がある。
そこで、置換部４５４が出力した（解読された）形式化画像データを、形式補正部４８１が、形式違反とならないように補正する。これにより、もとの形式化画像データが復元される。
【０２９９】
また、復号鍵が正しくない場合など、もとの形式化画像データが正しく復元できない場合、置換部４５４が出力する形式化画像データは、形式違反を含む場合がある。
そのような場合、データ変換装置４００が出力した形式化画像データを表示しようとした閲覧装置が、形式違反によって誤動作するのを防ぐため、形式補正部４８１が形式を補正する。
【０３００】
この実施の形態におけるデータ変換装置４００は、更に、形式補正部３８１を有することを特徴とする。
暗号部分抽出部４５１は、ＣＰＵ９１１などの処理装置を用いて、所定の形式で形式化された形式化画像データを、符号化データとして入力し、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データのなかから部分データを抽出することを特徴とする。
形式補正部４８１は、ＣＰＵ９１１などの処理装置を用いて、置換部４５４が出力した処理済データ（解読された形式化画像データ）の形式を補正して処理済形式化画像データ（補正された形式化画像データ）とし、ＣＰＵ９１１などの処理装置を用いて、補正した処理済形式化画像データ（補正された形式化画像データ）を出力することを特徴とする。
【０３０１】
この実施の形態におけるデータ変換装置４００によれば、正しくない復号鍵で暗号解読した場合など、解読された形式化画像データが形式違反となった場合であっても、形式補正部４８１が形式を補正して出力するので、形式違反の形式化画像データに対処できない閲覧装置などが誤動作するのを防ぐことができるという効果を奏する。
【０３０２】
この実施の形態におけるデータ変換装置４００は、更に、形式解除部４９１を有することを特徴とする。
形式解除部４９１は、ＣＰＵ９１１などの処理装置を用いて、所定の形式で形式化された形式化画像データを入力し、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データの形式を解除して解除済形式化画像データとすることを特徴とする。
暗号部分抽出部４５１は、ＣＰＵ９１１などの処理装置を用いて、形式解除部４９１が形式を解除した解除済形式化画像データを、符号化データとして入力し、ＣＰＵ９１１などの処理装置を用いて、入力した解除済形式化画像データのなかから部分データを抽出することを特徴とする。
【０３０３】
この実施の形態におけるデータ変換装置４００によれば、形式解除部４９１が、補正された形式化画像データの形式を解除して、補正前の形式化画像データに戻してから、暗号処理をするので、実施の形態７におけるデータ変換装置３００が出力する形式化画像データのように形式を補正した形式化画像データを正しく暗号解読することができるという効果を奏する。
【０３０４】
以上説明したデータ変換装置４００がデータを変換するデータ変換方法は、
実施の形態７で説明したデータ変換方法によって暗号化された形式化された暗号化データ（形式化画像データ）を復号化（解読）するデータ変換方法であって、以下の全ての処理を有するデータ変換方法である。
（１）形式化された暗号化データ（形式化画像データ）から暗号化されたデータ本体（暗号化画像データ）を抽出する符号化データ抽出処理。
（２）暗号化されたデータ本体（暗号化画像データ）から暗号化された部分データを抽出する復号位置抽出処理（部分データ抽出処理）。
（３）復号位置抽出処理で抽出された暗号化された部分データを所定の鍵データ（復号鍵）と復号方法で復号化（解読）し、復号化された部分データ（解読部分データ）を生成する復号化処理（暗号解読処理）。
（４）前記暗号化されたデータ本体（暗号化画像データ）の前記暗号化された部分データを対応する前記復号化（解読）された部分データ（解読部分データ）に置換するデータ置換処理（部分データ置換処理）。
（５）前記置換された暗号化データ（解読画像データ）を所定の形式に従い形式化する形式補正処理。
【０３０５】
データ変換装置４００は、解読した形式化画像データが形式違反の場合に形式を補正したデータを出力するので、既存の画像閲覧装置の前段にカスケード接続した場合などにおいて、形式違反による画像閲覧装置のハングアップを防止できる。
【０３０６】
実施の形態９．
実施の形態９について、図２７を用いて説明する。
この実施の形態におけるデータ変換装置３００の外観、ハードウェア資源は、実施の形態１で説明したデータ変換装置１００と同様なので、ここでは説明を省略する。
【０３０７】
図２７は、この実施の形態におけるデータ変換装置３００の機能ブロックの構成の一例を示すブロック構成図である。
なお、実施の形態１で説明したデータ変換装置１００の機能ブロックと共通するブロックについては、同一の符号を付し、ここでは説明を省略する。
【０３０８】
データ変換装置３００は、形式化画像入力部３１１、分解部２６１、量子化表記憶部１３１、符号化表記憶部１４１、暗号部分抽出部１５１、暗号鍵記憶部１５２、暗号解読部２５３、置換部１５４、形式化部１６１、形式化画像出力部１７１を有する。
【０３０９】
形式化画像入力部３１１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像データを入力する。
形式化画像入力部３１１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データを出力する。
【０３１０】
分解部２６１は、ＣＰＵ９１１などの処理装置を用いて、形式化画像入力部３１１が出力した形式化画像データを入力する。
分解部２６１は、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データに基づいて、量子化表と、符号化表と、暗号化画像データとを取得する。
分解部２６１は、ＣＰＵ９１１などの処理装置を用いて、取得した量子化表と、符号化表と、暗号化画像データとを出力する。
【０３１１】
量子化表記憶部１３１は、ＣＰＵ９１１などの処理装置を用いて、分解部２６１が出力した量子化表を入力する。
量子化表記憶部１３１は、ＲＡＭ９１４などの記憶装置を用いて、入力した量子化表を記憶する。
【０３１２】
符号化表記憶部１４１は、ＣＰＵ９１１などの処理装置を用いて、分解部２６１が出力した符号化表を入力する。
符号化表記憶部１４１は、ＲＡＭ９１４などの記憶装置を用いて、入力した符号化表を記憶する。
【０３１３】
この実施の形態におけるデータ変換装置３００は、形式化画像データを分解して、符号化画像データを取得し、取得した符号化画像データの一部を暗号化して暗号化画像データを生成し、再び形式化して（暗号化された）形式化画像データを生成する。
分解部２６１は、形式化画像データから符号化画像データを取得するときに形式を解除する。
また、形式化部１６１は、暗号化画像データを符号化画像データとして、形式化画像データを生成する。
したがって、データ変換装置３００は、実施の形態１のデータ変換装置１００が原画像データから生成した場合と同様の（暗号化された）形式化画像データを出力する。
【０３１４】
この実施の形態におけるデータ変換装置３００は、更に、分解部２６１と、形式化部１６１とを有することを特徴とする。
分解部２６１は、ＣＰＵ９１１などの処理装置を用いて、所定の形式で形式化された形式化画像データを入力し、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データに基づいて、符号化画像データと符号化表と量子化表とを取得することを特徴とする。
暗号部分抽出部１５１は、ＣＰＵ９１１などの処理装置を用いて、分解部２６１が取得した符号化画像データを符号化データとして入力することを特徴とする。
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、置換部１５４が出力した処理済データと分解部２６１が取得した符号化表と分解部２６１が取得した量子化表とに基づいて、処理済形式化データ（暗号化された形式化画像データ）を生成し、ＣＰＵ９１１などの処理装置を用いて、生成した処理済形式化データ（暗号化された形式化画像データ）を出力することを特徴とする。
【０３１５】
この実施の形態におけるデータ変換装置３００によれば、所定の形式で形式化された形式化画像データを、分解部２６１が分解して符号化画像データを取得し、取得した符号化画像データを暗号処理するので、実施の形態１におけるデータ変換装置１００が原画像データから生成する形式化画像データと同一の処理済形式化データを、形式化画像データから生成することができるという効果を奏する。
【０３１６】
以上説明したデータ変換装置４００がデータを変換するデータ変換方法は、
算術符号によって符号化され、かつ所定の形式により形式化された符号化データ（形式化画像データ）を暗号化するデータ変換方法であって、以下の処理を有するデータ変換方法である。
（１）形式化された符号化データ（形式化画像データ）中から、符号化されたデータ本体（符号化画像データ）を抽出する符号化データ抽出処理。
（２）前記符号化データ抽出処理により抽出された前記符号化されたデータ本体（符号化画像データ）を複数のデータブロックに分割し、分割したブロック内で暗号化を行うデータの配置の分布が一様になるように、前記暗号化を行うデータ（部分データ）を前記符号化されたデータ本体から選択する暗号位置抽出処理（部分データ抽出処理）。
（３）前記選択されたデータ（部分データ）を暗号化する暗号化処理。
（４）前記暗号化されたデータ（暗号化部分データ）を前記形式化された符号化データ中の前期選択されたデータと置換するデータ置換処理。
（５）前記置換されたデータを所定の形式に従い形式化する形式化処理。
【０３１７】
以上説明したデータ変換装置４００がデータを変換するデータ変換方法は、
暗号位置抽出処理において、データの先頭に近い部分のデータブロックでは抽出する暗号化部分データの割合を多くし、遠くなるにしたがってその割合を下げるデータ変換方法である。
【０３１８】
データ変換装置３００は、所定の形式で形式化された形式化画像データを入力し、形式化された表現を解いて符号化画像データを取得し、取得した符号化画像データについて暗号処理をする。暗号処理のあと、データ変換装置３００は、形式化処理を行い、その結果を、所定の形式で形式化された形式化画像データとして出力する。
したがって、データ変換装置３００は、形式違反となる形式化画像データを出力することがない。
【０３１９】
実施の形態１０．
実施の形態１０について、図２８を用いて説明する。
この実施の形態におけるデータ変換装置４００の外観、ハードウェア構成は、実施の形態１で説明したデータ変換装置１００と同様なので、ここでは説明を省略する。
【０３２０】
図２８は、この実施の形態におけるデータ変換装置４００の機能ブロックの構成の一例を示すブロック構成図である。
なお、実施の形態２で説明したデータ変換装置２００の機能ブロックと共通するブロックについては、同一の符号を付し、ここでは説明を省略する。
【０３２１】
データ変換装置４００は、形式化画像入力部２７１、分解部２６１、量子化表記憶部２３１、符号化表記憶部２４１、暗号部分抽出部２５１、復号鍵記憶部２５２、暗号解読部２５３、置換部２５４、形式化部１６１、形式化画像出力部４１１を有する。
【０３２２】
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、置換部２５４が出力した暗号化画像データを入力する。
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、量子化表記憶部２３１が記憶した量子化表を入力する。
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、符号化表記憶部２４１が記憶した符号化表を入力する。
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、入力した暗号化画像データと、入力した量子化表と、入力した符号化表とに基づいて、形式化画像データを生成する。
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、生成した形式化画像データを出力する。
【０３２３】
形式化画像出力部４１１は、ＣＰＵ９１１などの処理装置を用いて、形式化部１６１が出力した（解読された）形式化画像データを入力する。
形式化画像出力部４１１は、ＣＰＵ９１１などの処理装置を用いて、入力した（解読された）形式化画像データを出力する。
【０３２４】
この実施の形態におけるデータ変換装置４００は、実施の形態１で説明したデータ変換装置１００または実施の形態７で説明したデータ変換装置３００が出力した（暗号化された）形式化画像データを入力し、暗号を解読する。データ変換装置４００は、解読した結果に基づいて、暗号化されていない形式化画像データを生成する。
【０３２５】
この実施の形態におけるデータ変換装置４００は、更に、分解部２６１と、形式化部１６１とを有することを特徴とする。
分解部２６１は、ＣＰＵ９１１などの処理装置を用いて、所定の形式で形式化された形式化画像データを入力し、ＣＰＵ９１１などの処理装置を用いて、入力した形式化画像データに基づいて、符号化画像データと符号化表と量子化表とを取得することを特徴とする。
暗号部分抽出部２５１は、ＣＰＵ９１１などの処理装置を用いて、分解部２６１が取得した符号化画像データを符号化データとして入力することを特徴とする。
形式化部１６１は、ＣＰＵ９１１などの処理装置を用いて、置換部２５４が出力した処理済データと分解部２６１が取得した符号化表と分解部２６１が取得した量子化表とに基づいて、処理済形式化データ（暗号化された形式化画像データ）を生成し、ＣＰＵ９１１などの処理装置を用いて、生成した処理済形式化データ（暗号化された形式化画像データ）を出力することを特徴とする。
【０３２６】
この実施の形態におけるデータ変換装置４００によれば、所定の形式で形式化され、暗号化された形式化画像データを、分解部２６１が分解して符号化画像データを取得し、取得した符号化画像データを暗号処理するので、実施の形態１におけるデータ変換装置１００が生成した形式化画像データや実施の形態９におけるデータ変換装置３００が生成した処理済形式化データを入力し、暗号を解読した処理済形式化データ（解読された形式化画像データ）を生成することができるという効果を奏する。
【図面の簡単な説明】
【０３２７】
【図１】実施の形態１におけるデータ変換装置１００の外観の一例を示す図。
【図２】実施の形態１におけるデータ変換装置１００のハードウェア資源の一例を示す図。
【図３】実施の形態１におけるデータ変換装置１００の機能ブロックの構成の一例を示すブロック構成図。
【図４】実施の形態１における暗号部分抽出部１５１が抽出する部分データの一例を示す図。
【図５】実施の形態１における置換部１５４が生成する暗号化画像データの一例を示す図。
【図６】ＪＦＩＦ形式の形式化画像データの一例を示す図。
【図７】実施の形態１における形式化部１６１が生成する形式化画像データの一例を示す図。
【図８】実施の形態１における暗号部分抽出部１５１が、部分データを生成する部分データ抽出処理の流れの一例を示すフローチャート図。
【図９】実施の形態１における置換部１５４が、暗号化画像データを生成する部分データ置換処理の流れの一例を示すフローチャート図。
【図１０】実施の形態２におけるデータ変換装置２００の機能ブロックの構成の一例を示すブロック構成図。
【図１１】実施の形態３におけるデータ変換装置３００の機能ブロックの構成の一例を示すブロック構成図。
【図１２】実施の形態３における暗号部分抽出部３５１が抽出する部分データの一例を示す図。
【図１３】実施の形態３における置換部３５４が生成する形式化画像データの一例を示す図。
【図１４】実施の形態３における暗号部分抽出部３５１が、形式化画像データのなかから符号化画像データの開始位置を検索する符号化データ検索処理の流れの一例を示すフローチャート図。
【図１５】実施の形態３における暗号部分抽出部３５１が、部分データを生成する部分データ抽出処理の流れの一例を示すフローチャート図。
【図１６】実施の形態３における置換部３５４が（暗号化された）形式化画像データを生成する部分データ置換処理の流れの一例を示すフローチャート図。
【図１７】実施の形態４におけるデータ変換装置４００の機能ブロックの構成の一例を示すブロック構成図。
【図１８】実施の形態４におけるデータ変換装置４００が生成する形式化画像データの一例を示す図。
【図１９】実施の形態５における暗号部分抽出部３５１が抽出する部分データの一例を示す図。
【図２０】実施の形態５における暗号部分抽出部３５１が、部分データを生成する部分データ抽出処理の流れの一例を示すフローチャート図。
【図２１】実施の形態５における置換部３５４が、（暗号化された）形式化画像データを生成する部分データ置換処理の流れの一例を示すフローチャート図。
【図２２】実施の形態７におけるデータ変換装置３００の機能ブロックの構成の一例を示すブロック構成図。
【図２３】実施の形態７におけるデータ変換装置３００が生成する形式化画像データの一例を示す図。
【図２４】実施の形態７における形式解除部３９１が、形式化画像データの形式を解除する形式解除処理の流れの一例を示すフローチャート図。
【図２５】実施の形態７における形式補正部３８１が、形式化画像データを補正する形式補正処理の流れの一例を示すフローチャート図。
【図２６】実施の形態８におけるデータ変換装置４００の機能ブロックの構成の一例を示すブロック構成図。
【図２７】実施の形態９におけるデータ変換装置３００の機能ブロックの構成の一例を示すブロック構成図。
【図２８】実施の形態１０におけるデータ変換装置４００の機能ブロックの構成の一例を示すブロック構成図。
【符号の説明】
【０３２８】
１００，２００，３００，４００  データ変換装置、１１１  原画像入力部、１２１  周波数変換部、１３１，２３１  量子化表記憶部、１３２  量子化部、１４１，２４１  符号化表記憶部、１４２  符号化部、１５１，２５１，３５１，４５１  暗号部分抽出部、１５２  暗号鍵記憶部、１５３  暗号化部、１５４，２５４，３５４，４５４  置換部、１６１  形式化部、１７１，４１１  形式化画像出力部、２１１  再生画像出力部、２２１  周波数逆変換部、２３２  逆量子化部、２４２  復号部、２５２  復号鍵記憶部、２５３  暗号解読部、２６１  分解部、２７１，３１１  形式化画像入力部、３８１，４８１  形式補正部、３９１，４９１  形式解除部、５０１〜５０２，７１２，７１５  符号化画像データ、５１１〜５３０  ブロック、５４１〜５５０  抽出部分、５６１〜５６６  部分データ、５７１〜５７６  暗号化部分データ、５８１〜５９０  置換部分、６０１，７１３  暗号化画像データ、６７３  解読部分データ、７０１〜７０８  形式化画像データ、９０１  表示装置、９０２  キーボード、９０３  マウス、９０４  ＦＤＤ、９０５  ＣＤＤ、９０６  プリンタ装置、９０７  スキャナ装置、９１０  システムユニット、９１１  ＣＰＵ、９１２  バス、９１３  ＲＯＭ、９１４  ＲＡＭ、９１５  通信装置、９２０  磁気ディスク装置、９２１  ＯＳ、９２２  ウィンドウシステム、９２３  プログラム群、９２４  ファイル群、９３１  電話器、９３２  ファクシミリ機、９４０  インターネット、９４１  ゲートウェイ、９４２  ＬＡＮ。
【図１】
2008131556.tif 000003
【図２】
2008131556.tif 000004
【図３】
2008131556.tif 000005
【図４】
2008131556.tif 000006
【図５】
2008131556.tif 000007
【図６】
2008131556.tif 000008
【図７】
2008131556.tif 000009
【図８】
2008131556.tif 000010
【図９】
2008131556.tif 000011
【図１０】
2008131556.tif 000012
【図１１】
2008131556.tif 000013
【図１２】
2008131556.tif 000014
【図１３】
2008131556.tif 000015
【図１４】
2008131556.tif 000016
【図１５】
2008131556.tif 000017
【図１６】
2008131556.tif 000018
【図１７】
2008131556.tif 000019
【図１８】
2008131556.tif 000020
【図１９】
2008131556.tif 000021
【図２０】
2008131556.tif 000022
【図２１】
2008131556.tif 000023
【図２２】
2008131556.tif 000024
【図２３】
2008131556.tif 000025
【図２４】
2008131556.tif 000026
【図２５】
2008131556.tif 000027
【図２６】
2008131556.tif 000028
【図２７】
2008131556.tif 000029
【図２８】
2008131556.tif 000030