(57)【特許請求の範囲】
【請求項１】
入力された画像データを、同じサイズの矩形ブロックに分割するブロック分割手段と、
分割されたブロックを隣接するブロック同士を特定のパターンでまとめる分類パターンの集合を設定し、また離散するブロックを特定のパターンでまとめる前記分類パターンとは別の分類パターンの集合を設定し、少なくとも２つ以上の分類パターンの集合を設定して、分割したブロックを複数の分類パターンの集合にそれぞれ属するように分類するブロック分類手段と、
各分類パターンにより形成された前記すべての集合の各々に対して認証コードを生成する認証コード生成手段と、
前記認証コードを分割して各集合に属するブロックに割り当てる認証コード分割手段と、
分割された認証コードのうち、各ブロックに割り当てられた認証コード部分を各ブロックに埋込む認証コード埋込み手段と
を有することを特徴とする電子透かし埋込み装置。
【請求項２】
鍵を入力する鍵入力端子と、
生成された複数の認証コードの一部又は全部を、前記鍵入力端子を介して入力された鍵を用いて暗号化する認証コード暗号化手段と
をさらに有することを特徴とする請求項１に記載の電子透かし埋込み装置。
【請求項３】
請求項１又は２に記載された電子透かし埋込み装置において生成された、電子透かしが埋め込まれた画像データを受けて、改竄の検出を行なう改竄検出装置において、
前記電子透かしが埋込まれた画像データを、前記電子透かし埋込み装置における画像データの分割により形成された複数のブロックと大きさ及び配置が同一の、複数のブロックに分割するブロック分割手段と、
前記複数の分類パターンの各々により前記ブロックを複数の集合に分類するブロック分類手段と、
各分類パターンにより形成された前記集合の各々に対して認証コードを生成する認証コード生成手段と、
各集合に属するブロックに埋込まれた認証コード部分を抽出する認証コード抽出手段と、
前記認証コード抽出手段で抽出された認証コード部分を各集合毎に結合して認証コードを再生する認証コード結合手段と、
前記認証コード結合手段で再生された認証コードを、前記認証コード生成手段で生成された認証コードと比較する認証コード比較手段と、
各集合毎の比較の結果から、各集合に属する各ブロック内の改竄を検出する改竄ブロック検出手段と
を有する改竄検出装置。
【請求項４】
鍵を入力するための鍵入力端子と、
前記認証コード結合手段から得られる複数の認証コードのうち、暗号化された認証コードの暗号を、前記鍵入力端子から入力された鍵を用いて解読する暗号解読手段とをさらに有し、
前記比較手段は、前記暗号解読手段から出力される、暗号が解読された認証コードと、認証コード結合手段から出力される、暗号化されていない認証コードとを受け、これらを用いて、前記認証コード生成手段で生成された認証コードとの比較を行う
ことを特徴とする請求項３に記載の改竄検出装置。
【請求項５】
請求項１又は２に記載の電子透かし埋込み装置における電子透かしの埋込みをコンピュータシステムで行なわせるためのコンピュータプログラムを記憶した、コンピュータで読取り可能な記憶媒体。
【請求項６】
請求項３又は４に記載の改竄検出装置における電子透かしの検出をコンピュータシステムで行なわせるためのコンピュータプログラムを記憶した、コンピュータで読取り可能な記憶媒体。
【請求項７】
請求項１又は２に記載の埋込み装置により電子透かしを埋込まれた画像データを記憶した、コンピュータで読取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、画像データにフラジャイルな（fragile:壊れやすい）或いはセミ・フラジャイルな電子透かしを埋込む電子透かし埋込み装置、及びそのような埋込み装置から送られた画像データの改竄を検出する改竄検出装置に関する。
【０００２】
【従来の技術】
静止画像、動画像などの画像データに適用する、従来のフラジャイルな（fragile:壊れやすい）或いはセミ・フラジャイルな電子透かしにおいて、各フィールドの画像を縦Ｍ画素×横Ｎ画素のブロックに区切り、そのブロック単位で、認証コードを生成し、埋込みを行うものがあった。その場合、認証コードの生成には、ＭＤ５やＳＨＡ−１などのハッシュ関数が良く用いられる。
【０００３】
【発明が解決しようとする課題】
上記のようにして生成された所定の長さ、例えば１２８ビットの認証コードを用いると、ブロックが小さくなればなるほど、画面の同一面積に埋込む認証コードの割合が増大し、画質に与える影響が大きくなる。
【０００４】
一方、認証コードとして、他の方式を用いてより少ないビット数のものを用いると、画像が改竄されたにも拘わらず偶然同一の認証コードが生成されてしまう確率が増大する。即ち、改竄検出精度が低下する。
【０００５】
本発明は上記のような問題点を解決するためになされたもので、画質への影響が小さく、かつ改竄検出精度の高い電子透かし埋込み装置、改竄検出装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
本発明は、
入力された画像データを、同じサイズの矩形ブロックに分割するブロック分割手段と、
分割されたブロックを隣接するブロック同士を特定のパターンでまとめる分類パターンの集合を設定し、また離散するブロックを特定のパターンでまとめる前記分類パターンとは別の分類パターンの集合を設定し、少なくとも２つ以上の分類パターンの集合を設定して、分割したブロックを複数の分類パターンの集合にそれぞれ属するように分類するブロック分類手段と、
各分類パターンにより形成された前記すべての集合の各々に対して認証コードを生成する認証コード生成手段と、
前記認証コードを分割して各集合に属するブロックに割り当てる認証コード分割手段と、
分割された認証コードのうち、各ブロックに割り当てられた認証コード部分を各ブロックに埋込む認証コード埋込み手段と
を有することを特徴とする電子透かし埋込み装置を提供するものである。
【０００８】
上記の装置にさらに、
鍵を入力する鍵入力端子と、
生成された複数の認証コードの一部又は全部を、前記鍵入力端子を介して入力された鍵を用いて暗号化する認証コード暗号化手段と
を備えさせても良い。
【００１０】
本発明はまた、
上記の電子透かし埋込み装置において生成された、電子透かしが埋め込まれた画像データを受けて、改竄の検出を行なう改竄検出装置において、
前記電子透かしが埋込まれた画像データを、前記電子透かし埋込み装置における画像データの分割により形成された複数のブロックと大きさ及び配置が同一の、複数のブロックに分割するブロック分割手段と、
前記複数の分類パターンの各々により前記ブロックを複数の集合に分類するブロック分類手段と、
各分類パターンにより形成された前記集合の各々に対して認証コードを生成する認証コード生成手段と、
各集合に属するブロックに埋込まれた認証コード部分を抽出する認証コード抽出手段と、
前記認証コード結合手段で再生された認証コードを、前記認証コード生成手段で生成された認証コードと比較する認証コード比較手段と、
各集合毎の比較の結果から、各集合に属する各ブロック内の改竄を検出する改竄ブロック検出手段と
を有する改竄検出装置を提供するものである。
【００１２】
上記の装置にさらに、
鍵を入力するための鍵入力端子と、
前記認証コード結合手段から得られる複数の認証コードのうち、暗号化された認証コードの暗号を、前記鍵入力端子から入力された鍵を用いて解読する暗号解読手段とを備えさせ、
前記比較手段が、前記暗号解読手段から出力される、暗号が解読された認証コードと、認証コード結合手段から出力される、暗号化されていない認証コードとを受け、これらを用いて、前記認証コード生成手段で生成された認証コードとの比較を行う
ように構成しても良い。
【００１３】
本発明はまた、上記の電子透かし埋込み装置における電子透かしの埋込みをコンピュータシステムで行なわせるためのコンピュータプログラムを記憶した、コンピュータで読取り可能な記憶媒体を提供するものである。
【００１４】
本発明はまた、上記の改竄検出装置における電子透かしの検出をコンピュータシステムで行なわせるためのコンピュータプログラムを記憶した、コンピュータで読取り可能な記憶媒体を提供するものである。
【００１５】
本発明はさらに、上記の埋込み装置により電子透かしを埋込まれた画像データを記憶した、コンピュータで読取り可能な記憶媒体を提供するものである。
【００１６】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
【００１７】
実施の形態１．
実施の形態１の電子透かし埋込み装置は、図１に示すように構成されている。図示のように、この埋込み装置１０は、画像入力端子１と、ブロック分割手段１１と、ブロック分類手段１２と、認証コード生成手段１３と、認証コード分割手段１４と、認証コード埋込み手段１５と、画像出力端子２とを有する。
【００１８】
ブロック分割手段１１は、画像入力端子１から入力された画像をそれぞれ縦Ｍ画素×横Ｎ画素（Ｍ，Ｎは整数）の大きさの、即ち互いに同じ大きさの複数のブロックＢに分割する。例えば図２（ａ）に示す元の画像を、同図（ｂ）に示すように縦１０個×横８個の８０個のブロックＢ（１，１）〜Ｂ（１０，８）に分割する。
【００１９】
ブロック分類手段１２は、分類パターン毎にブロックＢを複数の集合に分類する。以下、図３〜図５を参照して３つの分類パターンＰａ〜Ｐｃを用いる場合について説明する。
【００２０】
第１の分類パターンＰａでは、図３（ａ）に示すように、８０個のブロックＢが、互いに縦横に隣接するブロック同士から成る６つの集合Ｓａ１〜Ｓａ６に分類される。例えば、画面の左上に位置する縦４個×横４個のブロックＢ（１，１）〜Ｂ（４，４）で第１の集合Ｓａ１が形成され、画面の右上に位置する縦４個×横４個のブロックＢ（１，５）〜Ｂ（４，８）で第２の集合Ｓａ２が形成され、第１の集合Ｓａ１の下に位置する縦４個×横４個のブロックＢ（５，１）〜Ｂ（８，４）で第３の集合Ｓａ３が形成され、第２の集合Ｓａ２の下に位置する縦４個×横４個のブロックＢ（５，５）〜Ｂ（８，８）で第４の集合Ｓａ４が形成され、第３の集合Ｓａ３の下に位置し、同時に画面の左下に位置する縦２個×横４個のブロックＢ（９，１）〜Ｂ（１０，４）で第５の集合Ｓａ５が形成され、第４の集合Ｓａ４の下に位置し、同時に画面の右下に位置する縦２個×横４個のブロックＢ（９，５）〜Ｂ（１０，８）で第６の集合Ｓａ６が形成されている。図３（ｂ）には第１の集合Ｓａ１のみが示され、図３（ｃ）には第２の集合Ｓａ２のみが示されている。
【００２１】
第１の分類パターンＰａにより形成された集合は、縦Ｍ個×横Ｎ画素のブロックを縦方向にａ個、横方向にｂ個（ａ，ｂは整数）並べたもの、従って、縦（Ｍ×ａ）画素×横（Ｎ×ｂ）画素の領域で構成されている、即ち、互いに隣接する画素によって構成されていると言うことができる。
【００２２】
第２の分類パターンＰｂでは、図４に示すように、８０個のブロックＢが、それぞれ互いに離散した複数のブロックから成る６つの集合Ｓｂ１〜Ｓｂ６に分類される。例えば、第１の集合Ｓｂ１は、図４（ｂ）に示す、互いに離散した１４個のブロックＢで構成されている。第２の集合Ｓｂ２は、図４（ｃ）に示す、互いに離散した１３個のブロックＢで構成されている。他の集合Ｓｂ３〜Ｓｂ６も同様に、互いに離散した複数のブロックＢで構成されている。
【００２３】
第３の分類パターンＰｃでは、図５に示すように、８０個のブロックＢが、それぞれ互いに離散した複数のブロックから成る６つの集合Ｓｃ１〜Ｓｃ６に分類される。例えば、第１の集合Ｓｃ１は、図５（ｂ）に示す、互いに離散した１６個のブロックＢで構成されている。第２の集合Ｓｃ２は、図５（ｃ）に示す、互いに離散した１６個のブロックＢで構成されている。他の集合Ｓｃ３〜Ｓｃ６も同様に、互いに離散した複数のブロックＢで構成されている。
【００２４】
各ブロックは、同一分類パターン内では、１つの集合にのみ属する。即ち、１つの分類パターンにより形成された複数の集合のいずれかに属し、かつ２つ以上の集合には属さない。図示の例では、各ブロックは、分類パターンＰａにより形成された集合Ｓａ１〜Ｓａ６のうちの一つにのみ属し、分類パターンＰｂにより形成された集合Ｓｂ１〜Ｓｂ６のうちの一つにのみ属し、分類パターンＰｃにより形成された集合Ｓｃ１〜Ｓｃ６のうちの一つにのみ属する。
【００２５】
例えば、画面の左上に位置するブロックＢ（１，１）は、分類パターンＰａにより形成された集合Ｓａ１〜Ｓａ６のうちの一つの集合Ｓａ１に属し、他の集合Ｓａ２〜Ｓａ６に属さず、分類パターンＰｂにより形成された集合Ｓｂ１〜Ｓｂ６のうちの一つの集合Ｓｂ１に属し、他の集合Ｓｂ２〜Ｓｂ６に属さず、分類パターンＰｃにより形成された集合Ｓｃ１〜Ｓｃ６のうちの一つの集合Ｓｃ１に属し、他の集合Ｓｃ２〜Ｓｃ６に属さない。
【００２６】
各ブロックは、全体では、分類パターンの数に等しい数以下の集合に属する。本例では、各ブロックは、全体では、３つの集合に属する。
【００２７】
認証コード生成手段１３は、各分類パターンにより形成された集合の各々に対して認証コードを生成する。本例では、集合Ｓａ１〜Ｓａ６、Ｓｂ１〜Ｓｂ６、Ｓｃ１〜Ｓｃ６の各々に対して認証コードを生成する。各認証コードは例えば１２８ビットから成る。
【００２８】
認証コードの生成には、各集合に属する全ブロックの画素（ピクセル）値系列のハッシュ値などや、ＤＣＴやウェーブレット（Wavelet）等の変換後の係数系列のハッシュ値などが用いられる。
【００２９】
認証コード分割手段１４は、各分類パターンにより形成された集合の各々に対して生成された認証コードを分割して、複数の認証コード部分を生成し、これらを該各集合に属するブロックに割り当てる。この分割及び割り当てに際し、各ブロックに対して、均等に或いは均等に近い形で割り当てを行なっても良く、不均等に行なっても良い。均等に（或いは均等に近い形で）割当てを行なう場合には、例えば各集合に属するブロックの数が、その集合に対して生成された認証コードのビット数の約数である場合、認証コードを均等に分割して、互いに同じビット数の認証コード部分を生成して割り当てる。例えば、各集合に対して生成された認証コードが１２８ビットから成り、その集合に属するブロックの数が、１６である場合、各ブロックに１２８÷１６＝８ビットの認証コード部分が割り当てられる。
【００３０】
また、集合に属するブロックの数が１２８の約数でないときは、均等に近い形で割り当てを行なう。例えば、各集合に対して生成された認証コードが１２８ビットから成り、その集合が１４ブロックから成る場合、２つのブロックの各々に１０ビットの認証コード部分を割り当て、残りのブロックの各々に、９ビットの認証コード部分を割り当てる。（１０×２＋９×１２＝１２８）。
【００３１】
不均等に割り当てる場合、画質の劣化しにくい部分や、重要でない部分などに優先して割当てを行なっても良い。
【００３２】
各ブロックは、各分類パターンにより形成された１組の集合のうちの最大で１つの集合に属しており、全体では、分類パターンの数に等しい数の集合に属しているので、それぞれの集合に割り当てられた認証コード部分のビット数の和が、各ブロックに割り当てられる複数の認証コード部分の総ビット数となる。
【００３３】
例えば、ブロックＢ（１，１）に埋込まれる認証コードの総ビット数は、集合Ｓａ１の認証コード（１２８ビット）の一部分（割り当て分)である８ビットと、集合Ｓｂ１の認証コード（１２８ビット）の一部分（割り当て分）である１０ビットと、集合Ｓｃ１の認証コード（１２８ビット）の一部分（割り当て分)である８ビットの和である、２６ビットである。
【００３４】
認証コード埋込み手段１５は、それぞれのブロックに割り当てられた認証コード部分を各ブロックに埋込む。例えば、ブロックＢ（１，１）には上記の例では、２６ビットが埋込まれる。このようにそれぞれ認証コード部分が埋込まれたブロックを１画面分集めたものが電子透かしを埋込まれた画像として、画像出力端子２から出力される。
【００３５】
認証コード分割手段１４と認証コード埋込み手段１５とで、認証コードを各集合に属するブロックに割り当てて埋込む認証コード割当て埋込み手段１８が形成されている。
【００３６】
図６は、改竄検出装置を示す。この検出装置は、図１の埋込み装置で電子透かしが埋込まれた画像を受けて、電子透かしの検出を行なうものである。図６の改竄検出装置２０は、画像入力端子３と、ブロック分割手段２１と、ブロック分類手段２２と、認証コード生成手段２３と、認証コード抽出手段２４と、認証コード結合手段２５と、認証コード比較手段２６と、改竄ブロック検出手段２７と、判定結果出力端子４とを有する。
【００３７】
画像入力端子３は、電子透かし埋込み装置１０からの画像を受ける。ブロック分割手段２１は、画像入力端子３から入力された画像を縦Ｍ画素×横Ｎ画素の大きさ、即ち互いに同じ大きさのブロックＢに分割する。このブロックの大きさ及び配置は、電子透かし埋込み装置１０のブロック分割手段１１で分割により形成されたブロックと同じである。ブロック分割手段２１は、図２を参照して説明したような、埋込み装置のブロック分割手段１１の動作と同様の動作を行なう。但し、入力された画像にはすでに電子透かしが埋込まれていると言う点で異なる。
【００３８】
ブロック分類手段２２は、分類パターン毎にブロックＢを複数の集合に分類する。即ち、図３〜図５を参照して説明したような、埋込み装置のブロック分類手段１２の動作と同様の動作を行なう。
【００３９】
認証コード生成手段２３は、各分類パターンにより形成された集合の各々に対して認証コードを生成する。即ち、埋込み装置の認証コード生成手段１３の動作と同様の動作を行なう。
【００４０】
認証コード抽出手段２４は、埋込み装置の認証コード埋込み手段１５によって各ブロックに埋込まれた認証コード部分を抽出する。
【００４１】
認証コード結合手段２５は、抽出された認証コード部分を、各分類パターンの各集合毎に結合することにより、埋込み装置で各集合に対して生成された認証コードを再生する。即ち、各ブロックからは、複数の集合の各々に対して生成された認証コード部分が抽出されるが、これをそれぞれ分離し、それぞれ同じ集合の他のブロックから抽出された認証コード部分と互いに結合することにより、それぞれの集合の認証コードを再生する。
【００４２】
例えば、ブロックＢ（１，１）からは、集合Ｓａ１に対して生成された認証コードの一部である認証コード部分と、集合Ｓｂ１に対して生成された認証コードの一部である認証コード部分と、集合Ｓｃ１に対して生成された認証コードの一部である認証コード部分とが抽出されるが、これらをそれぞれ分離し、集合Ｓａ１の認証コードの一部である認証コード部分を、同じ集合Ｓａ１に属する他のブロックから抽出された集合Ｓａ１の認証コードの一部である認証コード部分と結合して、集合Ｓａ１の認証コードを再生する。同様に、集合Ｓｂ１の認証コードの一部である認証コード部分を、同じ集合Ｓｂ１に属する他のブロックから抽出された集合Ｓｂ１の認証コードの一部である認証コード部分と結合して、集合Ｓｂ１の認証コードを再生する。同様に、集合Ｓｃ１の認証コードの一部である認証コード部分を、同じ集合Ｓｃ１に属する他のブロックから抽出された集合Ｓｃ１の認証コードの一部である認証コード部分と結合して、集合Ｓｃ１の認証コードを再生する。
【００４３】
認証コード比較手段２６は、各分類パターンの各集合の認証コードを比較する。即ち、各分類パターンの各集合に対して、認証コード生成手段２３で演算により生成された認証コードと、認証コード結合手段２５から得られる、抽出され結合されることにより再生された認証コードとを比較し、これにより、改竄の検出を行う。即ち、両者が等しくないときは、その集合内に改竄があった、即ち、その集合に属するブロックのいずれかにおいて改竄があったとの判断をする。
【００４４】
改竄ブロック検出手段２７は、各分類パターンの各集合について得られた比較の結果から、各ブロックに改竄があったかどうかの判定を以下のようにして行なう。
【００４５】
一例として、図７は、同図（ａ）に示すように、上から５行目で左から３列目のブロックＢ（５，３）内に改竄があった場合を示す。このブロックＢ（５，３）は、それぞれ図７（ｂ）、（ｃ）、（ｄ）に示すように、３つの分類パターンによる３つの集合Ｓａ３、Ｓｂ１、Ｓｃ１に属する。ブロックＢ（５，３）内に改竄があれば、これらの集合Ｓａ３、Ｓｂ１、Ｓｃ１内に改竄があったとの判断がなされる。そこで、本実施の形態では、集合Ｓａ３内に改竄があったとの判断があり、かつ、集合Ｓｂ１内に改竄があったとの判断があり、かつ、集合Ｓｃ１内に改竄があったとの判断があったときにのみ、これらの集合のすべてに重複して属するブロックＢ（５，３）内に改竄があったと判定する。
【００４６】
集合Ｓａ３内に改竄があったとの判断があり、かつ、集合Ｓｂ１内に改竄があったとの判断があり、かつ、集合Ｓｃ１内に改竄がなかったとの判断があったときは、分類パターンＰｃによる集合Ｓｃ１〜Ｓｃ６のうちの他の集合Ｓｃ２〜Ｓｃ６のいずれか（例えばＳｃ２）内で改竄があったとの判断がなされるはずであり、その場合、その集合（例えばＳｃ２）に属し、かつ集合Ｓａ３及び集合Ｓｂ１に属するブロック内に改竄があったとの判定がなされる。
【００４７】
これらを一般化して言えば以下のようになる。即ち、各ブロックが属する集合内に改竄があったとの判断がすべての分類パターンについて重複してなされたときに、そのブロックに改竄があったとの判定を行なう。
【００４８】
改竄があったと判定されたブロックを示す情報は、判定結果出力端子４から出力される。ブロックを示す情報としては、ブロックのＩＤや、画面上での位置を示す情報、大きさを示す情報、画素値を示す情報、周波数成分を示す情報などが考えられる。
【００４９】
従来の方法では、各ブロックに例えば１２８ビットの認証コードが埋込まれる。従って、画面全体では、
１２８×８０＝１０，２４０ビット
が埋込まれる。一方、本実施の形態では、３つの分類パターンの各々により６つの集合が形成され、各集合に１２８ビットの認証コードが埋込まれるので、画面全体では、
１２８×６×３＝２，３０４ビットが埋込まれる。ブロック当たりの平均の埋込みビット数は、
２，３０４÷８０＝２８．８ビット
である。このように本実施の形態の方が、画面全体でも、ブロック当たりでも埋込まれる認証コードの埋込みビット数が少なくて済む。従って画質に与える影響が小さい。
【００５０】
また、本実施の形態の方が、従来よりも高い改竄検出精度を得ることができる。例えば、本実施の形態では、２，３０４ビットの認証コードで、画像全体を８０のブロックを単位として改竄位置を特定できる。これに対し、従来の手法では、１画素につき、１２８の階調分のビットが必要になるため、２，３０４ビットでは、２，３０４÷１２８＝１８ブロックを単位としてしか改竄位置の特定ができない。したがって、認証ビット数を同じとすると、本実施の形態の方が改竄検出精度が高い。
【００５１】
上記の構成によれば、各ブロックに埋込まれる認証コードのビット数を抑えながら、高精度に改竄位置を特定できる。言換えると、同程度の改竄精度をもつ改竄検出の手法に比べて、各ブロックに埋込まれる認証コードのビット数が少なくて済み、そのため、画質が改善する。
【００５２】
また、図３に示すような分類パターン、即ち、各集合を互いに隣接する画素によって構成するパターンを少なくとも一つ使用することにより、改竄検出の客観的な品質が向上する（あるブロックが改竄されていると言う判断が誤ってなされた場合にも、本当に改竄されたブロックがその近くに存在する確率が高くなる）ので、後の処理が容易となる。
【００５３】
即ち、分類パターンが図４や図５に示すように、互いに離散したブロックで各集合を形成する場合には、あるブロックが改竄されていると言う判断が誤ってなされた場合に、本当に改竄されたブロックが画面上のどの位置にあるのか不明であり、その点で後の処理が容易ではない。図３に示すように、互いに隣接する画素によって各集合を構成することにより、この問題が解消する。
【００５４】
なお、上記の実施の形態では、画面内のブロックの数が８０であり、分類パターンの数が３つであり、各分類パターンにより形成される集合の数が６であるが、これらは一例であり、本発明はこれらの特定の数に限定されるものではない。
【００５５】
上記の実施の形態では、認証コード分割手段１４で認証コードを分割し、認証コード埋込み手段１５で分割した認証コードを埋込むこととしているが、認証コード分割手段１４を省略しても良く、また認証コード分割手段１４は、運用により認証コードを分割せずに、そのまま後続の認証コード埋込み手段１５に出力するよう動作させることができる。このような場合、検出側では、認証コード結合手段２５を省略しても良く、また認証コード結合手段２５は、認証コード抽出手段２４が抽出した認証コードをそのまま後続の認証コード比較手段２６に出力するように動作させても良い。この場合、認証コード比較手段２６は、認証コード抽出手段２４が画像データから抽出した認証コードと認証コード生成手段２３が生成した認証コードとを比較するよう動作する。
【００５６】
実施の形態２．
図８は、実施の形態２の電子透かし埋込み装置１６を示す。実施の形態２の埋込み装置は、実施の形態１の埋込み装置１０の構成と略同じである。異なるのは、鍵を入力する鍵入力端子５と、認証コード暗号化手段１７とが付加されていることである。
【００５７】
認証コード暗号化手段１７は、認証コード生成手段１３で複数の集合に対して生成された複数の認証コードのうちの一部の認証コードを暗号化する。即ち、複数の分類パターンのうちの一部の分類パターンにより形成された集合に対して生成された認証コードを暗号化する。他の分類パターンにより形成された集合に対して生成された認証コードは暗号化されない。
【００５８】
例えば、図３〜図５の示す３つの分類パターンのうち、図４及び図５に示す第２及び第３の分類パターンＰｂ、Ｐｃにより形成された集合Ｓｂ１〜Ｓｂ６、Ｓｃ１〜Ｓｃ６に対して生成された認証コードを暗号化する。図３に示す第１の分類パターンＰａにより形成された集合Ｓａ１〜Ｓａ６に対して生成された認証コードは暗号化されない。
【００５９】
認証コード分割手段１４は、暗号化された認証コードを認証コード暗号化手段１７から受け、それ以外の認証コード（暗号化されていない認証コード）を認証コード生成手段１３から受け、実施の形態１と同様に認証コードを分割して、各集合に割り当てる。上記以外の動作は実施の形態１と同じである。
【００６０】
図９は、実施の形態２の改竄検出装置２８を示す。実施の形態２の改竄検出装置２８は、実施の形態１の改竄検出装置２０と同様である。異なるのは、鍵を入力する鍵入力端子８と、認証コード暗号解読手段２９とが付加されていることである。
【００６１】
認証コード暗号解読手段２９は、認証コード結合手段２５から得られる複数の認証コードのうちの、埋込み装置１６で暗号化された認証コード（上記の例では、第２及び第３の分類パターンＰｂ、Ｐｃにより形成された集合に対して生成された認証コード）の暗号を、鍵入力端子６から入力された鍵を用いて解読する。
【００６２】
認証コード比較手段２６は、暗号が解読された認証コードを認証コード暗号解読手段２９から受け、暗号化されていない認証コードを認証コード結合手段２６から受け、これらを、実施の形態１と同様に、認証コード生成手段２３で生成された認証コードと比較する。認証コード暗号解読手段２９で解読できなかった認証コードに対しては比較を行わない。その他の動作は実施の形態１と同様である。
【００６３】
このように、複数の分類パターンのうち、一部の分類パターンにより形成された集合に対して生成された認証コードは、鍵を持っている場合にのみ改竄検出を行なうことができる。即ち、鍵を持っていればすべての認証コードを用いて改竄検出を行ない得るのに対して、鍵を持っていない場合には、暗号化されていない認証コードを用いた改竄検出しかできない。従って、使用者を、鍵を持つ使用者と、鍵を持たない使用者に区分し、それぞれの区分に応じて利用できる改竄検出の精度を異ならせることができる。
【００６４】
実施の形態３．
以上説明した、実施の形態１及び実施の形態２の埋込み装置及び検出装置により実施される埋込み及び検出は、いずれもコンピュータシステムで実施することができる。そのためのコンピュータシステムの構成を図１０に示す。
【００６５】
同図に示すように、このコンピュータシステムは、プロセッサ３１と、プログラムメモリ３２と、データメモリ３３と、入出力インターフェイス３４と、これらを結合するバス３５とを有する。プログラムメモリ３２は、図１の手段１１〜１５の動作を行なうためのプログラム、図６の手段２１〜２７の動作を行なうためのプログラム、図８の手段１１〜１５及び１７の動作を行なうためのプログラム、又は図９の手段２１〜２７及び２９の動作を行なうためのプログラムを記憶している。
【００６６】
プロセッサ３１は、プログラムメモリ３２に記憶されたプログラムに従って動作する。その際、データをデータメモリ３３にデータを書込んだり、読み出したりする。
【００６７】
コンピュータシステムが図１の埋込み装置として動作する場合には、プログラムメモリ３２には、図１の手段１１〜１５の動作を行なうためのプログラムが記憶されており、プロセッサ１１はこのプログラムに従って動作する。
【００６８】
コンピュータシステムが図６の検出装置として動作する場合には、プログラムメモリ３２には、図６の手段２１〜２７の動作を行なうためのプログラムが記憶されており、プロセッサ１１はこのプログラムに従って動作する。
【００６９】
コンピュータシステムが図８の埋込み装置として動作する場合には、プログラムメモリ３２には、図８の手段１１〜１５、１７の動作を行なうためのプログラムが記憶されており、プロセッサ１１はこのプログラムに従って動作する。
【００７０】
コンピュータシステムが図９の埋込み装置として動作する場合には、プログラムメモリ３２には、図９の手段１１〜１５、２９の動作を行なうためのプログラムが記憶されており、プロセッサ１１はこのプログラムに従って動作する。
【００７１】
プログラムが、別の記憶媒体３６に記憶されており、動作の実施の際、該記憶媒体３６からプログラムメモリ３２に転送するようにしても良い。
【００７２】
また、コンピュータシステムが埋込み装置として動作する場合、電子透かしを埋込まれた画像データを記憶媒体３７に書込んで他のコンピュータシステムに提供するようにしても良い。
【００７３】
【発明の効果】
本発明によれば、画質への影響が小さく、かつ改竄検出精度の高い電子透かし埋込み装置及び改竄検出装置を得ることができる。
【図面の簡単な説明】
【図１】  本発明の実施の形態１の電子透かし埋込み装置を示すブロック図である。
【図２】  画像のブロックへの分割を示す概略図である。
【図３】  ブロックの第１の分類パターンによる分類を示す概略図である。
【図４】  ブロックの第２の分類パターンによる分類を示す概略図である。
【図５】  ブロックの第３の分類パターンによる分類を示す概略図である。
【図６】  本発明の実施の形態１の改竄検出装置を示すブロック図である。
【図７】  改竄ブロック検出の方法を示す概略図である。
【図８】  本発明の実施の形態２の電子透かし埋込み装置を示すブロック図である。
【図９】  本発明の実施の形態２の改竄検出装置を示すブロック図である。
【図１０】  本発明の実施の形態３の電子透かし埋込み、検出に用いられるコンピュータシステムを示すブロック図である。
【符号の説明】
１１  ブロック分割手段、  １２  ブロック分類手段、  １３  認証コード生成手段、  １４  認証コード分割手段、  １５  認証コード埋込み手段、  １７認証コード暗号化手段、  １８  認証コード割当て埋込み手段、  ２１  ブロック分割手段、  ２２  ブロック分類手段、  ２３  認証コード生成手段、  ２４  認証コード抽出手段、  ２５  認証コード結合手段、  ２６  認証コード比較手段、  ２７  改竄ブロック検出手段、  ２９  暗号解読手段。
【図１】
0004151222.tif 000002
【図２】
0004151222.tif 000003
【図３】
0004151222.tif 000004
【図４】
0004151222.tif 000005
【図５】
0004151222.tif 000006
【図６】
0004151222.tif 000007
【図７】
0004151222.tif 000008
【図８】
0004151222.tif 000009
【図９】
0004151222.tif 000010
【図１０】
0004151222.tif 000011