(57)【要約】  本発明は、データ信号における拡散スペクトル透かしの埋め込みと、その埋め込まれた透かしの検出とに関する。データ信号4は、暗号化される15か、暗号化されたデータ信号9の形式で受信され、その信号は、暗号化テーブル6が格納されるルックアップテーブル2の１つ又は複数のエントリに基づき修正する3ことにより暗号化される。サーバデバイスといった第１の計算デバイス15を用いて、暗号化は実行される。信号を復号化する13間、実際に透かしが埋め込まれる。これは、可能であればクライアントデバイスである、第２の計算デバイス16で同様な態様で行われる。クライアントデバイスは、復号化テーブル8を利用する。これは、暗号化テーブル6の修正された(即ち、透かしの入った)バージョンである。復号化テーブルは、サーバにより生成されることができ、クライアントと安全に通信されることができる。ルックアップテーブル12のエントリに基づき、データ信号は復号化される。サーバ及びクライアントにおけるルックアップテーブル2,12は、個別のインデックス生成器1により生成されるポインタの同じシーケンスによりアドレス付けされる。暗号化テーブル6と復号化テーブル8とのミスマッチは、復号化された信号が、埋め込まれた透かしを持つことをもたらす。
2009532975.tif 000002
【特許請求の範囲】
【請求項１】
データ信号に拡散スペクトル透かしを埋め込む方法において、
暗号化されたデータ信号を受信するステップであって、前記暗号化されたデータ信号が、暗号化テーブルにおける１つ又は複数のエントリに基づき前記データ信号を修正することにより暗号化される、ステップと、
復号化テーブルを受信するステップであって、前記復号化テーブルが、前記暗号化テーブルの修正されたバージョンである、ステップと、
前記復号化テーブルのエントリに基づき前記データ信号を復号化し、前記復号化により前記データ信号に透かしを埋め込むステップとを有する、方法。
【請求項２】
前記暗号化テーブル又は復号化テーブルのエントリを指すインデックスのシーケンスが、入力キーから一意な系列状のインデックスを生成するよう動作可能な安全なインデックス生成器に基づき決定される、請求項１に記載の方法。
【請求項３】
前記データ信号が、第１の計算システムで暗号化され、前記データ信号は、第２の計算システムで復号化され、及び透かしが埋め込まれる、請求項１に記載の方法。
【請求項４】
前記修正が、加算的又は乗算的修正である、請求項１に記載の方法。
【請求項５】
前記復号化テーブルが、透かしテーブルに基づき生成され、前記透かしテーブルは、基準テーブルの修正されたバージョンである、請求項１に記載の方法。
【請求項６】
データ信号における透かしを検出する方法において、
可能性として拡散スペクトル透かしを含むデータ信号を受信するステップであって、前記可能性のある透かしが、復号化テーブルのエントリに基づき埋め込まれる、ステップと、
透かしテーブルのエントリに対応するインデックスのシーケンスを生成し、透かしを構築するステップと、
前記データ信号における前記透かしの存在を検出するステップとを有する、方法。
【請求項７】
前記透かしの検出が、前記データ信号と前記透かしとの相関に基づかれる、請求項６に記載の方法。
【請求項８】
推定される透かしが、前記データ信号から得られ、前記透かしの存在は、前記推定される透かしにおいて検出される、請求項６に記載の方法。
【請求項９】
データ信号における透かしを検出する方法において、
可能性として拡散スペクトル透かしを含むデータ信号を受信するステップであって、前記可能性のある透かしが、復号化テーブルのエントリに基づき埋め込まれる、ステップと、
前記復号化テーブルのエントリに対応するインデックスのシーケンスを生成するステップと、
前記インデックスのシーケンスに対応する位置で蓄積テーブルに前記データ信号のセグメントを蓄積し、前記蓄積により前記データ信号の蓄積テーブルを生成するステップと、
前記蓄積テーブルにおいて前記透かしの存在を検出するステップとを有する、方法。
【請求項１０】
前記データ信号の透かしの検出が、前記蓄積テーブルと透かしテーブルとの相関に基づかれる、請求項９に記載の方法。
【請求項１１】
推定される透かしが、前記データ信号から得られ、前記蓄積テーブルは、前記推定された透かしから構築される、請求項９に記載の方法。
【請求項１２】
前記透かしの検出が、前記蓄積テーブルと基準テーブルとの相関に基づかれ、前記基準テーブルは、系列状の透かしテーブルが得られるテーブルである、請求項９に記載の方法。
【請求項１３】
データ信号に拡散スペクトル透かしを埋め込む透かし埋め込み器であって、
暗号化されたデータ信号を受信する信号ユニットであって、前記暗号化されたデータ信号が、暗号化テーブルにおける１つ又は複数のエントリに基づき前記データ信号を修正することにより暗号化される、信号ユニットと、
復号化テーブルを受信するテーブルユニットであって、前記復号化テーブルが、前記暗号化テーブルの修正されたバージョンである、テーブルユニットと、
前記復号化テーブルのエントリに基づき前記データ信号を復号化し、前記復号化により前記データ信号に透かしを埋め込む埋め込みユニットとを有する、透かし埋め込み器。
【請求項１４】
可能性として拡散スペクトル透かしを含むデータ信号を受信する信号ユニットであって、前記可能性のある透かしが、復号化テーブルのエントリに基づき埋め込まれる、信号ユニットと、
透かしテーブルのエントリに対応するインデックスのシーケンスを生成し、透かしを構築するインデックス生成器と、
前記データ信号における前記透かしの存在を検出する検出ユニットとを有する、透かし検出器。
【請求項１５】
可能性として拡散スペクトル透かしを含むデータ信号を受信する信号ユニットであって、前記可能性のある透かしが、復号化テーブルのエントリに基づき埋め込まれる、信号ユニットと、
前記復号化テーブルのエントリに対応するインデックスのシーケンスを生成するインデックス生成器と、
前記インデックスのシーケンスに対応する位置で蓄積テーブルに前記データ信号のセグメントを蓄積し、前記蓄積により前記データ信号の蓄積テーブルを生成する蓄積ユニットと、
前記蓄積テーブルにおいて前記透かしの存在を検出する検出ユニットとを有する、透かし検出器。
【請求項１６】
埋め込まれた拡散スペクトル透かしを具備するデータ信号が記録された記録担体であって、前記透かしが、請求項１に記載の方法により埋め込まれる、記録担体。
【請求項１７】
請求項１に記載の方法を実現するコンピュータ可読コード。
【請求項１８】
請求項６に記載の方法を実現するコンピュータ可読コード。
【請求項１９】
請求項９に記載の方法を実現するコンピュータ可読コード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ信号に透かしを埋め込む方法及びデバイスに関する。特に、ルックアップテーブルを用いて信号に透かしを埋め込む方法及びデバイスに関する。更に、本発明は、データ信号における透かしを検出する方法及びデバイス、及び本発明の方法を実現するコンピュータ可読コードにも関する。
【背景技術】
【０００２】
デジタル透かしは、例えば、コンピュータネットワークを介して、電子コンテンツ流通(ECD)用途を介して、又は手渡しの公開流通を介しての著作権保護された素材のデジタル形式での不正な分散に対する有効な抑止手段であることを証明した。
【０００３】
コンテンツのコピーの分散を追跡するために、犯罪捜査用の追跡透かしがマルチメディアコンテンツに埋め込まれる。マルチメディアコンテンツへの透かしの埋め込みは、コンピュータの能力の観点からいうと複雑な処理である。犯罪捜査用の追跡透かしの大規模な利用は、透かしの埋め込み及び透かしの入ったコンテンツの分散に関する効率的でスケーラブルなシステムを必要とする。クライアント側での埋め込みは、スケーラビリティに関する問題を解決する。なぜなら、サーバの処理負荷が、クライアントに分散されるからである。更に、ポイント対ポイント接続を用いてはっきり透かしの入ったコピーを送る代わりに、中間ノードでキャッシュされる透かしの入っていない(unmarked)共通のコピーがブロードキャスト、又はマルチキャストされることができる。
【０００４】
FSE'97で公開されたR.J. Anderson及びC. Manifavasによる記事「Chameleon - a new kind of stream cipher」、高速ソフトウェア暗号に関するProc. Of the 4th Int. Workshop、Springer - Verlag 1997、pp. 107 - 113によれば、出力フィードバックモードで動作される擬似ランダム番号生成器が、キーストリームを生成するのに使用され、そのキーストリームから選択された４ワードが一緒に排他的論理和演算(EXOR)され、続いてプレーンテキストとEXORされる処理により、そのプレーンテキストが暗号化される方法が開示される。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明の発明者は、デジタルコンテンツの透かしを処理する改善された手段が有益であることを認識しており、結果として本発明を思いついた。発明者は、従来の方法が、データストリームのビット変型(bit modification)を排他的論理和演算の形式で処理しており、それにより、透かしの除去に対してもろいという見識を持っていた。本発明は、著作権保護のための改善された手段を提供しようとするものであり、好ましくは、本発明は、従来技術における１つ又は複数の不都合点を、単独で又は組み合わせにより、軽減し、和らげ、又は削除する。
【課題を解決するための手段】
【０００６】
本発明の第１の側面によれば、データ信号に拡散スペクトル透かしを埋め込む方法が与えられる。その方法は、
暗号化されたデータ信号を受信するステップであって、上記暗号化されたデータ信号が、暗号化テーブルにおける１つ又は複数のエントリに基づき上記データ信号を修正することにより暗号化される、ステップと、
復号化テーブルを受信するステップであって、上記復号化テーブルが、上記暗号化テーブルの修正されたバージョンである、ステップと、
上記復号化テーブルのエントリに基づき上記データ信号を復号化し、上記復号化により上記データ信号に透かしを埋め込むステップとを有する。
【０００７】
本発明による方法は、拡散スペクトル透かしを埋め込む。暗号化され透かしの入った、又は一般的に修正されたビットが、複数のビットにわたり拡散又は分散される。この透かしは、従来の透かしより一層堅牢なものとなり、より好適に検出されることができる。その方法は、暗号化テーブルの１つ又は複数のエントリに基づき、透かしの入っていないデータ信号が修正される第１のステップと、暗号化された信号の復号化及び透かし埋め込み(watermarked)が単一処理で行われる第２のステップとを含む。復号化は、暗号化テーブルの修正されたバージョンである復号化テーブルに基づかれる。好ましくはその修正は、透かしテーブルを暗号化テーブルに適用することにより、例えば加算又は乗算することにより得られる。暗号化テーブルは、ランダムに生成されることができる。
【０００８】
データ信号は、音声、映像、画像、マルチメディアソフトウェア、多次元グラフィックモデル、ソフトウェア構造等を単独又は任意の組み合わせの形で含む、又は有する信号とすることができる。
【０００９】
データ信号は、系列状のシンボルにより表されることができ、その場合、データ信号のシンボルは、データ信号の任意の表現として理解されることになる。例えば、ビットストリームのセグメント、ベースバンド信号、変換領域における信号のDCT係数等である。例において、本発明は、画像又は映像シーケンスにおける各ピクセル値又はピクセル値のサブセットに適用されることができる。この場合、データ信号のシンボルは、ピクセル値とすることができる。別の例では、本発明は、データ信号の変換係数に適用されることができる。この場合、データ信号のシンボルは、変換係数とすることができる。例えば音声信号の場合、その係数は、信号の振幅、ピッチ等を表す係数とすることができる。その係数は、MDCT係数、線形予測係数、フーリエ係数等の信号の特定のエンコーディングの係数とすることもできる。
【００１０】
第１の側面による発明は、多数の理由から特に、しかし排他的にではなく有利である。ビット修正を用いる透かしとは反対に、拡散スペクトル透かしは通常、改ざん、劣化、及び共通信号処理動作に耐性がある。修正されたビットをランダムな値にセットし、それにより透かしを除去することにより、少なくともいくつかのタイプの修正が除去されることができる。更に本発明に基づき埋め込まれた透かしを検出することができるために、透かしの入っていない(unmarked)元のデータ信号は必要とされない。通常透かしテーブルの形式での透かしと、復号化テーブルの対応するエントリとだけが、必要とされる。更に、信号における特定の位置での透かし強度を規定する知覚マスクに基づき、透かしが埋め込まれることができる。
【００１１】
請求項２に規定されるオプションの特徴は、有利である。なぜなら、入力キーの大きさが、暗号化、復号化、又は透かしテーブルのサイズと比べてかなり小さくすることができるからである。例えば、ワンタイムパッド(OTP)を使用する方法と比べて、キーサイズはかなり小さくされる。
【００１２】
請求項３に規定されるオプションの特徴は、安全なシステム(secure system)といった第１の計算システムでデータ信号が暗号化される方法の有利な実現を示す。そのデータ信号は、第２の計算システムで復号化され、透かしが埋め込まれる。その第２のシステムは、必ずしも安全なシステムでなくてよい。復号化テーブルは、第１の計算システムで生成されるか、又は、例えば、第１の計算システムに通信可能に接続される別の計算システムで、第１の計算システムによりアクセスされるものとすることができる。
【００１３】
請求項４は、透かしを埋め込む有利な実施形態を記載する。本発明の利点は、透かしが、加算的及び乗算的の両方の態様で信号に埋め込まれることができる点にある。
【００１４】
請求項５に規定されるオプションの特徴は、有利である。なぜなら、透かしテーブルが基準透かしテーブルの修正されたバージョンに基づかれることにより、ペイロードが挿入されることができるからである。
【００１５】
ある実施形態において、系列状の復号化テーブルが、系列状の透かしテーブルに基づき生成され、系列状の透かしテーブルは、基準透かしテーブルの修正されたバージョンとすることができる。修正されたバージョンは、基準透かしテーブルを環状にシフトすることにより取得されることができる。そのシフトは、ペイロードを表す。
【００１６】
本発明の第２の側面によれば、データ信号における透かしを検出する方法が与えられる。その方法は、
可能性として拡散スペクトル透かしを含むデータ信号を受信するステップであって、上記可能性のある透かしが、復号化テーブルのエントリに基づき埋め込まれる、ステップと、
透かしテーブルのエントリに対応するインデックスのシーケンスを生成し、透かしを構築するステップと、
上記データ信号における上記透かしの存在を検出するステップとを有する。
【００１７】
本発明の第２の側面による方法は、本発明の第１の側面による方法により埋め込まれた透かしを検出することに基づき与えられる。
【００１８】
上記透かしの検出は、上記データ信号と上記透かしとの相関から得られることができる。オプションで、推定される透かしが、上記データ信号から得られ、上記透かしの存在は、上記推定される透かしにおいて検出されることができる。検出される透かしは、透かしテーブル及び系列状のエントリから生成されることができる。
【００１９】
本発明の第３の側面によれば、データ信号における透かしを検出する方法が与えられる。その方法は、
可能性として拡散スペクトル透かしを含むデータ信号を受信するステップであって、上記可能性のある透かしが、復号化テーブルのエントリに基づき埋め込まれる、ステップと、
上記復号化テーブルのエントリに対応するインデックスのシーケンスを生成するステップと、
上記インデックスのシーケンスに対応する位置で蓄積テーブルに上記データ信号のセグメントを蓄積し、上記蓄積により上記データ信号の蓄積テーブルを生成するステップと、
上記蓄積テーブルにおいて上記透かしの存在を検出するステップとを有する。
【００２０】
本発明の第３の側面による方法は、本発明の第１の側面による方法により埋め込まれた透かしを検出することに基づき与えられる。
【００２１】
本発明の第３の側面による方法は、有利である。なぜなら、蓄積テーブルが、信号よりずっと短く、これにより、高速な検出処理を提供するからである。多数の可能性のある透かしが、所与のデータ信号でサーチされることになる場合、検出処置が高速であることが重要である。
【００２２】
上記透かしの検出が、上記蓄積テーブルと上記透かしテーブルとの相関から得られることができる。オプションで、推定される透かしが、上記データ信号から取得され、上記透かしの存在が、上記推定される透かしにおいて検出されることができる。上記蓄積テーブルは、上記推定された透かしから構築されることができる。
【００２３】
ある実施形態では、系列状の復号化テーブルが、系列状の透かしテーブルに基づき生成される。その系列状の透かしテーブルは、基準透かしテーブルの修正されたバージョンである。その修正されたバージョンは、基準透かしテーブルを環状にシフトすることにより取得されることができる。上記透かしの検出が、上記蓄積テーブルと上記系列状の透かしテーブルとの相関により得られるか、又は上記蓄積テーブルと上記基準テーブルとの相関から得られることができる。
【００２４】
本発明の第４の側面では、データ信号に拡散スペクトル透かしを埋め込む透かし埋め込み器が与えられる。
【００２５】
本発明の第５及び第６の側面では、データ信号に可能性として埋め込まれる透かしの存在を検出する透かし検出器が与えられる。
【００２６】
本発明の第７、第８及び第９の側面では、第１、第２及び第３の側面の方法を実現するコンピュータ可読コードが与えられる。
【発明を実施するための最良の形態】
【００２７】
一般に本発明のさまざまな側面が、本発明の範囲内で可能な任意の態様で組み合わされ、結合されることができる。本発明のこれら及び他の側面、特徴及び／又は利点は、以下に述べられる実施形態から明らかとなり、それらの実施形態を参照して説明されることになる。
【００２８】
本発明の実施形態が、図面を参照して、例示に過ぎないものを介して説明されることになる。
【００２９】
図１は、本発明の実施形態による、データ信号４に透かしを埋め込むスキーム又は処理１０を概略的に示す。図１は、サーバデバイスといった第１の計算デバイス１５とクライアント又はユーザデバイスといった第２の計算デバイス１６と共に、埋め込み処理を示す。この実施形態では、第１の部分が第１の計算デバイス１５に存在し、第２の部分が第２の計算デバイス１６に存在するよう、透かし埋め込み器が実現される。映像又は音声コンテンツを備える信号といった透かしが埋め込まれていないデータ信号４が、サーバ１５での信号ユニット１７で受信又はアクセスされる。
【００３０】
埋め込み処理は、２つのステップ又は部分で実行される。１つ目の部分では、信号が暗号化される。この部分は通常サーバ１５で実行される。２つ目の部分では、信号が復号化され、透かしが埋め込まれる。この部分は通常クライアントデバイス１６で実行される。
【００３１】
暗号化処理の入力は、安全なインデックス生成器１に入力キー５を入力するステップを有する。安全なインデックス生成器は、入力キーから一意な系列状のインデックスを生成するよう動作可能である。インデックス生成器の各インデックスは、ルックアップテーブル６におけるエントリを指す。ルックアップテーブルは、テーブルユニット２を用いて、サーバにより受信され、アクセスされ、サーバで生成される。暗号化テーブルのエントリに基づきデータ信号を修正することにより、そのデータは暗号化ユニット３で暗号化される。その後暗号化された信号９が、ユーザに配布される。暗号化された信号９は、暗号化されたデータ信号を受信する信号ユニット１８で受信又はアクセスされ、ユーザデバイス、即ちクライアントデバイスも、入力キー５を受信又はアクセスする。入力キーが与えられると、安全なインデックス生成器１は、データ信号を暗号化するのに使用される同じ系列状のインデックスを生成することができる。更に、そのクライアントデバイスは、暗号化テーブルユニット１２で、復号化テーブル８を受信又はアクセスする。復号化テーブルは、暗号化テーブルの透かしの入ったバージョンである。復号化テーブルの対応するエントリに基づき暗号化されたデータ信号を修正することにより、暗号化された信号は埋め込みユニット１３で復号化される。復号化テーブルは、暗号化テーブルの透かしの入ったバージョンであるので、復号化された信号１４は、元の入力信号の透かしの入ったバージョンである。入力キー及び復号化テーブルは、安全な通信チャネルを介して、別々に又はまとめてのいずれかの態様でクライアントに配布される。入力キー及び復号化テーブルは通常、暗号化されたデータ信号とは別に送信される。その信号は、コンピュータネットワークを介して、電子コンテンツ流通(ECD)用途を介して、記録可能若しくはROM光学記録担体、又は、半導体若しくは磁気ベースの担体といった記録担体を介して等により配布されることができる。その後、信号のユーザは、CDプレイヤ、DVDプレイヤ、コンピュータ、携帯再生デバイス、ゲーム端末といったデータ信号を読み出すよう構成されるデバイスでその信号をレンダリング又は再生することができる。
【００３２】
こうして、本発明の処理は、透かしを埋め込み、透かしの入ったコンテンツを安全で効率的かつスケーラブルな態様で配布することを可能にする。透かしがなく暗号化されていないデータの処理は、信頼のおけるサイト、例えば信頼されたサーバデバイス１５により実行されることができる。透かしはないが暗号化されたデータは、可能性として信頼されていないクライアント１６に配布される。そのクライアントは、透かしのないコンテンツも透かし信号のどちらもがクライアントにさらされないような処理で、そのデータ信号の復号化及び透かしの埋め込みをローカルで実行する。ユーザは、入力キーと復号化テーブルとに対するアクセスのみを得る。
【００３３】
図２は、図１の埋め込みスキームに基づく暗号化処理２０の実施形態を示す。
【００３４】
透かし埋め込みは、インデックス生成器２２と暗号化テーブル２３とに基づかれる。インデックス生成器２２は、出力フィードバックモード(OFB)で動作するストリーム暗号器といった安全な擬似ランダム番号生成器とすることができる。OFBモードのストリーム暗号器は、ショートターム入力キー２１から系列状のインデックス２４、２５を生成することができる。入力キーのサイズは、64又は128ビットとすることができる。暗号化ルックアップテーブル(LUT)２３は、多数のエントリを有するロングタームテーブル、又はキーである。暗号化LUTは、Eと参照される。LUTサイズは、128 KBから128 MBの範囲にあるものとすることができる。1 MBのサイズは、通常のサイズである。LUTの特殊なサイズは、安全性とサイズとの間のトレードオフに基づき決定されることができる。
【００３５】
図示される実施形態において、その処理は、ルックアップテーブルの整数エントリと、データ信号の整数値表現とを用いて例示される。しかしながら、その処理はこれに限定されるものでないことを理解されたい。データ信号は、系列状のシンボルとして表される。データ信号のシンボルは、データ信号の任意の表現として理解されたい。ビットストリームの斯かるセグメント、又は変換領域における信号のDCT係数Cnが、ここでは整数値により表される。
【００３６】
ルックアップテーブル２３は、サーバでランダムに生成されることができる。図２において、多数の整数が異なったエントリ位置に図示される。番号２６で表されるあるエントリは、負の整数-127であり、番号２７で表される別のエントリは、正の整数+14である。エントリのタイプは、透かしが埋め込まれる信号表現を反映する。例えば透かしが画像の蛍光ピクセル値に埋め込まれると、そのエントリは、0〜255までの範囲の値を取ることになる。データ信号の他の表現では、他のエントリタイプ又は値が使用される。例えば、DCT係数が、実数(real value)により表されることができる。
【００３７】
多数のポインタ又はインデックス２４、２５が、データ信号の各シンボルに対して生成される。ここでは、例として２つだが、３、４、５、１０又はそれ以上の任意の数のポインタが適用されることができる。
【００３８】
各ポインタによりインデックス化されたLUTエントリが抽出され２８、２９、一緒に追加される２００。例えば、E(t2n) = -127及びE(t2n+1) = +14が抽出されて追加され、その結果、データ信号の所与のシンボルに対する暗号化鍵が生じる。ここでは、番号２０５により表される整数-113である。暗号化鍵２０５は、続いて、データ信号のシンボルに結合(追加)され２０２、ここでのデータ信号は、番号２０６により表される数+128で例示される。その結果、暗号化されたデータシンボル２０３が生じ、この場合、番号２０７により表される数+15である。変換領域係数の観点からは、修正された、即ち暗号化された係数は、C'n = Cn + E(t2n) + E(t2n+1)と表されることができる。
【００３９】
図３は、図１の復号化及び透かし埋め込みスキームによる復号化及び透かし埋め込み処理３０の実施形態を示す。
【００４０】
LUT Eから、サーバは、ロングターム復号化テーブル３３Dkを構築する。復号化テーブルは、ユーザ特有であり、kは、ユーザ特有のインデックスを参照している。例えば、Dk = - (E + Wk)である。ユーザは、特定のエンドユーザ、エンドユーザのグループ等とすることができる。ユーザ特有な透かしは、Wkとして参照される。Wkのエントリは、Eより少ない分散を持つランダム変数とすることができる。透かしは、通常Eと同じサイズのLUTの形式でもある。復号化テーブル(即ち透かしテーブル)をインデックス化することにより、犯罪捜査用追跡が可能である。なぜなら、所与の透かしが、意図されたユーザにリンクされることができるからである。
【００４１】
インデックスを生成し、こうしたインデックスに対応するLUTを用いてデータを修正することにより、復号化及び透かし埋め込みは、クライアント側１６で実行される。
【００４２】
暗号化のときと同様、インデックスは、インデックス生成器２２(OFBモードで動作するストリーム暗号器)により生成される。データの暗号化のときと同様、対応するシーケンス又は系列状のポインタ３４、３５ tnを生成するのに、ショートターム入力キー２１が使用される。
【００４３】
暗号化テーブルの透かし埋め込みは、テーブルエントリのエントリを少し変更する。Dk = - (E + Wk)であるような実施形態において、番号３６で表されるエントリは、3を減算することによって変更され、新しいエントリ+130を与える。一方、番号３７で表されるエントリは、変更されない。なぜなら、透かしテーブルにおけるエントリはゼロだからである。代わりに番号３１で表されるエントリが変更される。対応する透かしLUT５３は、図５に図示される。
【００４４】
暗号化のときと同様、各ポインタの復号化LUTエントリが抽出され３８、３９、共に追加される３００。例えば、E(t2n) = +130及びE(t2n+1) = -14が抽出されて追加され、その結果、暗号化鍵が生じる。ここでは、番号３０６により表される整数+116である。暗号化鍵は、続いて、暗号化されたデータ信号のシンボルに結合され３０２、ここでのデータ信号は、番号２０７により表される数+15で例示される(図２における、結果として生じる暗号化されたシンボル)。その結果、復号化され、しかし透かしの埋め込まれたデータシンボルが生じ、この場合、番号３０７により表される数+131である。変換領域係数の観点からは、修正された、即ち復号化され透かしの埋め込まれた係数は、CW,n = C'n + Cn + D(t2n) + D(t2n+1)と表されることができる。
【００４５】
図４は、本発明によるデータ信号における透かしを検出するスキーム４０の実施形態を概略的に示す。そのスキームは、透かし検出器で実現されることができる。透かし検出は、可能性として透かしを含むデータ、例えば疑わしいデータに関して実行されることができる。その検出処理は、検出される透かしへのアクセスを持つ安全なサーバサイトで実行されることができる。
【００４６】
可能性として透かしを含むデータ信号４７は、信号ユニット４１で受信され、オプションで、その透かしは、その受信されたデータ信号から推定ユニット４６で推定される。透かし推定は、例えば、透かし信号を強調する高域通過フィルタの適用とすることができる。他のタイプの透かし推定方法が使用されることもできる。しかしながら透かしの検出は、受信された形式におけるデータ信号に関しても行われることができる。
【００４７】
可能性としてデータ信号に含まれる透かしに対するエントリのシーケンスを生成するのに使用される入力キー２１は、安全なインデックス生成器２２に入力され、透かしLUT４５の関連エントリが、テーブルユニット４２で抽出される。その透かしは、そこから生成される。続いて、データ信号又は推定された透かしを透かしLUTから導かれる透かしと比較することにより、生成された透かし存在４８が、その信号において検出ユニット４３で検出される。
【００４８】
図５は、図４の検出スキームによる検出手順５０の実施形態を示す。
【００４９】
暗号化及び復号化のときと同様、インデックス５４、５５が、インデックス生成器２１、２２(OFBモードで動作するストリーム暗号器)により生成される。そのインデックスは、透かしシーケンスを再構成するのに、透かしLUT５３と一緒に用いられる。
【００５０】
透かしLUTは、暗号化及び復号化LUT間の差分LUTである。所与の例において、2, 3のエントリを除くすべてのエントリがゼロである。しかしながら、より多くのエントリ、更に多くのエントリ、又はすべてのエントリが、有限の(通常は小さな)値を含むことができる。各ポインタのLUTエントリが抽出され５８、５９、透かし値を構築するため共に追加される５００。例えば、番号５６により表されるWk(t2n) = -3及び番号５７により表されるWk(t2n+1) = 0が抽出され５８、５９、追加される５００。その結果、透かし値が生じる。ここでは、番号５０６により表される整数-3である。調査されるデータ信号５０１から、オプションで透かしが(例えばデータ信号の高域通過変換を用いて)推定され５０２、その推定された透かし値が、透かしLUT５３から導かれる透かし値と相関される５０３。調査される(又は疑わしい)データが、実際に問題の透かしを含むかどうかを決定するため５０５、相関の結果は閾値５０４と比較される。
【００５１】
図６は、本発明によるデータ信号における透かしを検出するスキーム６０の別の実施形態を概略的に示す。そのスキームは、透かし検出器で実現されることができる。
【００５２】
可能性として透かしを含むデータ信号６７が、信号ユニット６４で受信され、オプションで、その透かしは、その受信されたデータ信号から推定ユニット６６で推定される。入力キー２１及びインデックス生成器２２が、前述同様関連エントリを生成及び抽出するのに使用される。しかしながら、本実施形態において、インデックスのシーケンスに対応するデータ信号のセグメント又はシンボルが、蓄積ユニット６３により蓄積LUTに蓄積される。透かし６２は、蓄積LUTを透かしLUTに相関させることにより、信号における検出ユニット６１により検出される。こうして、この実施形態では、データ信号の関連セグメントが、安全なインデックス生成器２２により生成されたエントリに基づき配置されるよう、受信されたデータ信号が蓄積テーブルに再配置される。
【００５３】
図７は、図６の検出スキームによる検出手順７０の実施形態を示す。
【００５４】
暗号化及び復号化のときと同様、インデックス生成器２２と入力キー２１とによりインデックスが生成される。データが受信され７１、オプションでそこから透かしが推定される７２。データ信号のシンボルが抽出され、ここでは、番号７０６により表される整数-2で例示される。データ信号のシンボルは、インデックス生成器により生成された系列状のインデックスに基づき蓄積テーブル７４に蓄積される７３。蓄積テーブルは最初は空である。データ信号のシンボルのエントリが、t2n及びt2n+1に対応するような状況で、そのシンボルは、これらの位置７５、７６で蓄積テーブル７４に挿入される。一旦全体の蓄積テーブルが構築されると、その蓄積テーブルは、透かしLUT５３と相関される。データ信号が、実際に問題の透かしを含むかどうかを決定するため７９、相関の結果は閾値７８と比較される。
【００５５】
図面と共に、加算的な透かしを適用する実施形態が説明されてきた。しかしながら本発明は、乗算的な透かしと共に適用されることもできる。この場合、加算及び減算が、乗算及び除算により置き換えられる。
【００５６】
本発明の実施形態において、暗号化された信号に異なる暗号化テーブルを用いることにより、異なる透かしが同じデータ信号に埋め込まれることができる。その場合、復号化テーブルは、対応する、しかし異なる透かしテーブルに基づかれることができる。更に、これらの透かしテーブルは、共通の基準テーブルから得られることができる。ある実施形態では、透かしテーブルは、基準テーブルを環状にシフトすることにより生成される。この場合、蓄積テーブルとすべての異なる透かしテーブルとの間の相関を計算することにより、検出処理が実行されることができる。斯かる相関計算は、本発明により、効率的な態様で実行されることができる。効率的な計算は、蓄積テーブルを基準テーブルと相関させることを含む。この処理は、相関ベクトルCを
C = IFFT(FFT(蓄積テーブル) * Conj(FFT(基準テーブル))
として決定することにより、周波数領域で実行されることができる。ここで、FFT(.)は、高速フーリエ変換を示し、IFFT(.)は、逆高速フーリエ変換を示し、及びConj(.)は、複素信号の共役を示す。結果の相関ベクトルCは、基準テーブルのすべての可能なシフトに対する相関値に対応する。結果として、すべての異なる透かしテーブルとの相関が、これは基準テーブルのシフトされたバージョンであるが、単一のステップで実行されることができ、各透かしテーブルを個別に蓄積テーブルに相関させるのとは逆に処理時間の節約になる。
【００５７】
他の実施形態では、データ信号を系列状の透かしと相関させる必要がある。またデータ信号を多数の基準透かしと相関させる必要がある可能性もある。各基準透かしは、系列状の透かしサンプルにより表される。図面では、可能性として基準透かしである、又はその基準透かしに基づかれる透かしが単一の場合の状況だけが示される。しかしながら、図示される実施形態は、基準透かしに基づき、透かしを埋め込む及び検出するよう一般化されることができる点を理解されたい。
【００５８】
本発明の好ましい実施形態において、透かし埋め込み方法及び装置は、知覚マスクも有する。知覚マスクは、人間の音声映像知覚に基づき、透かし強度の局所及び／又は全体の調整を参照する。人間の知覚特性を利用することは、より強力な透かし信号をデジタルコンテンツに埋め込むことを可能にする。こうして、透かしが埋め込まれたデジタル対象物の知覚上の品質に対する悪影響なしに、悪意ある攻撃に対する耐性が改善される。知覚マスクの処理は通常、透かしwに知覚マスクフィルタh(.)を適用することを含む。マスクは好ましくは、実際の透かし埋め込み処理の前にデジタルコンテンツから計算される。斯かる事前の計算が可能ではない又は実現できない場合、一般的なマスクフィルタが使用されることができる。
【００５９】
本発明による透かし埋め込み方法では、マスクフィルタh(.)が、透かしwkに適用されることができない。なぜなら、透かし自身は、アクセス不可能だからである。代わりに、フィルタh(.)が暗号化鍵(即ち、図２における加算器２００により追加されるような暗号化テーブル２３のエントリのシーケンス)及び復号化鍵(即ち、図３における復号化テーブル３３の追加されたエントリのシーケンス)に適用される。知覚マスク処理は以下のように説明されることができる。
【００６０】
暗号化鍵に対してE(t)という記述を用いると、暗号化されたデジタル対象物e(x)は、
e(x) = x + h(E(t))
と表される。復号化鍵Dk(t)は、クライアント特有な透かしwk分E(t)とは異なり、
Dk(t) = E(t) - wk
と表される。透かしが埋め込まれた信号は、Dk(t)を用いてe(x)の復号化により得られ、
xw = e(x) - h(Dk(t))
が成立する。知覚マスクフィルタの必要な線形特性を用いると、これは、
xw = (x + h(E(t))) - (h(E(t)) - h(wk)) = x + h(wk)
と表される。
【００６１】
要約すると、本発明は、データ信号における拡散スペクトル透かしの埋め込みと、その埋め込まれた透かしの検出とに関する。データ信号は、暗号化されるか、暗号化されたデータ信号の形式で受信され、その信号は、暗号化テーブルが格納されるルックアップテーブルの１つ又は複数のエントリに基づき修正することにより暗号化される。サーバデバイスといった第１の計算デバイスを用いて、暗号化は実行される。信号を復号化する間、透かしが実際に埋め込まれる。これは、可能であればクライアントデバイスである、第２の計算デバイスで同様な態様で行われる。クライアントデバイスは、復号化テーブルを利用する。これは、暗号化テーブルの修正された(即ち、透かしの入った)バージョンである。復号化テーブルは、サーバにより生成されることができ、クライアントと安全に通信されることができる。ルックアップテーブルのエントリに基づき、データ信号は復号化される。サーバ及びクライアントにおけるルックアップテーブルは、個別のインデックス生成器により生成されるポインタの同じシーケンスによりアドレス付けされる。暗号化テーブルと復号化テーブルとのミスマッチは、復号化された信号が、埋め込まれた透かしを持つことをもたらす。
【００６２】
本発明は、ハードウェア、ソフトウェア、ファームウェア、又はこれらの任意の組み合わせを含む適切な形式で実現されることができる。本発明又は本発明のいくつかの特徴は、１つ若しくは複数のデータプロセッサ、及び／又はデジタル信号プロセッサ上で実行されるコンピュータソフトウェアとして実現されることができる。本発明の実施形態の要素及び部品は、任意の適切な態様で物理的、機能的及び論理的に実現されることができる。実際、その機能は、単一のユニットで、複数のユニットで、又は他の機能ユニットの一部として実現されることができる。そのようなものとして、本発明は、単一のユニットで実現されることができるか、又は異なるユニット及びプロセッサ間に物理的及び機能的に分散されることができる。
【００６３】
本発明は、特定の実施形態と共に説明されてきたが、本書に記載される特定の形式に限定されることを意図するものではない。むしろ、本発明の範囲は、添付された特許請求の範囲によってのみ限定される。特許請求の範囲において、「有する」という用語は、他の要素又はステップの存在を排除するものではない。更に、個別の特徴が異なる請求項に含まれることができるが、これらは可能であれば有利に結合されることができる。異なる請求項に含まれることは、特徴を組み合わせることが、実現可能でない、及び／又は有利ではないことを意味するものではない。更に、単数形の参照は、複数性を排除するものではない。従って、「a」「an」「第１」「第２」等への参照は、複数性を除外するものではない。更に、請求項における参照符号は、発明の範囲を限定するものとして解釈されるべきではない。
【図面の簡単な説明】
【００６４】
【図１】データ信号における透かしを埋め込むスキームを概略的に示す図である。
【図２】暗号化処理の実施形態を示す図である。
【図３】復号化及び透かし埋め込み処理の実施形態を示す図である。
【図４】データ信号における透かしを検出するスキームを概略的に示す図である。
【図５】図４の検出手順の実施形態を示す図である。
【図６】データ信号における透かしを検出する別のスキームを概略的に示す図である。
【図７】図６の検出手順の実施形態を示す図である。
【図１】
2009532975.tif 000003
【図２】
2009532975.tif 000004
【図３】
2009532975.tif 000005
【図４】
2009532975.tif 000006
【図５】
2009532975.tif 000007
【図６】
2009532975.tif 000008
【図７】
2009532975.tif 000009
【国際調査報告】
2009532975.tif 000010
2009532975.tif 000011