(57)【要約】【課題】画像データの改ざんが行われても、最下位ビットプレーン以外の画像データから再度計算された改ざん検知用データと埋め込まれたデータを比較することにより、改ざん有りか無しかを検知することができる。【解決手段】主走査Ｘ画素×副走査Ｙ画素×階調Ｚビット単位のブロックデータを格納する第１のメモリ２−１と、画像の処理ブロック位置を認識するための画素カウンタ２−２と、ＬＳＢビットプレーンを保存するための第２のメモリ２−２’と、１画素毎のＬＳＢ以外のデータをＸ×Ｙ画素分保存するための第３のメモリ２−３と、誤り検出用冗長データ生成器２−４と、誤り検出用冗長データ生成結果を格納する第３のメモリ２−５と、誤り検出用冗長データを主Ｘ×副Ｙのビットプレーンに割り付ける埋め込み器２−６と、誤り検出用冗長データとＬＳＢ以外の元画素データを結合し、元の主走査Ｘ画素×副走査Ｙ画素×階調Ｚビットの画像データに戻す配列器２−７とを具備する。【選択図】        図２
2004363990.tif 000002
【特許請求の範囲】
【請求項１】
画像データにおける任意の位置の改ざんを検知する画像改ざん検知装置において、
主走査Ｘ画素×副走査Ｙ画素×階調Ｚビット単位の入力された画像ブロックデータを格納する第１のメモリと、
入力された画像の処理ブロック位置を認識する画素カウンタと、
階調データＺビットからＬＳＢ以外のビットプレーンを決定し、該ビットプレーンのデータをＸ×Ｙ画素分保存する第２のメモリと、
ＬＳＢビットプレーンのデータをＸ×Ｙ画素分保存する第３のメモリと、
誤り検出用冗長ビットデータを生成する生成器と、
該誤り検出用冗長ビットデータの生成結果を格納する第４のメモリと、
該誤り検出用冗長ビットデータを主走査Ｘ×副走査Ｙのビットプレーンに割り付ける埋め込み器と、
該誤り検出用冗長ビットデータと該ＬＳＢ以外の元画素データとを結合し、元の主走査Ｘ画素×副走査Ｙ画素×階調Ｚビットの画像データに戻す配列器とを有することを特徴とする改ざん検知装置。
【請求項２】
請求項１記載の改ざん検知装置において、
前記誤り検出用冗長ビットデータ生成器は、誤り検出用冗長ビットデータを計算する生成多項式演算回路であることを特徴とする改ざん検知装置。
【請求項３】
画像データにおける任意の位置の改ざんを検知する画像改ざん検知装置において、
任意の画素サイズ単位のブロックデータを格納する第１のメモリと、
入力された画像の処理ブロック位置を認識する画素カウンタと、
ＬＳＢ以外のビットプレーンのデータを保存する第２のメモリと、
該ＬＳＢビットプレーンのデータを保存する第３のメモリと、
任意の画素サイズに適応した誤り検出用冗長データ計算のための生成多項式を決定する回路と、
該生成多項式決定回路により決定された構成で、誤り検出用冗長ビットデータを生成する生成器と、
該誤り検出用冗長ビットデータの生成結果を格納する第４のメモリと、
該誤り検出用冗長ビットデータを主走査Ｘ×副走査Ｙのビットプレーンに割り付ける埋め込み器と、
該誤り検出用冗長ビットデータと任意の元画素データとを結合し、元の主走査Ｘ画素×副走査Ｙ画素×階調Ｚビットの画像データに戻す配列器とを有することを特徴とする改ざん検知装置。
【請求項４】
請求項３記載の改ざん検知装置において、
前記各手段に加えて、さらに入力される画像ブロックデータの画素サイズを設定する設定レジスタを設けたことを特徴とする改ざん検知装置。
【請求項５】
画像データにおける任意の位置の改ざんを検知する画像改ざん検知装置において、
任意の画素サイズ単位のブロックデータを格納する第１のメモリと、
入力された画像の処理ブロック位置を認識する画素カウンタと、
任意の画素サイズ単位と階調データのＺビットから誤り検出用冗長ビットデータを埋め込むビットプレーンの階数と位置を選択する検知確度設定レジスタと、
該検知確度設定レジスタにより決定された階数と位置の誤り検出用冗長ビットデータ埋め込み用ビットプレーンを保存する第３のメモリと、
該誤り検出用冗長ビットデータ埋め込み用ビットプレーン以外のビットプレーンのデータを保存する第２のメモリと、
誤り検出用冗長ビットデータを生成する生成器と、
該誤り検出用冗長ビットデータの生成結果を格納する第４のメモリと、
該誤り検出用冗長ビットデータを主走査Ｘ×副走査Ｙのビットプレーンに割り付ける埋め込み器と、
該誤り検出用冗長ビットデータと任意の元画素データとを結合し、元の主走査Ｘ画素×副走査Ｙ画素×階調Ｚビットの画像データに戻す配列器とを有することを特徴とする改ざん検知装置。
【請求項６】
画像データにおける任意の位置の改ざんを検知する画像改ざん検知装置において、
任意の画素サイズ単位のブロックデータを格納する第１のメモリと、
入力された画像の処理ブロック位置を認識する画素カウンタと、
任意の画素サイズ単位と階調データのＺビットから誤り検出用冗長ビットデータを埋め込むビットプレーンの階数と位置を選択する検知確度設定レジスタと、
該検知確度設定レジスタにより決定された階数と位置の誤り検出用冗長ビットデータ埋め込み用ビットプレーンを保存する第３のメモリと、
該誤り検出用冗長ビットデータ埋め込み用ビットプレーン以外のビットプレーンのデータを保存する第２のメモリと、
任意の画素サイズに適応した誤り検出用冗長データ計算のための生成多項式を決定する回路と、
該生成多項式決定回路により決定された構成で、誤り検出用冗長ビットデータを生成する生成器と、
該誤り検出用冗長ビットデータの生成結果を格納する第４のメモリと、
該誤り検出用冗長ビットデータを主走査Ｘ×副走査Ｙのビットプレーンに割り付ける埋め込み器と、
該誤り検出用冗長ビットデータと任意の元画素データとを結合し、元の主走査Ｘ画素×副走査Ｙ画素×階調Ｚビットの画像データに戻す配列器とを有することを特徴とする改ざん検知装置。
【請求項７】
画像データにおける任意の位置の改ざんを検知する画像改ざん検知装置において、
主走査Ｘ画素×副走査Ｙ画素×階調Ｚビット単位の入力された画像ブロックデータを格納する第１のメモリと、
入力された画像の処理ブロック位置を認識する画素カウンタと、
階調データＺビットからＬＳＢ以外のビットプレーンを決定し、該ビットプレーンのデータをＸ×Ｙ画素分保存する第２のメモリと、
ＬＳＢビットプレーンのデータをＸ×Ｙ画素分保存する第３のメモリと、
誤り検出用冗長ビットデータを生成する生成器と、
該誤り検出用冗長ビットデータの生成結果を格納する第４のメモリと、
乱数発生器と、
該乱数発生器で発生した乱数値の場所を配列する配列器と、
該誤り検出用冗長ビットデータを主走査Ｘ×副走査Ｙのビットプレーンに対して、該配列器の配列通りに割り付ける埋め込み器と、
該誤り検出用冗長ビットデータとＬＳＢ以外の元画素データを結合し、元の主走査Ｘ画素×副走査Ｙ画素×階調Ｚビットの画像データに戻すための配列器とを有することを特徴とする改ざん検知装置。
【請求項８】
請求項３から請求項６までのいずれかに記載の改ざん検知装置において、
前記埋め込み器は、乱数発生器で発生した乱数値の場所を配列する配列器の配列通りに、該誤り検出用冗長ビットデータを主走査Ｘ×副走査Ｙのビットプレーンに対して埋め込むことを特徴とする改ざん検知装置。
【請求項９】
画像データの改ざんを検知する画像改ざん検知装置に保存されたデータを元の画像データに戻すための復元方法において、
誤り検出用冗長ビットデータが埋め込まれたＬＳＢ以外のビットプレーン専用メモリから主走査８画素×副走査８画素×階調７ビットの計４４８ビットデータを読み出し、
読み出した該ビットデータを誤り検出用冗長データ生成器に入力し、
該誤り検出用冗長データ生成器により１行分の画素データについてそれぞれ演算を行い、
演算結果である各誤り検出用冗長データを、該ＬＳＢビットプレーンに埋め込まれている各誤り検出用冗長データと比較し、
比較の結果、一致すれば改ざんが無いと判断し、不一致のときには改ざん有りと判断し、
元の画像データを復元することを特徴とする改ざん検知装置のデータ復元方法。
【請求項１０】
画像データの改ざんを検知する画像改ざん検知装置に保存されたデータを元の画像データに戻すための復元方法において、
誤り検出用冗長ビットデータが埋め込まれたＬＳＢ以外のビットプレーン専用メモリから主走査Ｘ画素×副走査Ｙ画素×階調７ビットの（Ｘ×Ｙ×７）ビットデータを読み出し、
読み出した該ビットデータを誤り検出用冗長データ生成器に入力し、
生成多項式決定器により設定されている演算式を用いて、１行分の画素データについてそれぞれ演算を行い、
演算結果である各誤り検出用冗長データを、該ＬＳＢビットプレーンに埋め込まれている各誤り検出用冗長データと比較し、
比較の結果、一致すれば改ざん無しと判断し、不一致のときには改ざん有りと判断し、
元の画像データに戻すことを特徴とする改ざん検知装置のデータ復元方法。
【請求項１１】
画像データの改ざんを検知する画像改ざん検知装置に保存されたデータを元の画像データに戻すための復元方法において、
冗長データ埋め込みビットプレーン以外のビットプレーン専用メモリから主走査Ｘ画素×副走査Ｙ画素×階調７ビットの（Ｘ×Ｙ×（８−Ｎ））ビットデータを読み出し、
読み出した該ビットデータを誤り検出用冗長データ生成器７−４に入力し、
演算式を用いて１行分の画素データについてそれぞれ演算を行い、
演算結果である各誤り検出用冗長データを、検知確度設定レジスタにより決定された層数の冗長データ埋め込みビットプレーンから読み出された誤り検出用冗長データと比較し、
比較の結果、一致すれば改ざん無しと判断し、不一致のときは改ざん有りと判断し、
元の画像データに戻すことを特徴とする改ざん検知装置のデータ復元方法。
【請求項１２】
画像データの改ざんを検知する画像改ざん検知装置に保存されたデータを元の画像データに戻すための復元方法において、
ＬＳＢビットプレーン以外のビットプレーン専用メモリから主走査８画素×副走査８画素×階調７ビットの４４８ビットデータを読み出し、
読み出した該ビットデータを誤り検出用冗長データ生成器に入力し、
演算式を用いて１行分の画素データについてそれぞれ演算を行い、
演算結果である各誤り検出用冗長データと、乱数発生器を用いて指定されたキーにより乱数を発生させ、発生した乱数の配列に従って該ＬＳＢビットプレーンに埋め込まれている配列箇所から順次読み出した誤り検出用冗長データとを比較し、
比較の結果、一致していれば改ざん無しと判断し、不一致のときには改ざん有りと判断し、
元の画像データに戻すことを特徴とする改ざん検知装置のデータ復元方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、デジタルコピー、プリンタ、デジタルカメラ等のデジタル画像データ処理装置に係り、特に、多値画像における改ざん検知装置とその保存データを元に戻す復元方法に関するものである。
【０００２】
【従来の技術】
従来、多値画像への電子透かしについては、例えば、松井甲子雄著『電子透かしの基礎』ｐ．１０２、４．２多値カラー画像への電子透かし（非特許文献１参照）がある。この場合、Ｒ，Ｇ，Ｂそれぞれ８〜１０ビット程度の画素情報を保有している。このような高階調画像に対しては、情報非保存型の符号化方式が採用され、予測符号化法や変換符号化法が適用されている。そして、カラー信号は、ＹＩＱやＹ，Ｃｒ，Ｃｂ信号のように、輝度成分と色差成分に分離して、それぞれ独立に異なったビット数で符号化される。透かしについては、輝度成分への埋込みと、色差成分への埋込みとがある。
８×８画素分のＹ成分を集めて符号化方式でデータ圧縮を行い、Ｃｒ，Ｃｂ成分も、８×８個の単位にブロック化して同じ手順で周波数領域に変換し、データ圧縮を行っている。
【０００３】
上記の方式によるＹ成分への透かし情報の埋込みについては、量子化誤差を直接に透かしビットで制御する方法や、変換テーブルで制御する方法や、再量子化により周波数領域に埋込む方法などが提案されている。
その他、多値カラー画像データへの電子透かし技術としては、例えば、中村康弘、松井甲子雄著『カラー濃度パターンによる画像へのテキストデータの合成符号法』画像電子学会誌ｖｏｌ．１７がある。
このように、従来、多値画像における改ざん検知用の冗長データを画像データに挿入する場合、画素単位にその冗長データを入れる方法がある。例えば、８ビット階調であれば、画素毎に計算された改ざん検知用冗長データを全ての画素に対してその画素８ビットにおけるＬＳＢ側から必要なビット分を入れるものである。この場合、画素単位で冗長ビットが複数ビット挿入されることになる。つまり、オリジナルの画像に対して画素単位で複数ビットのノイズが挿入されることと等価であり、画像の劣化が生じる。
【０００４】
【非特許文献１】
松井甲子雄著『電子透かしの基礎』ｐ．１０２、４．２多値カラー画像
への電子透かし
【非特許文献２】
中村康弘、松井甲子雄著『カラー濃度パターンによる画像へのテキスト
データの合成符号法』画像電子学会誌ｖｏｌ．１７
【０００５】
【発明が解決しようとする課題】
画像データのデジタル化により、画像処理、加工、編集が容易となり、またＬＳＩの微細化、高速化に伴って様々な分野において、より精度よく、より高速な、より高度な処理を行えるようになっている。
また、ネットワークの高速化に伴って、画像データあるいはドキュメントのネットワークを介しての転送、閲覧等が可能となり、リアルタイムに情報の共有が可能となっており、今後、益々ドキュメントの電子化が進むことは必至である。
【０００６】
一方、画像データ、ドキュメント等がデジタル化されるに伴って、そのデータ構造がより分かり易く、かつ扱い易くなることにより、そのデータの加工が容易に行えることになり、その結果、意味を持ったオリジナルの画像データおよびドキュメントに対して、その意味を変えるような改ざんが加えられる可能性がある。特に、悪意を持った改ざんにおいては、それを防ぐ方法が要求される。
改ざんに対する防御方法としては、改ざんが行われたか否かを検知する改ざん検知装置が提案されているが、その一つとして、前述のような１画素単位での検知手段がある。しかし、この場合には、１画素内での階調データでのみから計算された冗長データを使用するため、改ざん検知確率が非常に低いものとなっている。
【０００７】
本発明の目的は、改ざんに対して１画素単位における改ざん検知ではなく、任意の画素サイズ単位における改ざん検知を可能とし、より改ざん検知確率を高めることができ、しかも、対象画素サイズが変わっても、改ざん検知確率を維持することが可能な画像改ざん検知装置およびその保存データの復元方法を提供することにある。
【０００８】
【課題を解決するための手段】
本発明の画像改ざん検知装置は、改ざん検知単位を１画素以上とすることで、より改ざん検知確率を高めることができ、また、その検知手段として誤り検出手法を用い、任意のサイズに従って生成多項式を適応させ、対象画像サイズが変わっても改ざん検知確率を維持できるようにする。
【０００９】
本発明の画像改ざん検知装置は、画像データにおける任意の位置のデータを改ざんし、元画像と違った画像が作成された場合に、改ざんを検知するための情報を埋め込む画像改ざん検知装置であって、主走査Ｘ画素×副走査Ｙ画素×階調Ｚビット単位のブロックデータを格納する第１のメモリと、階調データＺビットかＬＳＢ以外のビットプレーンのＸ×Ｙ画素分を保存するための第２のメモリと、ＬＳＢのビットプレーンのＸ×Ｙ画素分を保存するための第３のメモリと、誤り検出用冗長データ生成器と、誤り検出用冗長データ生成結果を格納する第４のメモリと、誤り検出用冗長データを主Ｘ×副Ｙのビットプレーンに割り付ける埋め込み器と、誤り検出用冗長データとＬＳＢ以外の元画素データを結合し、元の主走査Ｘ画素×副走査Ｙ画素×階調Ｚビットの画像データに戻す配列器とを具備することを特徴としている。
【００１０】
また、上記における任意の主走査Ｘ画素×副走査Ｙ画素サイズに対して検知確率を維持するための画像改ざん検知装置であって、任意の画素サイズ単位におけるブロックデータを格納する第１のメモリと、階調データＺビットからＬＳＢ以外のビットプレーンのＸ×Ｙ画素分を保存するための第２のメモリと、任意の画素サイズに適応した誤り検出用冗長データ計算のための生成多項式決定回路と、生成多項式決定回路により決定された条件に応じた演算回路を構成する誤り検出用冗長データ計算器と、誤り検出用冗長ビットデータ計算結果を格納する第３のメモリと、誤り検出用冗長ビットデータをＸ×Ｙのビットプレーンに割り付ける分散器と、誤け検出用冗長ビットデータと任意の元画素データを結合し、元の主走査Ｘ画素×副走査Ｙ画素×階調Ｚビットの画像データに戻す配列器とを具備することを特徴としている。
【００１１】
また、上記における検知確率を高めるための画像改ざん検知装置であって、任意の画素サイズ単位におけるブロックデータを格納する第１のメモリと、画素サイズＸ，Ｙと階調データＺビットから冗長データ埋め込みビットプレーンの層数を設定する検知確度設定レジスタあるいは冗長データの埋め込み位置を分散させるための乱数発生器と、冗長データ埋め込みビットプレーンを保存する第２のメモリと、誤り検出用冗長データ計算器と、誤り検出用冗長ビットデータ計算結果を格納する第３のメモリと、誤り検出用冗長ビットデータをＸ×Ｙの複数の任意のビットプレーンに割り付ける分散器と、誤り検出用冗長ビットデータと任意の元画素データを結合し、元の主走査Ｘ画素×副走査Ｙ画素×階調Ｚビットの画像データに戻す配列器とを具備することを特徴としている。
【００１２】
【発明の実施の形態】
以下、本発明の実施形態を、図面により詳細に説明する。
（第１の実施形態）
図１は、本発明の第１の実施形態に係る画像改ざん検知装置の原理説明図である。
主走査Ｘ画素×副走査Ｙ画素×階調Ｚビット単位における改ざん検知用誤り検出用冗長データの計算および埋め込み方法として、主走査８画素×副走査８画素×階調８ビットを例として説明する。
図１（ａ）に示すように、改ざん検知の対象となる画像データを８画素×８画素毎に切り出し、図１（ｂ）に示すように、さらにＺ方向に階調８ビットのブロックに切り出し、このブロック毎に改ざんを検知する。そして、誤り検出用冗長ビットデータをＺ方向の８ビットのうちの最下位のＬＳＢのビットプレーンに埋め込む。例えば、階調が００００００００から１１１１１１１１までの８桁で２５６レベルを表現した場合、ＬＳＢは、階調の最下位ビットであるため、これを誤り冗長ビット用として使用したとしても、残り７ビットがあれば、画質に与える影響は小さい。
【００１３】
図２は、本発明の第１の実施形態に係る画像改ざん検知装置のブロック構成図である。
主走査８画素×副走査８画素×階調８ビット単位の１ブロックデータを格納するメモリ２−１と、１ブロック内の処理ブロック位置を認識するため画素をカウントする画素カウンタ２−２と、階調データ８ビットからＬＳＢ以外を選択するセレクタにより選択されることで、ＬＳＢ以外のビットプレーンを保存するためのメモリ２−３と、ＬＳＢビットプレーンを保存するためのメモリ２−２’と、誤り検出用冗長データを生成するための生成器２−４と、生成器２−４で演算された冗長データを保存するためのメモリ２−５と、メモリ２−５に格納された冗長データを読み出して、その誤り検出用冗長データをＬＳＢビットプレーンに埋め込むための埋め込み器２−６と、埋め込み器２−６により埋め込まれたＬＳＢビットプレーンと、ＬＳＢ以外のビットプレーンのデータをメモリから読み出し、元の８画素×８画素×８ビットの画像データに戻すための配列器２−８とが用意される。
【００１４】
１）まず、１ページ分の画像データから主走査８画素×副走査８画素×階調８ビット単位で画素データを読み出し、メモリ２−１に格納する。
２）次に、上述により取り込んだ画像ブロックデータの位置が１ページ全画像におけるどの位置であるかを認識するために、カウンタ２−２を進める。このカウンタ２−２は、主走査方向および副走査方向における座標を認識するためと、１ページにおける終了を認識するために使用される。
３）上記１）で取り込んだ主走査８画素×副走査８画素×階調８ビットの画像データにおけるＬＳＢビットプレーンの８×８画素データを選択し、ＬＳＢ保存用専用メモリ２−２’に保存する。
４）また、上記１）で取り込んだ主走査８画素×副走査８画素×階調８ビットの画像データにおけるＬＳＢビットプレーン以外の画素データ、つまり主走査８画素×副走査８画素×階調７ビットの計４４８ビットデータを抽出し、誤り検出用冗長データ計算用データとしてメモリ２−３に保存する。
【００１５】
５）上記４）で抽出された画素データを１ビットずつ読み出し、誤り検出用冗長データ計算を行う生成多項式演算回路へ入力する。これを４４８ビットデータ全てに対して行い、４４８ビットの入力が完了した時点で、生成多項式計算結果として算出され、この算出データを誤り検出用冗長データとしてメモリ２−５に保存する。
６）誤り検出用冗長データ埋め込み器２−６では、上記５）で算出された誤り検出用冗長データを、上記３）における主走査８画素×副走査８画素×階調８ビットの画像データ保存メモリ２−１におけるＬＳＢビットプレーンの８×８画素データの例えば先頭、つまり８×８画素における左上のビットから順次１ビットずつ書き込んでいく。
なお、図９（ａ）は、ＬＳＢビットプレーンにおける８×８画素の左上から順次１ビットずつ書き込んだ結果を示す図である。
ここでは、左上から２列で、全ての誤り冗長データは書き込まれている。
８×８画素メモリ領域において、この操作において書き込まれなかった部分については、元々のオリジナルの画素データが残ることになる。
７）上記６）において、誤り検出用冗長データを、上記３）における主走査８画素×副走査８画素×階調８ビットの画像データ保存メモリ２−１のＬＳＢビットプレーンである８×８画素データメモリ２−２’に書き込んでいく方法として、主走査８画素×副走査８画素×階調８ビット単位のブロック毎の同じ８×８画素における左上のビットからでなく、ブロック毎に誤り検出用冗長データを書き始める位置を変化させて書き込んでいく方法でもよい。これは、８×８画素内において、書き込む位置を変化させることにより、より元の画像の品質を保つためである。
【００１６】
８）主走査８画素×副走査８画素×階調８ビット画像データ配列器２−７では、上記６）で誤り検出用冗長データが埋め込まれたＬＳＢビットプレーンデータと、上記４）で保存されていたＬＳＢビットプレーン以外の画素データ、つまり主走査８画素×副走査８画素×階調７ビットの計４４８ビットデータとを、元の主走査８画素×副走査８画素×階調８ビットの画像データに戻す。つまり、誤り検出用冗長データが埋め込まれたＬＳＢビットプレーンデータを一番最下層に配置し、主走査８画素×副走査８画素×階調７ビット画素データをその上階層に配置することにより、階調方向に８ビットとすることになる。
９）以上の操作により、元画像における主走査８画素×副走査８画素×階調８ビット画像データの中に、主走査８画素×副走査８画素×階調７ビットの計４４８ビットデータから算出された誤り検出用冗長データが埋め込まれたものとなり、主走査８画素×副走査８画素×階調８ビット画像ブロックに対するデータ改ざん検知が可能となる。
また、本誤り検出用冗長データは、主走査８画素×副走査８画素×階調８ビット画像における最下位層に埋め込まれているため、画像品質を著しく劣化させることがなく、また、本誤り検出用冗長データが埋め込まれなかったビットについては、元画像におけるデータそのものが残っているため、その部分についての劣化は全くない。
【００１７】
１０）なお、改ざん検知の方法としては、改ざん検知用デコーダにおいて、主走査８画素×副走査８画素×階調８ビットの画像データにおける主走査８画素×副走査８画素×階調７ビットデータを抽出し、そのデータに対して誤り検出用の生成多項式演算を施し、その結果得られた冗長データと主走査８画素×副走査８画素×階調８ビット画像データにおける最下位層であるＬＳＢビットプレーンデータ８×８データにおける埋め込まれていた誤り検出用冗長データを比較することになる。もし、比較したデータに相違があれば、この主走査８画素×副走査８画素×階調８ビット画像データのいずれかが改ざんされたことになり、改ざん有りとして判定される。
【００１８】
図３および図４は、本発明に用いられる誤り検出用冗長データ生成器の構成図およびその演算例図である。
主走査８画素を左側画素から順に０〜７と番号を付加し、“１”の存在するところだけ、その番号をＸの指数とすれば、主走査８画素は１＋Ｘ２＋Ｘ３＋Ｘ４・・・で表わされる。このようにして、副走査８画素分だけ式を生成し、さらに、これを階調８ビット分だけ行うので、１ブロックだけで６４回の演算を行うことになる。演算は、伝送方式におけるサイクリック符号方式と全く同じように“モデュロ２”の演算を行うことにより、８桁の各式を予め約束してある多項式（発生多項式）Ｇ（ｘ）で割り算をする。例えば、１ブロックの任意の１列の入力データＰ（ｘ）が“Ｘ６＋Ｘ５＋Ｘ３＋Ｘ２＋１”であり、生成多項式が図３に示すように、“Ｘ５＋Ｘ３＋Ｘ２＋１”である場合には、図４に示すように、そのまま入力データを生成多項式で割り算する。この場合、誤り検出用冗長データは、Ｘ４＋Ｘ３＋Ｘ、つまり２進表示では“１１０１０”であるので、これをＬＳＢビットプレーンに書き込むことになる。
上記の場合、生成多項式の最高次数が多いほど、改ざんされた画素数が多くても、これを検知することが可能である。
【００１９】
遠方に画像データを送信する途中で改ざんされる場合には、予め生成多項式を受信側である改ざん検知側に送信しておくとともに、計算方法を変更して、入力データに生成多項式Ｇ（ｘ）の最高次の項Ｘ５を掛ける。その結果は、“Ｘ５・Ｐ（ｘ）＝Ｘ１１＋Ｘ１０＋Ｘ８＋Ｘ７＋Ｘ５”となる。このＸ５・Ｐ（ｘ）を生成多項式Ｇ（ｘ）で割り算することにより、余りである冗長ビットデータを算出する。この場合には、余りはＸ１１、つまり２進表示で“１００００００００００００”となる。改ざん検知側に対しては、余りである冗長データに加えて、入力データに最高次を掛けた値を送信する。すなわち、この１列分データに関して、検知側にＸ１１＋Ｘ５（Ｘ６＋Ｘ３＋Ｘ２＋１）を送信する（下線が誤り冗長データ）。検知側は、予め知らされている生成多項式で上記連絡された式を割り算することにより、余りが０ならば、誤りがないこと、つまり画像に改ざんがないことを確認する。
上記の場合には、Ｘ１１＋Ｘ５（Ｘ６＋Ｘ３＋Ｘ２＋１）を生成多項式のＸ５＋Ｘ３＋Ｘ２＋１で割り算すれば、商Ｘ５＋余り０となって、改ざんはないことが確認される。
【００２０】
図３に示す誤り検出用冗長データ生成器は、生成多項式による割算回路であって、３−２、３−３、３−５、３−７、３−８は遅延素子、３−１、３−４、３−６はＭｏｄｅ２加算器であって、生成多項式が１＋Ｘ２＋Ｘ３＋Ｘ５であるため、１の桁、Ｘ２の桁、Ｘ３の桁、Ｘ５の桁に加算器が設けられている。
なお、誤り検出の復号化回路は、符号化回路（冗長データ生成器）と同様に、生成多項式Ｇ（ｘ）による割算回路である。しかし、誤り訂正（つまり、改ざん箇所検出）の場合には、剰余を手がかりにして誤り箇所を見出すので、復号化は複雑となる。
多項式Ｐ（ｘ）が割り切るとのできるＸｎ＋１の形の多項式のうち、最低次数の多項式Ｘｅ＋１の次数ｅを多項式Ｐ（ｘ）の周期と呼ぶ。多項式Ｐ（ｘ）が原始多項式であると、ｅ＝２ｍ−１となる。任意の次数ｍに対して原始多項式が存在するが、これにより生成される巡回符号はハミング符号と等価であって、単一の誤りを訂正することが知られている。
【００２１】
（第２の実施形態）
図５（ａ）および図６は、本発明の第２の実施形態に係る画像改ざん検知装置の原理図および構成図である。
第２の実施形態は、主走査８画素×副走査８画素×階調８ビットに代えて、主走査Ｘ画素×副走査Ｙ画素×階調Ｚビットの画素サイズ単位の画像を対象ブロックとするものである。ここで、Ｘ，Ｙ，Ｚは異なる値であることは勿論、同じ値であっても差し支えない。Ｘ，Ｙ，Ｚの値が大きい場合には、当然、誤り検出用冗長データの数も多くなり、また、改ざん箇所も増加することが予想されるので、生成多項式決定器６−３により、誤り検出用冗長データ計算器６−６の桁数の増加などの構成を制御する。
【００２２】
図６に示すように、この画像改ざん検知装置は、任意の画素サイズ単位におけるブロックデータを格納するメモリ６−１と、画像における処理ブロック位置を認識するためのカウンタ６−２と、階調データ８ビットから任意のビットを選択するための画素サイズ設定レジスタ（セレクタ）６−４と、任意の画素サイズに適応した誤り検出用冗長データ計算のための生成多項式決定器６−３と、生成多項式決定器６−３により決定された構成に基づいて誤り検出用冗長データを計算する計算器６−６と、誤り検出用冗長ビットデータ計算結果を保存する誤り検出用冗長データ保存メモリ６−７と、誤り検出用冗長ビットデータをＸ×Ｙのビットプレーン（ＬＳＢ）に割り付ける分散器６−９と、誤り検出用冗長ビットデータと任意の元画素データを結合し、元の主走査Ｘ画素×副走査Ｙ画素×階調Ｚビットの画像データに戻す配列器６−１０と、ＬＳＢ以外のビットプレーンを保存するメモリ６−５、および、ＬＳＢビットプレーンを保存するメモリ６−８とを備えている。
【００２３】
図６の動作内容について説明する。
１）主走査Ｘ画素×副走査Ｙ画素×階調８ビット画像データにおける階調８ビット以外の任意の画素サイズにおける画像データをメモリ６−１に格納する。なお、予め画素サイズ設定レジスタ６−４にＸ，Ｙの数値を設定しておくことで、主走査Ｘ画素×副走査Ｙ画素×階調８ビットの画像データ格納メモリ６−１の容量が制御される。
２）次に、上記１）で取り込んだ画像ブロックデータの位置が１ページ全画像におけるどの位置であるかを認識するためにカウンタ６−２を進める。このカウンタ６−２は、主走査方向および副走査方向における座標を認識するためと、１ページにおける終了を認識するために使われる。
３）次に、上記１）で取り込んだ任意の主走査Ｘ画素×副走査Ｙ画素×階調８ビット画像データにおけるＬＳＢビットプレーンのＸ×Ｙ画素データを選択し、ＬＳＢ保存用６−８に保存する。
４）また、上記１）で取り込んだ主走査Ｘ画素×副走査Ｙ画素×階調８ビット画像データにおけるＬＳＢビットプレーン以外の画素データ、つまり主走査Ｘ画素×副走査Ｙ画素×階調７ビットの計Ｘ×Ｙ×７ビットデータを抽出し、誤り検出用冗長データ計算用のデータとしてメモリ６−５に保存する。
【００２４】
５）生成多項式決定器６−３では、任意の画像サイズ、つまりＸ×Ｙ画像に適応させて誤り検出用冗長データ計算のための生成多項式を決定する。Ｘ，Ｙサイズが小さい場合には、生成多項式における次数は少なくなり、Ｘ，Ｙサイズが大きい場合には、生成多項式における次数は多くなる。
６）上記４）で抽出された画素データを１ビットずつ読み出し、５）でＸ，Ｙサイズに適応して決定された誤り検出用冗長データ計算である生成多項式演算回路（誤り検出用冗長データ計算器）６−６へ入力する。これをＸ×Ｙ×８ビットデータ全てに対して行い、Ｘ×Ｙ×８ビットの入力が完了した時点で生成多項式計算結果として算出され、この算出データを誤り検出用冗長データとしてメモリ６−７に保存する。
７）誤り検出用冗長データ埋め込み器６−９では、上記６）で算出された誤り検出用冗長データを３）における主走査Ｘ画素×副走査Ｙ画素×階調８ビット画像データ保存メモリ６−１におけるＬＳＢビットプレーンのＸ×Ｙ画素データの例えば先頭、つまりＸ×Ｙ画素における左上のビットから順次１ビットずつ書き込んでいく。この場合、ＬＳＢビットプレーンの８×８画素への誤り検出用冗長データの書き込みは、図９（ａ）に示すように左上から順次書き込まれて、２列で全てのデータが書き込まれている。
【００２５】
８）主走査Ｘ画素×副走査Ｙ画素×階調Ｚビット画像データ生成配列器６−１０では、上記７）で誤り検出用冗長データが埋め込まれたＬＳＢビットプレーンデータと、４）で保存されていたＬＳＢビットプレーン以外の画素データ、つまり主走査Ｘ画素×副走査Ｙ画素×階調７ビットの計４４８ビットデータとを、元の主走査Ｘ画素×副走査Ｙ画素×階調８ビットの画像データに戻す。つまり、誤り検出用冗長データが埋め込まれたＬＳＢビットプレーンデータを一番最下位層に配置し、主走査Ｘ画素×副走査Ｙ画素×階調７ビット画素データをその上階層に配置することにより、階調方向の８ビットとすることになる。
【００２６】
９）以上の操作により、元画像における主走査Ｘ画素×副走査Ｙ画素×階調８ビット画像データの中に主走査Ｘ画素×副走査Ｙ画素×階調７ビットの計Ｘ×Ｙ×８ビットデータから算出された誤り検出用冗長データが埋め込まれたものとなり、主走査Ｘ画素×副走査Ｙ画素×階調８ビット画像ブロックに対するデータ改ざん検知が可能となる。
１０）以上のように、任意の主走査Ｘ画素×副走査Ｙ画素×階調８ビット画像に適応した誤り検出用冗長データ生成用の生成多項式の次数を使うことにより、どのような画像サイズに対しても改ざん検知確率を維持できることになる。つまり、対象とする画像データ数に対して生成多項式を適応させることにより、符号の巡回範囲を変化させることになる。
【００２７】
（第３の実施形態）
図５（ｂ）および図７は、本発明の第３の実施形態に係る画像改ざん検知装置の原理図および構成図である。
図５（ｂ）に示すように、本実施形態では、誤り検出用冗長ビットデータを８×８の複数の任意のビットプレーンに割り付けることが特徴の一つである。
これにより、第１、第２の実施形態のものに比べて検知確率を高めることができる。
図５（ｂ）では、下位Ｎ層ビットプレーン（ここでは下位２層）に誤り検出用冗長データを埋め込んでいる。検知確度設定レジスタ７−８は、主走査Ｘ画素×副走査Ｙ画素×階調Ｚビットの各値が大きいときには、誤り検出用冗長データの数が多くなることを予想して、誤り検出用冗長データを埋め込む領域を多く確保するために、誤り検出用冗長データ埋め込みビットプレーンを最下層以外にも複数層確保するよう制御する。最下層とその上の層の２ビットプレーンを誤り検出用冗長データ保存用に確保した場合には、８×８×２＝１２８個の誤り検出用冗長データを埋め込むことが可能である。さらに誤り検出用冗長データが多くなると予想される場合には、３層以上確保してもよい。
【００２８】
図７の構成に示すように、本実施形態に係る画像改ざん検知装置で、新たに設けられた機器は、検知確度設定レジスタ７−８である。すなわち、検知確度設定レジスタ７−８により、冗長データ埋め込みビットプレーン保存メモリ７−２’の容量が制御される。
本実施形態の画像改ざん検知装置は、図７に示すように、任意の画素サイズ単位におけるブロックデータを格納するメモリ７−１と、画像における処理ブロック位置を認識するための画素カウンタ７−２と、階調データ８ビットから任意のビットを選択するための検知確度設定レジスタ（セレクタ）７−８と、誤り検出用冗長データの計算器７−４と、誤り検出用冗長データ計算結果を格納するメモリ７−５と、誤り検出用冗長ビットデータを８×８の複数の任意のビットプレーンに割り付ける分散器（埋め込み器）７−６と、誤り検出用冗長ビットデータと任意の元画素データとを結合し、元の主走査Ｘ画素×副走査Ｙ画素×階調８ビットの画像データに戻すための配列器７−７と、冗長データ埋め込みビットプレーン保存メモリ７−２’と、埋め込みビットプレーン以外のビットプレーン保存メモリ７−３とを備えている。
【００２９】
以下、図７の動作を説明する。
１）主走査Ｘ画素×副走査Ｙ画素×階調８ビット画像データにおける階調８ビット以外の任意の画素サイズの画像データをメモリ７−１に格納する。
２）上記１）で取り込んだ画像ブロックデータの位置が１ページ全画像におけるどの位置であるかを認識するために、画素カウンタ７−２を進める。このカウンタ７−２は、主走査方向および副走査方向における座標を認識するためと、１ページにおける終了を認識するために使用される。
３）検知確度設定レジスタ７−８では、上記１）で取り込んだ任意の主走査Ｘ画素×副走査Ｙ画素×階調８ビット画像データにおける任意の下位Ｎ層のビットプレーンのＸ×Ｙ×Ｎ画素データを選択し、下位層保存用専用メモリ７−２’に保存する。
４）また、上記１）で取り込んだ主走査Ｘ画素×副走査Ｙ画素×階調８ビット画像データにおける下位Ｎ層ビットプレーン以外の画素データ、つまり主走査Ｘ画素×副走査Ｙ画素×階調（８−Ｎ）ビットの計Ｘ×Ｙ×（８−Ｎ）ビットデータを抽出し、誤り検出用冗長データ計算用データとしてメモリ７−３に保存する。
【００３０】
５）上記３）で決定された下位Ｎ層に適応する誤り検出用冗長データ計算用生成多項式を決定する。この誤り検出用冗長データは、下位Ｎ層を使用して埋め込まれることになるので、より多いデータを埋め込むことができ、それにより改ざん検知確率が高まることになる。
６）上記４）で抽出された画素データを１ビットずつ読み出し、上記５）でＸ，Ｙサイズに適応して決定された誤り検出用冗長データ計算である生成多項式演算器７−４へ入力する。これをＸ×Ｙ×（８−Ｎ）ビットデータ全てに対して行い、Ｘ×Ｙ×（８−Ｎ）ビット入力が完了した時点で生成多項式計算結果として算出され、この算出データを誤り検出用冗長データとしてメモリ７−５に保存する。
【００３１】
７）誤り検出用冗長データ埋め込み器７−６では、上記６）で算出された誤り検出用冗長データを、上記３）における主走査Ｘ画素×副走査Ｙ画素×階調８ビット画像データ保存メモリ７−１の下位Ｎ層ビットプレーンにおけるＸ×Ｙ×Ｎ画素データの例えば先頭から順に埋め込む。そして、Ｘ×Ｙ×Ｎ画素メモリ領域（７−２’）において、この操作により書き込まれなかった部分については、元々のオリジナルの画素データが残ることになる。
８）主走査Ｘ画素×副走査Ｙ画素×階調Ｚの画像データ生成器７−７では、上記７）で誤り検出用冗長データが埋め込まれた下位Ｎ層ビットプレーンデータと、上記４）で保存されていた下位Ｎ層ビットプレーン以外の画素データ、つまり主走査Ｘ画素×副走査Ｙ画素×階調（８−Ｎ）ビットの計（Ｘ×Ｙ×（８−Ｎ）ビットデータとを、元の主走査Ｘ画素×副走査Ｙ画素×階調８ビットの画像データに戻す。つまり、誤り検出用冗長データが埋め込まれた下位Ｎ層ビットプレーンデータを主走査Ｘ画素×副走査Ｙ画素×階調（８−Ｎ）ビット画素データの下に配置することにより、階調方向の８ビットとすることになる。
【００３２】
（第４の実施形態）
図８は、本発明の第４の実施形態に係る画像改ざん検知装置の構成図である。
本実施形態の特徴は、図９（ｂ）に示すように、ＬＳＢビットプレーンに埋め込まれる誤り検出用冗長データを乱数発生器８−８を用いて分散して埋め込むものである。なお。図９において、１が埋め込まれている画素以外の空白画素部分には元々のオリジナルの画素データが残ることになる。
図８における画像改ざん検知装置は、主走査８画素×副走査８画素×階調８ビット単位のブロックデータを格納するメモリ８−１と、画像における処理ブロック位置を認識するための画素カウンタ８−２と、階調データ８ビットからＬＳＢ以外を選択し、そこに画素データを格納するメモリ８−３と、ＬＳＢビットプレーンに１画素毎のＬＳＢのデータを８×８画素分保存するためのメモリ７−２’と、誤り検出用冗長データの計算器８−４と、誤り検出用冗長ビットデータ計算結果を格納するメモリ８−５と、乱数発生器８−８と、乱数発生器８−８で発生した乱数値の場所を配列する配列器８−９と、誤り検出用冗長ビットデータを８×８のビットプレーン７−２’に対して、配列器８−９の配列通りに割り付ける埋め込み器８−６と、誤り検出用冗長ビットデータとＬＳＢ以外の元画素データを結合し、元の主走査８画素×副走査８画素×階調８ビットの画像データに戻すための配列器８−７とを備えている。
【００３３】
図８の乱数発生器８−８は、（０，１）区間の一様乱数を発生させるため、十分大きい自然数ｍに対し、（０，１，・・，ｍ−１）内に値をとる一様乱数を発生させ、その値をｍで割ればよい。このための方法として利用されるのは、線形合同法である。この方法では、Ｘ０を０≦Ｘ０≦ｍ−１になるある値とし、Ｘｎ＋１＝ａＸｎ＋ｂ（ｍｏｄ  ｍ），０≦Ｘｎ＋１≦ｍ−１によりＸ１，Ｘ２，・・を決定する。なお、乱数発生器８−８では、乱数を発生するためのキーが必要である。このキーを改ざん検知側の相手にも通知する。これにより、悪意を持った人が画像を改ざんしようとしても、キーを知らないため、階調８ビットの最下層に誤り検出用冗長ビットデータが埋め込まれていることを知っても、同一の乱数を発生できず、改ざんを行うことができない。
【００３４】
図８における動作を説明する。
１）まず、１ページ分の画像データから主走査８画素×副走査８画素×階調８ビット単位で画素データを読み出し、メモリ８−１に格納する。
２）上記１）で取り込んだ画像ブロックデータの位置が１ページ全画像におけるどの位置であるかを認識するために画素カウンタ８−２を進める。このカウンタ８−２は、主走査方向および副走査方向における座標を認識するためと、１ページにおける終了を認識するために使用される。
３）上記１）で取り込んだ主走査８画素×副走査８画素×階調８ビット画像データにおけるＬＳＢビットプレーンにおける８×８画素データを選択し、ＬＳＢ保存用メモリ７−２’に保存する。
４）また、上記１）で取り込んだ主走査８画素×副走査８画素×階調８ビット画像データにおけるＬＳＢビットプレーン以外の画素データ、つまり主走査８画素×副走査８画素×階調７ビットの計４４８ビットデータを抽出し、誤り検出用冗長データ計算用のデータとしてメモリ８−３に保存する。
【００３５】
５）上記４）で抽出された画素データを１ビットずつ読み出し、誤り検出用冗長データ生成器である生成多項式演算器８−４へ入力する。これを４４８ビットデータ全てに対して行い、４４８ビット入力が完了した時点で生成多項式計算結果として算出され、この算出データを誤り検出用冗長データとしてメモリ８−５に保存する。
６）乱数発生器８−８により乱数を発生させ、その乱数発生結果を冗長データ配列器８−９に配列する。
７）誤り検出用冗長データ埋め込み器８−６では、上記５）で算出された誤り検出用冗長データを、主走査８画素×副走査８画素×階調８ビット画像データ保存メモリ８−１におけるＬＳＢビットプレーンの８×８画素データの例えば先頭、つまり８×８画素において、冗長データ配列器８−９の配列の通りに分散して埋め込む。なお、８×８画素メモリ領域において、この操作において書き込まれなかった部分については、元々のオリジナルの画素データが残ることになる。
【００３６】
（第５の実施形態）
本発明の第５の実施形態として、改ざん検知後に保存データを元の画像に戻す復元方法について説明する。
本発明においては、改ざんがあるか否かを判定するまでを説明するが、画像データのどこに改ざんが存在するかの検出方法については、要旨ではないため、記述していない。
復元方法は、ＬＳＢビットプレーンに埋め込まれた誤り検出用冗長データと、ＬＳＢ以外のビットプレーンに格納された主走査８画素×副走査８画素×階調７ビットの画像データから、元の主走査８画素×副走査８画素×階調８ビットの画像データに戻すものである。
画像改ざん検知装置には、第１の実施形態から第４の実施形態まであるので、これらの各実施形態の改ざん検知装置それぞれについて復元方法が存在する。
【００３７】
先ず、図２に示す第１の実施形態の改ざん検知装置に対する復元方法は、ＬＳＢ以外のビットプレーン専用メモリ２−３から読み出された主走査８画素×副走査８画素×階調７ビットの計４４８ビットデータを誤り検出用冗長データ生成器２−４に入力し、１行分の画素データについてそれぞれ演算を行うことにより、演算結果である各誤り検出用冗長データを、ＬＳＢビットプレーンに埋め込まれている各誤り検出用冗長データと比較する。ＬＳＢビットプレーンに埋め込まれている順序に従って、例えば左上から読み出して、演算結果と比較する。比較の結果、一致すれば改ざんが無いと判断する。一方、不一致のときには改ざん有りと判断する。８画素×８画素×７ビットのどこが改ざんされているかを検出することは行わないので、改ざん箇所が検出された場合にはそこを訂正した後に、元の画素データに戻す。日付の改ざんが検出された場合、例えば、２００３．５．１０が２００３．５．１１に改ざんされているとき、ＬＳＢビットプレーンに埋め込まれている誤り検出用冗長データを訂正して、元の画像データに復元する。
改ざんが無いと判断したときには、そのまま元の画素データに戻す。
【００３８】
次に、図６に示す第２の実施形態の改ざん検知装置に対する復元方法は、ＬＳＢ以外のビットプレーン専用メモリ６−５から読み出された主走査Ｘ画素×副走査Ｙ画素×階調７ビットの（Ｘ×Ｙ×７）ビットデータを誤り検出用冗長データ生成器６−６に入力し、生成多項式決定器６−２により設定されている演算式を用いて、１行分の画素データについてそれぞれ演算を行うことにより、演算結果である各誤り検出用冗長データを、ＬＳＢビットプレーンに埋め込まれている各誤り検出用冗長データと比較する。比較の結果、一致すれば改ざん無しと判断され、不一致のときは改ざん有りと判断する。これにより、元の画像データに戻す。
【００３９】
次に、図７に示す第３の実施形態の改ざん検知装置に対する復元方法は、冗長データ埋め込みビットプレーン以外のビットプレーン専用メモリ７−３から読み出された主走査Ｘ画素×副走査Ｙ画素×階調７ビットの（Ｘ×Ｙ×（８−Ｎ））ビットデータを誤り検出用冗長データ生成器７−４に入力し、演算式を用いて１行分の画素データについてそれぞれ演算を行うことにより、演算結果である各誤り検出用冗長データを、検知確度設定レジスタ７−８により決定された層数の冗長データ埋め込みビットプレーンから読み出された誤り検出用冗長データと比較する。比較の結果、一致すれば改ざん無しと判断され、不一致のときは改ざん有りと判断する。これにより、元の画像データに戻す。
【００４０】
次に、図８に示す第４の実施形態の改ざん検知装置に対する復元方法は、ＬＳＢビットプレーン以外のビットプレーン専用メモリ８−３から読み出された主走査８画素×副走査８画素×階調７ビットの４４８ビットデータを誤り検出用冗長データ生成器８−４に入力し、演算式を用いて１行分の画素データについてそれぞれ演算を行うことにより、演算結果である各誤り検出用冗長データと、乱数発生器８−８を用いて指定されたキーにより乱数を発生させ、発生した乱数の配列に従ってＬＳＢビットプレーンに埋め込まれている配列箇所から順次読み出した誤り検出用冗長データとを比較する。比較の結果、一致していれば改ざん無しと判断され、不一致のときには改ざん有りと判断する。これにより、元の画像データに戻す。
【００４１】
本実施形態では、改ざん検知装置については第１実施形態から第４実施形態まで説明したが、これらの組み合わせた方式についても考えられる。また、復号装置については、改ざん装置の第１実施形態から第４実施形態までのそれぞれに対応するものについて説明したが、これらを組み合わせた改ざん検知装置に対応した復元方法も考えられる。
いずれにしても、本発明の範囲はこれらの組み合わせを全て含むものである。
【００４２】
【発明の効果】
以上説明したように、本発明によれば、画像データにおける最下位ビットプレーン以外の画像データ全てに対して誤り検出用冗長データ計算を施し、その算出結果を最下位ビットプレーンに埋め込むことで、データの改ざんが行われても、最下位ビットプレーン以外の画像データから再度計算された改ざん検知用データと埋め込まれたデータを比較することにより、改ざん有りか無しかを検知することができる。
また、任意の画素サイズを用いる場合でも、そのサイズに適応した生成多項式の次数を選択することで、任意の画像サイズに対して検知確率を維持することが可能となる。
また、誤り検出用冗長データを任意のＮ層に埋め込むことで、改ざん検知の確率を高めることが可能になる。
さらに、乱数発生器により埋め込み箇所を分散させるので、改ざんを防止することが可能である。
さらに、各構成の改ざん検知装置に対応した復元方法を用意することで、種々の改ざん装置を用いた場合でも、元の画像データに戻すことが可能である。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る改ざん検知装置の原理説明図である。
【図２】本発明の第１の実施形態に係る改ざん検知装置の構成図である。
【図３】本発明の誤り検出用冗長データ生成器の構成図である。
【図４】本発明の演算例を示す説明図である。
【図５】本発明の第２および第３の実施形態に係る改ざん検知装置の原理説明図である。
【図６】本発明の第２の実施形態に係る改ざん検知装置の構成図である。
【図７】本発明の第３の実施形態に係る改ざん検知装置の構成図である。
【図８】本発明の第４の実施形態に係る改ざん検知装置の構成図である。
【図９】本発明における誤り検出用冗長データ埋め込みプレーンの配列説明図である。
【符号の説明】
２−１，８−１…８×８×８画像データ格納メモリ、
２−２，６−２，７−２，８−２…画素カウンタ、
２−３，６−５，８−３…ＬＳＢ以外のビットプレーン保存メモリ、
２−２’，６−８，８−２’…ＬＳＢビットプレーン保存メモリ、
２−４，６−６，７−４，８−４…誤り検出用冗長データ生成器、
２−５，６−７，７−５，８−５…誤り検出用冗長データ保存メモリ、
２−６，６−９，７−６，８−６…誤り検出用冗長データ埋め込み器、
２−７，８−７…主走査８×副走査８×階調８画像データ配列器、
６−１，７−１…Ｘ×Ｙ×Ｚ画像データ格納メモリ、
６−１０，７−７…主Ｘ×副Ｙ×階調Ｚ画像データ生成器、
６−３…生成多項式決定器、６−４…画素サイズ設定レジスタ、
７−８…検知確度設定レジスタ、８−８…乱数発生器、
８−９…冗長データ配列器、
７−３…ＬＳＢ以外のビットプレーン保存メモリ、
７−２’…冗長データ埋め込みビットプレーン保存メモリ。
【図１】
2004363990.tif 000003
【図２】
2004363990.tif 000004
【図３】
2004363990.tif 000005
【図４】
2004363990.tif 000006
【図５】
2004363990.tif 000007
【図６】
2004363990.tif 000008
【図７】
2004363990.tif 000009
【図８】
2004363990.tif 000010
【図９】
2004363990.tif 000011