(57)【特許請求の範囲】
【請求項１】
固有にマークされている、媒体のセグメントを配置換えすることによって、配布用コピーの媒体のソースを識別する方法であって、
媒体を形成するために配置された複数のセグメントであって、それぞれが固有にマークされている複数のセグメントを識別するステップと、
上記配置された複数のセグメントから代表マスタ鍵（ＲＭＫ）を生成するステップと、
を有し、
上記代表マスタ鍵は、上記媒体の複数のセグメントの順読出しであり、そして、当該代表マスタ鍵は、上記複数のセグメントから各セグメントに関連するマスタソースを識別することを特徴としており、
方法は、さらに、
上記マスタソースにリンクされているセグメントの順序であって、擬似ランダム法で生成されセグメントの順序であるフィンガプリントと該フィンガプリントにリンクされた媒体のソースをデータベースから受信するステップと、
上記代表マスタ鍵と上記フィンガプリントとを比較するステップと、
上記代表マスタ鍵から第１の複数の鍵セットを生成するステップと、
上記フィンガプリントから第２の複数の鍵セットを生成するステップと、
上記第１の複数の鍵セットと上記第２の複数の鍵セットとを比較するステップと、
を有する媒体のソース識別方法。
【請求項２】
上記フィンガプリントは、擬似乱数シーケンスを含むことを特徴とする請求項１に記載の媒体のソース識別方法。
【請求項３】
さらに、上記代表マスタ鍵と上記フィンガプリントとが一致した場合、上記フィンガプリントにリンクされた媒体のソースを出力するステップを有する請求項１に記載の媒体のソース識別方法。
【請求項４】
さらに、閾値が供給されるステップと、
上記第１の複数の鍵セットと上記第２の複数の鍵セットとを比較して一致した鍵セットの数が上記閾値以上となったときに、上記フィンガプリントにリンクされたソースを出力するステップを有する請求項１に記載の媒体のソース識別方法。
【請求項５】
さらに、上記フィンガプリントから上記第２の複数の鍵セットを生成し、複数のフィンガプリントの鍵セットを生成することを繰り返すステップと、
閾値が供給されるステップと、
上記第１の複数の鍵セットと上記第２の複数の鍵セットとを比較して一致した鍵セットの数が上記閾値以上になったときに、上記複数のフィンガプリントにリンクされたソースを出力するステップとを有する請求項１に記載の媒体のソース識別方法。
【請求項６】
固有にマークされている、媒体のセグメントを配置換えすることによって、配布用コピーの媒体のソース識別で用いる、有形の記憶媒体に記憶されるコンピュータプログラムであって、
コンピュータに
媒体を形成するために配置された複数のセグメントであって、それぞれが固有にマークされている複数のセグメントを識別するステップと、
上記配置された複数のセグメントから代表マスタ鍵を生成するステップと、
を行わせ、
上記代表マスタ鍵は、上記媒体の複数のセグメントの順読出しであり、そして、当該代表マスタ鍵は、上記複数のセグメントから各セグメントに関連するマスタソースを識別することを特徴としており、
コンピュータプログラムは、さらに、コンピュータに、
上記マスタソースにリンクされているセグメントの順序であって、擬似ランダム法で生成されセグメントの順序であるフィンガプリントと該フィンガプリントにリンクされた媒体のソースをデータベースから受信するステップと、
上記代表マスタ鍵とフィンガプリントとを比較するステップと、
上記代表マスタ鍵から第１の複数の鍵セットを生成するステップと、
上記フィンガプリントから第２の複数の鍵セットを生成するステップと、
上記第１の複数の鍵セットと上記第２の複数の鍵セットとを比較するステップと、
を行わせる実行可能命令を含むコンピュータプログラム。
【請求項７】
さらに、上記コンピュータに、上記代表マスタ鍵と上記フィンガプリントとが一致した場合、上記フィンガプリントにリンクされたソースを出力するステップを行わせる実行可能命令を含む請求項６記載のコンピュータプログラム。
【請求項８】
さらに、上記コンピュータに、
閾値が供給されるステップと、
上記第１の複数の鍵セットと上記第２の複数の鍵セットとを比較して一致した鍵セットの数が上記閾値以上になったときに、上記複数のフィンガプリントにリンクされたソースを出力するステップとを行わせる実行可能命令を含む請求項６に記載のコンピュータプログラム。
【請求項９】
さらに、上記コンピュータに、
上記フィンガプリントから上記第２の複数の鍵セットを生成し、複数のフィンガプリントの鍵セットを生成することを繰り返すステップと、
閾値が供給されるステップと、
上記第１の複数の鍵セットと上記第２の複数の鍵セットとを比較して一致した鍵セットの数が上記閾値以上になったときに、上記複数のフィンガプリントにリンクされたソースを出力するステップとを行わせる実行可能命令を含む請求項６に記載のコンピュータプログラム。
【請求項１０】
固有にマークされている、媒体のセグメントを配置換えすることによって、配布用コピーの媒体のソースを識別する際に用いるためのフィンガプリントシステムであって、
前記媒体を形成するために配置された複数の媒体セグメントであって、それぞれが固有にマークされている複数のセグメントを識別する手段と、
上記媒体の複数のセグメントの順読出しである代表マスタ鍵（ＲＭＫ）であって、上記配置された複数のセグメントから、前記媒体の各セグメントとそれに対応するマスタソースとを関連付けし、当該マスタソースを識別するための複数の媒体ソース識別子を有する代表マスタ鍵（ＲＭＫ）を生成する手段と、
を備え、
前記対応するマスタソースは、複数のマスタソースの一つであり、当該複数のマスタソースのそれぞれは、同じコンテンツであるが検証可能な異なる識別を有することを特徴としており、
フィンガプリントシステムは、さらに、
上記マスタソースにリンクされているセグメントの順序であって、擬似ランダム法で生成されセグメントの順序であり、前記媒体の少なくとも一つのセグメントとそれに対応するマスタソースとを関連付けする少なくとも一つの媒体ソース識別子を有するフィンガプリントと該フィンガプリントにリンクされたソースをデータベースから受信する手段と、
上記代表マスタ鍵と上記フィンガプリントとを比較する手段と、
上記代表マスタ鍵から第１の複数の鍵セットを生成する手段と、
上記フィンガプリントから第２の複数の鍵セットを生成する手段と、
上記第１の複数の鍵セットと上記第２の複数の鍵セットとを比較する手段と、
を備えるフィンガプリント媒体のためのフィンガプリントシステム。
【請求項１１】
上記複数のセグメントから各セグメントに関連付けされている前記マスタソースは、複数のマスタソースのうちの一つであり、該複数のセグメントのそれぞれは、該複数のマスタソースのうちの一つであることを特徴とする請求項１に記載の媒体のソース識別方法。
【請求項１２】
上記フィンガプリントは、少なくとも一つのマスタソースを上記媒体の少なくとも一つのセグメントに関連つけることを特徴とする請求項１に記載の媒体のソース識別方法。
【発明の詳細な説明】
【背景技術】
【０００１】
〔関連出願〕
本発明は、名称「ウォータマーク付きコンテンツとウォータマークなしコンテンツとの擬似ランダム結合を使用するデータのフィンガプリント方法」の同時係属米国仮特許出願第６０／４８０，６８７号、出願日２００３年６月２３日の優先権の利益を請求する。本願は、名称「データのフィンガプリント方法」の同時係属米国仮特許出願第６０／４９１，７６３号、出願日２００３年７月３１日の優先権の利益も請求する。出願日２００３年６月２３日及び２００３年７月３１日の優先権の利益はこれにより請求され、仮特許出願の開示内容はこの参照により開示に含まれる。
【０００２】
インターネットの急速な発展及びその結果としてデジタルデータの複製と配布の可能性により、これらの不正な活動を防止し、海賊版に関連する諸問題から著作権者を保護する方法に対する需要が増大しつつある。例えば、違法コピーはデジタルデータの許可配布コピー（例えば、市販のコピー）から生成されることがある。デジタルデータの特定のドキュメントを不正又は違法コピーと比較することにより、ウォータマークはそのドキュメントが著作権者自身の知的財産であるとの証拠を著作権者に提供することができる。不正コピーの拡散を抑制、防止又は禁止するために、不法コピーを作るのに使用された当該の配布コピーを特定することにより、不正コピーの出所を知るのが有効な場合が多い。しかしながら、不正コピーを生成するのに使用された配布コピーを識別するためにウォータマーク埋込を用いることは難しいかもしれない。
【０００３】
不正又は違法配布コピーの出所を特定するために、デジタルウォータマークを埋め込むことができる。例えば、デジタルウォータマークを埋め込んでドキュメントを保護しようとする場合は、著作権者のウォータマークとともに、ドキュメントの電子配信コピーを受信することができる顧客を識別する識別子をドキュメントの中に気付かれないように埋め込むことができる。もし顧客が著作権者の利益に反して配布コピーのコピーを配布した場合は、不正又は違法配布コピーの全てに含まれるデジタルウォータマークに基づき、その顧客を識別することができる。しかしながら、多くの配布コピーを多くの異なる顧客に合法的に配布することができる場合は、各配布コピーに個別にデジタルウォータマークを入れるのは一般的には不便で、時間もかかることが明らかになっている。
【発明の概要】
【課題を解決するための手段】
【０００４】
本発明は、データのフィンガプリントを実施するための方法及び装置を提供する。一実施形態においては、フィンガプリント方法は、複数の入力データセットを受信し、複数の入力データセットの各々を複数の入力セグメントに分割し、複数の入力データセットの少なくとも１つを固有にマーキングするステップと、複数の入力のデータセットの少なくとも２つの異なる入力データセットの１つから少なくとも１つの入力セグメントを選択するステップと、選択された少なくとも１つの入力セグメントを、出力セグメントの数が各入力データセット内の入力セグメントの数と等しくなるように、配置して、複数の出力セグメントを有する出力データセットを生成するするステップとを有する。
【０００５】
他の実施形態において、フィンガプリント装置は、複数の入力データセットを受信し、複数の入力データセットの各々を複数の入力セグメントに分割し、複数の入力データセットの少なくとも１つが固有にマーキングする複数の受信ユニットと、複数の入力のデータセットの少なくとも２つの異なる入力データセットの１つから少なくとも１つの入力セグメントを選択するセレクタと、選択された少なくとも１つの入力セグメントを、出力セグメントの数が各入力データセット内の入力セグメントの数と等しくなるように、配置して、複数の出力セグメントを有する出力データセットを生成する少なくとも１つの結合器とを備える。
【０００６】
他の実施形態において、フィンガプリント媒体のフィンガプリントシステムは、複数の媒体セグメントに分割された媒体を受信する受信機と、媒体をマーキングし、少なくとも１つのウォータマーク付き媒体を生成し、少なくとも１つのウォータマーク付き媒体の各々を複数のウォータマーク付き媒体セグメントに分割する第１エンコーダと、媒体と少なくとも１つのウォータマーク付き媒体とを圧縮するための第２エンコーダと、媒体の１つと少なくとも１つのウォータマーク付き媒体から少なくとも１つの媒体又はウォータマーク付き媒体セグメントを選択するセレクタと、選択された少なくとも１つの媒体又はウォータマーク付き媒体セグメントを、配置して、複数のフィンガプリント付きセグメントを有するフィンガプリント付きセグメントを、フィンガプリント付きセグメントの数が、媒体又はウォータマーク付き媒体セグメントの数に等しくなるように、生成する少なくとも１つ結合器とを有する。
【０００７】
他の実施形態において、媒体のソース識別方法は、媒体を受信し、媒体を形成するために配置された複数のセグメントを識別するステップと、配置された複数のセグメントから代表マスタ鍵（ＲＭＫ）を生成するステップと、フィンガプリントとフィンガプリントにリンクされた媒体のソースを受信するステップと、ＲＭＫとフィンガプリントとを比較するステップとを有する。
【図面の簡単な説明】
【０００８】
【図１】２つのマスタを用いたフィンガプリント付きコンテンツを生成するための方法の実施形態を例示した図である。
【図２】データのフィンガプリントを実施するための処理を例示したフローチャートである。
【図３】３つのマスタそれぞれと５つのセグメントとの結合の表示を例示した図である。
【図４】ＤＶＤパッケージ媒体を生成するためのフィンガプリント方法の１つの可能な実施形態を例示した図である。
【図５】一実施形態によるＤＶＤパッケージ媒体を生成するためのフィンガプリント方法の他の可能な実施形態を例示した図である。
【図６】入力マスタのセグメントを処理するために設定されたセグメント結合器の詳細線図を例示した図である。
【図７】ダウンロードされた媒体の固有フィンガプリント付きバージョンを生成するための２つの媒体ファイルのセグメント的結合の一実施形態を例示した図である。
【図８】ビデオオンデマンドコンテンツの固有フィンガプリント付きバージョンを生成するための２つの媒体ファイルのセグメント結合の一実施形態を例示した図である。
【図９】ＲＭＫ及びＫＳを使用する一実施形態による媒体のソースを識別する処理を例示したフローチャートである。
【発明を実施するための形態】
【０００９】
本発明は、フィンガプリント付き媒体を生成する効率を高め、システムロバスト性を提供するシステム及び方法を記載したものである。
【００１０】
一実施形態において、フィンガプリントシステムは、ウォータマーク付きコンテンツとウォータマークなしコンテンツとの擬似ランダム結合を使用するデータのフィンガプリント方法を提供する。フィンガプリント付きデータは、科学捜査の手法を使用してコンテンツを固有に識別するために使用することができる。このシステムは、ビデオ及びオーディオ基本データ又は多重ストリームのような様々なタイプのデータに適用可能である。さらに、このシステムは、ＤＶＤ及びビデオテープのようなパッケージ媒体、インターネットからダウンロードされたコンテンツ、及び／又は他のあらゆる媒体にも適用することができる。
【００１１】
図１は、第１マスタ１００及び第２マスタ１０２を用いて、フィンガプリント付きコンテンツを生成する方法の実施形態を示す。他の実施形態において、３以上というように、マスタの数を変えることができる。この方法は、複数のマスタ（ｍi）を生成するステップを有し、ここでは、指数ｉはｉ番目のマスタを示す。第１マスタ１００は、ウォータマークなしである。第２マスタ１０２は、例えば、デジタルウォータマーク埋込を用いることによって、固有ウォータマーク付きとなる。３つ以上のマスタを有する、他の一実施形態において、１つのマスタは、ウォータマークなしであり、他のマスタの各々は、固有ウォータマーク付きである（例えば、第２マスタは第３マスタとは異なるウォータマーク付きである）。
【００１２】
マスタは、次にｎ個の部分又はセグメントに分割される。ウォータマークなしマスタ１００の中の各セグメントは、同じ大きさであり、ウォータマーク付きマスタ１０２に対応するセグメントと同じコンテンツを有する（例えば、マスタ１００のセグメント１はマスタ１０２のセグメント１と同じ大きさであり、同じコンテンツを有する）。このように、後述するように異なるマスタ１００、１０２からのセグメントを擬似ランダム結合することにより、コピー１０４、１０６を生成することができる。ウォータマークなしマスタ１００のコンテンツは、ウォータマーク付きマスタ１０２のコンテンツと同一ではあるが、各マスタは、異なるウォータマークを有する。例えば、ウォータマークなしマスタ１００の第１セグメントは、ウォータマーク付きマスタ１０２の第１セグメントと同じコンテンツを有するが、ウォータマークなしマスタ１００の第１セグメントは、ウォータマークなしであり、ウォータマーク付きマスタ１０２の第１セグメントは、ウォータマーク付きである。その結果として、（ウォータマークなしデータとウォータマーク付きデータとを比較する場合に一般的であるように）コンテンツに影響を与えず、セグメントを区別することができるデータは異なるかもしれないが、対応するセグメント内の基本情報は同じである。
【００１３】
ｍ個のマスタからｎ個の各セグメントを擬似ランダムに結合することに基づき、マスタと同じｎ個の各セグメントを含むマスタのコピーが生成され、各セグメントは、擬似ランダムに選択されたマスタから取られる。それらのｎ個のセグメントは、フィンガプリントのような擬似ランダムに生成されたセグメントのシーケンスを有するコピーを生成するように、擬似ランダム方法によって、セグメントは選択され、結合される（連結される）。コピーのフィンガプリントは、コピー内の各セグメントに対するソースマスタを識別する。したがって、擬似ランダムに生成された結合は、各コピーの十分明確なフィンガプリントを生成することができるように構成されている。マスタからセグメントを擬似ランダム割当て、全てのコピーに十分明確なフィンガプリントを、セグメント結合のパターンを繰り返さずに割り当てることができるように、複数の擬似乱数が生成される。したがって、生成された擬似乱数の数は、所望のコピーの数以上でなければならない。
【００１４】
上述したデータのフィンガプリント方法は、図２に示すフローチャートに例示する。ステップ２００において、複数のマスタを受信し、各マスタを複数のセグメントに分割し、各マスタに固有マーキングする（例えば、デジタルウォータマークを付す）。一実施形態において、１つのマスタを、ウォータマークなしの状態のままにする。マスタ内の第１セグメントは、他の各マスタの第１セグメントに対応している。一実施形態において、各セグメント内における各ウォータマーク（又はウォータマークの欠如）により、他のマスタの対応するセグメントから、各セグメントを区別することができる（そのセグメントが属するマスタを特定することができる）。他の一実施形態において、対応するセグメントから区別することができるセグメントは、全てのセグメントではない。
【００１５】
ステップ２０２において、少なくとも２つの異なるマスタの１つから少なくとも１つのセグメントを選択する。ステップ２０４において、フィンガプリントを生成する。一実施形態において、フィンガプリントは、擬似乱数シーケンスである。ステップ２０６において、出力データセット内のセグメントの数が各マスタ内のセグメントの数と等しくなるように、出力データセットを生成し、フィンガプリントに基づき選択されたセグメントを配置する。セグメントの選択及び配置の一例を、図３との関連で以下に記載する。ステップ２０８において、生成された出力データセットを、（例えば、ＣＤ又はＤＶＤに焼き付けられ、ＶＨＳテープに複製された）パッケージ媒体のような媒体製品に記憶し、配布用コピーを生成する。ステップ２１０において、フィンガプリントを、パッケージ媒体にリンクし、リンケージを記憶する（例えば、フィンガプリント、当該の媒体品目を識別するＩＤコード、及びその媒体品目を受信するために顧客を識別するＩＤコードをデータベースのテーブルエントリに記憶する）。
【００１６】
擬似乱数生成器は、セグメントを選択及び配置することができるパターンを決定する。したがって、擬似乱数生成器は、繰り返すことなく十分多くの数の擬似乱数を生成させなければならない。一実施形態において、擬似乱数生成器は、各セグメントに対して１桁の数字を含む数を生成し、各数字の範囲は、１からマスタの数までである。各数字は、コピー内の１つのセグメントと一致し、数字の値は、どのマスタからそのセグメントが複製されたのかを示している。他の一実施形態において、擬似乱数生成器は、桁数として各セグメントに適切な数を生成し、数字を１つのパターンにまとめる。
【００１７】
例えば、図３に示したように、もしマスタ１、２、３が存在し、各マスタを５つのセグメントに分割すると、擬似乱数生成器は、各数字の値の範囲が１〜３の５桁の数を生成し、「１３２１３」及び「２２１３１」のような数パターンを生成する。これらの擬似乱数パターンは、コピー１及びコピー２のセグメントをそれぞれ生成するために用いることができ、擬似乱数パターンの各数字は、ソースマスタのセグメントを示している。
【００１８】
例えば、マスタ１のセグメントは、１〜５の範囲の数列により表され、マスタ２のセグメントは、１’〜５’の範囲の数列により表され、マスタ３のセグメントは、１”〜５”の範囲の数列により表される。図３に示すように、擬似乱数生成器は、擬似乱数列「１３２１３」をコピー１に、擬似乱数列「２２１３１」をコピー２に割り当てている。したがって、コピー１の数列「１３２１３」は、セグメント１をマスタ１から複製すべきであり、セグメント２をマスタ３から複製すべきであること等を示している。したがって、コピー１セグメントは、１−２”−３’−４−５”として生成することができる。コピー２セグメントは、同様に１’−２’−３−４”−５として生成することができる。各コピーの擬似乱数列は、データベースに記憶され、データを要求した特定のユーザ及び／又はデータを記憶する媒体の品目にリンクすることができる。これらのデータベースエントリは、後にソースの識別に使用することができる。
【００１９】
フィンガプリント付き媒体を生成する効率及びシステムのロバスト性を理解するための手掛かりを提供するために、擬似乱数列の数を決定する因子を分析することができる。例えば、考えられる個々のフィンガプリントの数は、３つの因子、すなわち、マスタの数（ｍ）、マスタ内のセグメントの数（ｎ）、及び互換性のあるセグメントの最小数（ｋ）によって決定される。これらの因子を用いて、結合（ｃ）の数を、以下のように決定することができる。
【００２０】
もし最大ｎ個のセグメントが互換性を有する場合、結合の数は、次式[１]により決定される。
【００２１】
【数１】
0005529185.tif 000002
【００２２】
もし最大ｋ個のセグメントが互換性を有する場合、結合の数は、次式[２]により決定される。
【００２３】
【数２】
0005529185.tif 000003
【００２４】
もし正確にｎ個のセグメント内のｋ個が互換性を有する場合、結合の数は、次式[３]により決定され、ここに、nＣk'は、ｎ個のセグメント内のｋ’個の結合を一度に表し、nＣkは、ｎ個のセグメントの中のｋ個の結合を一度に表す。
【００２５】
【数３】
0005529185.tif 000004
【００２６】
例えば、１２０分の映画に２つのマスタ（ｍ＝２）が存在し、各マスタを６０個のセグメント（ｎ＝６０）に分割し、６０個のセグメント内の２０個のセグメント（ｋ＝２０）のみが互換性を有する場合、数２を用いると、固有結合の数は、４，１９１，８４４，５０５，８０５，４９５（４０００兆以上）になる。セットアップを簡素化するために、２つのマスタ（ｍ＝２）が存在し、各マスタが２０個のセグメント（ｎ＝２０）を有し、２０個のセグメント全てが互換性を有すると仮定する。数１を使用すると、考えられる結合の数は、１，０４８，５７６になる。表１は、マスタ及びセグメントの数により、結合の規模がどの程度になるかを示したものである（ｃの値は切り上げてある）。
【００２７】
【表１】
0005529185.tif 000005
【００２８】
上述したデータフィンガプリントの技術は、配布するために物理的パッケージが製造される様々な異なる媒体に適用することができる。例えば、データのフィンガプリントは、映画の批評のために米国映画芸術科学アカデミーのメンバーに配布されるＤＶＤパッケージ媒体（「アカデミースクリーナ」）、インターネットからダウンロードされたコンテンツ媒体、又は優先配信ビデオオンデマンド（ＶＯＤ）に適用することができる。これらの適用例の各々については、以下で詳細に記載する。他の適用例としては、ホームネットワーキング、特別注文オンデマンドＣＤ／ＤＶＤ編集、ＣＤ／ＤＶＤ記録可能媒体へのクライアント側「焼付け」及び他の関連媒体がある。さらに、フィンガプリントの技術は、スイッチャを用いたアナログチャンキングに移植可能である。
【００２９】
アカデミースクリーナ媒体（例えば、ＤＶＤパッケージ媒体又はＶＨＳテープ）からの海賊版の問題は、明らかであり、その事実が認められている。提案されている１つの解決策は、映画をマーキングして、符号化して、個別に各ＤＶＤに「焼付け」又はＶＨＳに記録するように、送出されたあらゆるコピーに（例えば、固有ウォータマークによって）個別にマーキングすることである。しかしながら、上述したように、各コピーに、個別に異なるウォータマークによってマーキングすることは、非常に煩雑で、多大の時間を必要とする可能性がある。
【００３０】
図４は、ＤＶＤパッケージ媒体を個別にマーキングする一般的な方法の実行可能な一実施形態を示す。この処理は、ウォータマークなしビデオファイル４００により開始する。生成される全てのＤＶＤコピー用の識別子（ＩＤ）は、データベース４０２に記憶される。ウォータマーク付きビデオファイル４０６を生成するために、ウォータマークなしビデオファイル４００は、ウォータマークエンコーダ４０４内で固有ＩＤウォータマークが付される。固有ＩＤは、データベースエントリに記憶される。ウォータマーク付きビデオファイル４０６は、次にビデオエンコーダ４０８によって符号化され、ビデオエンコーダ４０８は、圧縮ビデオファイル４１０を生成する。一実施形態において、ビデオエンコーダ４０８は、ＭＰＥＧ−２エンコーダとして構成されている。
【００３１】
圧縮ビデオファイル４１０は、マルチプレクサ４１２内で圧縮オーディオファイル４１４と結合され、１つ以上の結合されたビデオオーディオファイル及びメタデータファイル４１４を生成する。１つ以上の結合されたビデオオーディオファイル及びメタデータファイル４１４は、ＤＶＤ生成器４１６内でＤＣＤに焼き付けられ、ＤＶＤコピー４１８を生成する。特定のＤＶＤ上の固有ＩＤウォータマークによって、そのＤＶＤを識別するＩＤは、データベースエントリに記憶される。
【００３２】
個別ウォータマーク付きＤＶＤを生成するという観点から、上述した処理を記載したが、所望の数（ｘ）のＤＶＤコピーを生成するためには、その数だけこの処理を繰り返さなければならないことは言うまでもない。したがって、上述した処理は、技術的には可能であるが、実用的には煩雑で、費用もかかる。例えば、一般的に、２時間映画の場合、ウォータマークエンコーダ４０４のウォータマーク埋込処理は、最大で８時間かかることがある。ビデオエンコーダ４０８内におけるＭＰＥＧ−符号化処理は、最大で２時間かかることがある。マルチプレクサ４１２内におけるオーディオビデオ結合処理は、最大で約３０分かかることがあり、ＤＶＤ焼付け処理は、最大でさらに３０分かかることがある。したがって、ＤＶＤコピーをそれぞれ生成するのに、最大で約１１時間かかることがある。個別ウォータマーク付きコピーを同時に生成するために、追加的資源を有効に活用することもできるが、コピーの数が多い場合は、個別ウォータマーク付きコピーを同時に生成するには費用がかさむこともある。
【００３３】
図５は、ＤＶＤパッケージ媒体を生成するためのフィンガプリント処理の一実施形態を示す。図５の実施形態を用いて、ＤＶＤコピーを生成する処理をかなり迅速に行うことができる。
【００３４】
図５の実施形態において、この処理は、ビデオマスタ５００により開始する。次に、ビデオマスタ５００の２つのコピー５０４Ａ、５０４Ｂが生成される。ビデオマスタの第１コピー５０４Ａは、ウォータマークが付されず、一方、第２コピー５０４Ｂは、ウォータマークエンコーダ５０２によってウォータマークが付される。ウォータマーク付きコピー５０４Ｂを符号化するために、特定のウォータマーク付き識別子（ＩＤ）が使用される。他の一実施形態において、異なるマーキング処理を使用することもできる。
【００３５】
次に、ビデオマスタの２つのコピー５０４Ａ、５０４Ｂは、ビデオエンコーダ５０６Ａ、５０６Ｂによってそれぞれ符号化される。ビデオエンコーダ５０６Ａ、５０６Ｂは、それぞれ圧縮ビデオファイル５０８Ａ、５０８Ｂを生成する。圧縮ビデオファイル５０８Ａは、マーキングされず、圧縮ビデオファイル５０８Ｂは、マーキングされる。一実施形態において、ビデオエンコーダは、ＭＰＥＧ−２として構成されている。
【００３６】
結合ビデオオーディオファイル５３２Ａ、５３２Ｂを生成するために、圧縮ビデオファイル５０８Ａ、５０８Ｂは、一対のマルチプレクサ５１０Ａ、５１０Ｂ内で圧縮オーディオファイル５２０とそれぞれ結合される。マルチプレクサ５１０Ａ、５１０Ｂは、ビデオオブジェクト（ＶＯＢ）と呼ばれるセグメント内において、圧縮ファイル５０８Ａ、５０８Ｂを処理するように構成されている。結合ビデオオーディオファイル５３２Ａは、複数のセグメントを有するウォータマークなしＤＶＤファイルである。結合ビデオオーディオファイル５３２Ｂは、結合ビデオオーディオファイル５３２Ａと同じ数のセグメントを有するウォータマーク付きＤＶＤファイルである。したがって、ＤＶＤファイルである結合ビデオオーディオファイル５３２Ａ、５３２Ｂの関係は、図１に示した２つのマスタ１００、１０２の関係に実質的に類似している。ＶＯＢセグメントについては以下に詳細に記載する。
【００３７】
図１に示したコピー１０４、１０６に類似したフィンガプリント付きコピーを生成するために、セグメント結合器５３４Ａ、５３４Ｂは、ＤＶＤファイルである２つの結合ビデオオーディオファイル５３２Ａ、５３２Ｂを使用する。各結合ビデオオーディオファイル５３２Ａ、５３２Ｂの異なるセグメントを再結合（連結）するために、各セグメント結合器５３４Ａ、５３４Ｂは、固有識別子を用いる。上述したように、各固有識別子は、擬似乱数生成器により生成され、媒体の各コピー及び／又は品目の受取人を識別するために、データベース５２２に記憶される。したがって、図１は、ブロック５３０の一実施形態の働きを実質的に表している。
【００３８】
セグメント結合器５３４Ａ、５３４Ｂの出力によって生成されたフィンガプリント付きコピーは、ＤＶＤ生成器５４０Ａ、５４０Ｂを用いて、ＤＶＤ５４２Ａ、ＤＶＤ５４２Ｂにそれぞれ焼き付けられる。追加コピーを生成するためには、ウォータマークなしＤＶＤファイル及びウォータマーク付きＤＶＤファイルのセグメントの異なる結合がセグメント結合器５３４Ａ、５３４Ｂのいずれかにおいて行われ、次にＤＶＤに焼き付けられる。あらゆるコピーについて、ウォータマークエンコーダ５０２によるウォータマーク埋込、エンコーダ５０６による符号化、及びマルチプレクサ５１０による多重化及び処理が繰り返されることはない。したがって、図５の実施形態において、図４の実施形態とは対照的に、処理全体における各段階を繰り返すのではなく、所望の数（ｘ）のＤＶＤコピー５４２を生成するために、結合器によるセグメントの再結合及びＤＶＤへの焼付けが繰り返される。したがって、図５に例示した処理の場合、ウォータマーク埋込は、１つのビデオマスタに対して１回だけしか行われないので、所要時間が大幅に短縮されるはずである。そのため、ブロック５３０及び５４０により表された処理の場合、ＤＶＤ１枚あたりの所要時間が１時間未満になるはずである。
【００３９】
図６は、ＤＶＤ専用の実施形態に基づいて、入力マスタのセグメントを処理するために構成されたセグメント結合器５３４を詳細に示すブロック図である。しかし、図６に示す実施形態は、ビデオテープのような他のパッケージ媒体に拡張してもよい。
【００４０】
入力マスタであるＤＶＤのセグメントは、いくつかの所定のビデオオブジェクトユニット（以下、ＶＯＢＵという）境界で生成され、「ＶＯＢＵグループ」にグループ化される。各ＶＯＢＵグループは、独立型多重化ユニットであり、前又は後のユニットへ依存していない。さらに、ＶＯＢＵは、１つ以上のグループの画像（ＧＯＰ）から構成されている。ＤＶＤ−ＶＩＤＥＯフォーマットに定義されているような１つのＶＯＢＵは、長さ０．４〜１．２秒とすることができる。ＶＯＢＵグループは、必要に応じた数のＶＯＢＵを有していてもよい。
【００４１】
ＶＯＢＵグループを結合して、一組のＶＯＢファイル形成する。各ＶＯＢファイル毎にメタデータ（ＩＦＯ）ファイルを生成する。メタデータファイルが提供する詳細の１つには、一組のＶＯＢファイル内のＶＯＢＵのオフセット情報がある。このＶＯＢからエンドユーザへの再生は、正規のＤＶＤのＶＯＢからの再生であるように思われる。本質的には、ＶＯＢは、ＶＯＢＵグループの結合であるが、各ＶＯＢＵグループは、２つの異なるビデオ（ＭＰＥＧ−２）エンコードの部分から多重化されたデータによって構成されている。したがって、ＶＯＤは、ＤＶＤ仕様制約に従い、実質的に準拠している。その結果、リッピング又は再符号化（例えば、ＤiＶx又はＸvidのようなフォーマット）によって、これらのＤＶＤの１つの海賊版が生成された場合、ビデオストリームを解析し、ウォータマーク付きビデオセグメントが存在するポイントを特定することにより、システムは、海賊版コピーの出所を識別することができる。システムは、これらの位置と、ＤＶＤに焼き付けた時に生成されたデータベースサーバに記憶された位置とを比較することができる。各ＤＶＤは、ウォータマーク付きセグメントの固有パターンを有し、したがって、各ＤＶＤには、効率的に「フィンガプリントされた」ことになる。
【００４２】
インターネットからダウンロードされたコンテンツ媒体を、フィンガプリントするために、図５に示す実施形態に類似した実施形態を使用することができる。図７に示す実施形態において、２つの媒体ファイル、すなわち、１つのウォータマークなしの媒体ファイル７０２Ａ及び１つのウォータマーク付きの媒体ファイル７０２Ｂをセグメントに分割して、結合器７０４は、セグメントを固有パターンで結合して、ダウンロードされた各コンテンツの固有フィンガプリント付きバージョンを生成する。擬似乱数生成器によって生成された識別子を用いて、各固有結合を生成して、フィンガプリント付きコピーを識別するために、データベース７０６に記憶する。フィンガプリント付きコピーは、インターネット７１０を介してクライアントＰＣ７１２へダウンロードするために、ウェブサーバ７０８を介して記憶されるか、流される。クライアントＰＣ７１２に対して、再結合／フィンガプリント付きファイルは、１つの連続ファイルとして現れる。クライアントＰＣ７１２は、ウェブサーバ７０８において行われた再結合（すなわち、フィンガプリント）の知識を有していない。
【００４３】
図７の実施形態と同様に、ＶＯＤ（ビデオオンデマンド）コンテンツは、図８に示すようにフィンガプリントすることができる。この実施形態において、ＶＯＤサーバは、セグメントに分割された２つの媒体ファイル、すなわち、１つのウォータマークなし媒体ファイル８０２Ａ及び１つのウォータマーク付きの媒体ファイル８０２Ｂからフィンガプリント付きファイルを生成する。各配信毎にコンテンツの固有フィンガプリント付きバージョンを生成するために、この２つの媒体ファイル８０２Ａ、８０２Ｂを、結合器８０４内でセグメント式結合する。ＶＯＤ媒体ファイルは、通常、ＭＰＥＧ−２輸送ストリームファイルであり、パッケージ化されているので、これらの媒体ファイルは、フィンガプリントの有望な候補である。
【００４４】
図８に示す実施形態において、２つの媒体ファイル８０２Ａ、８０２Ｂは、ＶＯＤサーバ８０８内で結合される。したがって、上述したシナリオは、ユニキャストシナリオと呼ばれ、すなわち、データは、ソースで結合され、他の配布コピーの知識を有していない送信先に送信される。
【００４５】
他の一実施形態（図示せず）において、衛星が多重マスタを各衛星放送受信機ボックスに送信することができる（すなわち、各ボックスへの多重マスタの同時放送）。この実施形態はマルチキャストシナリオと呼ばれる。この実施形態において、衛星放送受信機ボックスは、ＲＭＫ情報をサーバから受信し、ＴＶへデータを提供する前に結合する。したがって、この実施例において、ＶＯＤセットトップボックス８１２において、結合される。
【００４６】
各固有結合は、擬似乱数生成器によって生成される識別子を用いて生成され、フィンガプリント付きコピーを識別するために、データベース８０６に記憶される。フィンガプリント付きコピーは、ケーブルネットワーク８１０を介してＶＯＤセットトップボックス８１２に配信される。フィンガプリント付きコピーは、処理され、クライアントＴＶ８１４に配信される。クライアントＴＶ８１４は、ＶＯＤサーバ８０８で行われた再結合（すなわち、フィンガプリント）の知識を有していない。
【００４７】
システム及び媒体ソース識別方法のロバスト性を提供するために、データをフィンガプリントすることができる。特に、単一の不正コピーを生成するために、多重又は部分コピーを使用することによってソース識別を回避しようとする試みに対する防護手段を提供し、ｍ個のマスタからｎ個のセグメントの結合を擬似ランダムに生成するように効率的に設定することができる。一実施形態において、不正コピーの小部分だけを用いてソースを識別することができるように、擬似数列が生成される。他の一実施形態において、複数のソースの結合に基づく不正コピーについて、複数のソースを類似の方法で識別することができる。
【００４８】
一実施形態において、ソース識別に関するシステムのロバスト性のために、代表マスタ鍵（ＲＭＫ）を用いる。ＲＭＫは、ビルド（コピー）のセグメントの順読出しである。上述したように、コピーをビルドするために、ｍ個のマスタからｎ個のセグメントを用いる。読出しは（ｎ個のセグメントについて）ｎ個の数字を含み、各数字は、１〜ｍの範囲の値である。ある数字がその代わりに値Ｘを有することがあり、この値が意味することは問題ではない（すなわち、「気にする必要はない」）。したがって、８つのマスタから生成された１０のセグメントを有する配布コピーであれば、ＲＭＫ「１，４，２，５，Ｘ，６，Ｘ，１，６，２」を含むことができる。
【００４９】
ＲＭＫは、「タプル」の列として定義することもでき、各タプルは、形式（ｘ，ｙ）を含む。項ｘは、セグメントの数（順に１〜ｎまで変化）であり、項ｙは、セグメント値（値の範囲が１〜ｍ又は値Ｘを含む）。この事例において、上述のＲＭＫは、「（１，１）（２，４）（３，２）（４，５）（５，Ｘ）（６，６）（７，Ｘ）（８，１）（９，６）（１０，２）」として書くことができる。したがって、ＲＭＫは、形式（タプル順位、マスタ数）のタプルの列として書くこともできる。
【００５０】
異なるフィンガプリントを有する２つ以上のコピーを生成する１つの方法は、コピーに異なるＲＭＫを与えることである。したがって、出所の分からないコピーが提示された場合、（例えば、コピー内の各セグメントのウォータマークを解析し、そのセグメントのマスタソースを特定することにより）システムは、コピーのＲＭＫを復号又は解読し、検索テーブル／データベースからそのコピーのソース（例えば、最初に配布されたコピーの受取人）を特定することができる。しかし、不正コピーを複数の配布コピー又は１つの配布コピーの一部分から生成した場合、その不正コピーは、データベースに登録されていないＲＭＫ、又は別の顧客に登録されており、間違った肯定識別を示すＲＭＫを有することがある。したがって、データフィンガプリント方法において、ＲＭＫの構築方法の決定が重要になることがある。
【００５１】
一実施形態において、ＲＭＫは、１つ以上の鍵セット（ＫＳ）を有する。各ＫＳは、１からセグメントの総数（ｎ）までの範囲の長さを有し、タプルの形式でＲＭＫから読み出され、上述したように、タプル順位の昇順で配置される。ＲＭＫの異なるＫＳは、長さを変えることもできる。したがって、１つの例においては、ＫＳは以下のようにすることができる。ＫＳ１＝（２，４）（３，２）（４，５）、ＫＳ２＝（１，１）（２，４）（６，６）（１０，２）、ＫＳ３＝（１，１）（２，４）（３，２）（４，５）（５，Ｘ）（６，６）（７，Ｘ）（８，１）（９，６）（１０，２）、ＫＳ４＝（４，５）等である。未知のコピーのＲＭＫが、検索テーブルにリストアップされた配布コピーのどれかのＲＭＫと一致しなかった場合、未知のコピーのＫＳのいくつが検索テーブル内の配布コピーのＫＳと一致するかを判断するために、システムは、数学的計算を行うことができる。未知のコピーのソース配布コピーは、選択閾値を超える数のＫＳの一致を示す配布コピーであると判断されることになる。
【００５２】
異なるＫＳは、異なる生成方法を有することもできる。ＫＳの値を決定するために、そのＫＳの生成法はコピー用ＲＭＫに適用される。例えば、異なるＲＭＫの特定の長さのＫＳが生成されるように、これらの方法のいくつかは、相当に単純化されている。ＫＳ生成方法の一実施形態において、ＫＳ４が４番目のタプルであるとすると、ＲＭＫ＝「（１，１）（２，４）（３，２）（４，５）（５，Ｘ）（６，６）（７，Ｘ）（８，１）（９，６）（１０，２）」の場合は、ＫＳ４＝（４，５）となる。しかし、別のＲＭＫについては、ＫＳ４は、ＫＳ４＝（４，７）等としてもよい。
【００５３】
他のＫＳは、より詳細な生成方法を有することもできる。ＫＳ生成方法の他の一実施形態において、ＫＳ１２は、ＲＭＫ内に存在するマスタ番号が最大の最低順位タプルから始まり、マスタ番号がより小さな第１タプルよりも高順位のタプルが続き、マスタ番号の降順で次のタプルが続くこともできる。ＲＭＫ＝「（１，１）（２，４）（３，２）（４，５）（５，Ｘ）（６，６）（７，Ｘ）（８，１）（９，６）（１０，２）」の場合は、存在する最大マスタ番号が６であるので、（６，６）及び（９，６）においては、（９，６）よりも順位が低いので、手順は（６，６）を選択する。選ばれる次のタプルは、マスタ番号は６よりも小さいが、順位がより高いものとなり、その結果は、手順は（１０，２）となる。その後には、セットルールに適合するタプルは、もはや存在せず、その結果、手順はＫＳ＝１２（６，６）（１０，２）で終わる。ＫＳ１２の事例において、手順の選択という理由から、ＫＳの長さは固定されていない。
【００５４】
上述の方法は、優れたＫＳを得るために用いることができる数多くの可能性のうちのほんの若干である。したがって、フィンガプリントシステムは、データベースに記憶された各配布コピーの１つのＲＭＫ及びそのＲＭＫに関連する多数のＫＳを有する。出所が未知のコピーの場合は、システムはその未知のコピーのＲＭＫを獲得する。もしデータベースにＲＭＫの一致が存在しない場合は、システムは、そのＲＭＫのＫＳを生成する。特定のＫＳが特定の領域に限定されることになるので、ＲＭＫをもたらした可能性のあるソースの少なくとも一部分をシステムが識別することができるチャンスがある。
【００５５】
目立たなくすることが困難になるＲＭＫの優れたセットを生成するためには、上記のＫＳ生成法を逆順で使用することができることが分かる。目立たなくすることが困難になる特定のＫＳを配布コピーが含むようにそのコピーの擬似乱数のセットを構築するために、ＲＭＫのセットは使用することができる。
【００５６】
フィンガプリントシステムのロバストを高めるためには、他の方法もある。一実施形態においては、ＲＭＫ及び／又はデータ形式の１つ以上のＫＳを配布コピー自体に挿入することができる。挿入は配布コピーの生成期間内に異なる位置及び異なる形態において行うことができる。これにより、たとえ未知のコピーが配布コピーのほんのわずかな部分しか含んでいないとしても、システムがその未知のコピーを識別することが可能になる。もしそのわずかの部分が、上記の形態のいずれかにおいて挿入されたＲＭＫの構成要素の１つ以上及び／又は１つ以上のＫＳデータを含む場合は、未知のコピーが配布コピーに由来するものであることを識別することができる。
【００５７】
フィンガプリントシステムにロバスト性を提供するための他の一実施形態においては、ダミーデータを配布コピーの生成期間内に異なる位置及び異なる形態においてデータ形式で配布コピー自体に挿入することができる。２つ以上の配布コピーをパターンマッチングすることによりフィンガプリントを回避する試みを阻止するために、挿入は擬似ランダム方式で行うことができる。
【００５８】
さらに別の実施形態においては、特定又は全ての形態の配布コピーにＲＭＫの識別子及び／又は１つ以上のＫＳをマーキングすることができる。この事例においては、たとえコピーが他の多くの配布コピーからリメークされたとしても、リメークコピーのソースを識別するために、所要の形態の配布コピーに問合せを行うことができる。
【００５９】
図９は、ＲＭＫ及びＫＳを用いた一実施形態による媒体のソースを識別する処理を示したものである。ステップ９００において、まず、識別すべき媒体を受信し、媒体を形成するために配置された媒体のセグメントを識別する。次に、ステップ９０２において、配置されたセグメントから代表マスタ鍵（ＲＭＫ）を生成する。データベースは、生成された配布コピーのフィンガプリント、及びリンクされたフィンガプリントに対応する配布コピーを受信したソースを示すフィンガプリントにリンクされた識別子を記憶する。一実施形態において、フィンガプリントにリンクされたソースは、配布コピーを受信した人物の名前であってもよい。
【００６０】
ステップ９０６において、フィンガプリント及びフィンガプリントにリンクされたソースを、データベースから受信する。ステップ９０６において、ＲＭＫとフィンガプリントとを比較する。比較した結果が、一致した（すなわち、ステップ９０８の結果がはいである）場合、ステップ９１０において、リンクされたソースを出力する。一方、ＲＭＫとフィンガプリントとの比較が一致しなかった（すなわち、ステップ９０８の結果がいいえである）場合、ステップ９１２において、次のフィンガプリント及びリンクされたソースをデータベースから受信する。
【００６１】
ステップ９１４において、全てのフィンガプリントとＲＭＫを比較し、一致が全く存在しない場合、ＲＭＫの鍵セットを生成する。したがって、ＲＭＫとフィンガプリントとの間に一致が存在しない場合、問題の媒体は、１つの配布コピーから複製されたものではないということが推定される。したがって、媒体の各部分を解析し、ソースを識別するために、鍵セットを生成する。
【００６２】
ステップ９１６において、フィンガプリント及びフィンガプリントにリンクされたソースをデータベースから受信する。ステップ９１８において、鍵セットをフィンガプリントから生成する。ステップ９２０において、ＲＭＫから生成された鍵セットとフィンガプリントから生成された鍵セットを比較する。ステップ９２２において、鍵セット間の一致の数がある閾値を超えた場合、ステップ９２４において、フィンガプリントにリンクされたソースを指摘する。ステップ９２６において、次のフィンガプリント及びリンクされたソースをデータベースから受信し、そのフィンガプリントの鍵セットを比較するために生成し、ステップ９１８に戻る。ステップ９２８において、全てのフィンガプリントの鍵セットとＲＭＫの鍵セットとを比較した場合は、ステップ９２４で指摘されたソースを、ステップ９００で受信した媒体の少なくとも一部の推定ソースとして出力する。
【００６３】
他の実施形態において、媒体のソースを識別するために、配布コピーに挿入されたＲＭＫ及び／又はデータ形式の１つ以上のＫＳを用いてもよい。さらに、フィンガプリントシステムのロバスト性を強化するために、図９の上述した識別処理に加えて、埋め込まれたＲＭＫ及び／又はＫＳを用いることができる。
【００６４】
本発明の様々な実施形態において、本発明は、電子ハードウェア、コンピュータソフトウェア、又はこれらの技術の組合せによって実現される。ほとんどの実施形態では、プログラマブルコンピュータによって実行される１つ以上のコンピュータプログラムを含む。例えば、一実施形態において、配布コピーを識別するシステムは、上述した識別処理を実施するソフトウェアを実行する１つ以上のコンピュータを備える。他の一実施形態において、データをフィンガプリントするシステムは、上述したフィンガプリント方法を実施するソフトウェアを実行する１つ以上のコンピュータを備える。一般的に、各コンピュータは、１つ以上のプロセッサ、１つ以上のデータストレージコンポーネント（例えば、揮発性又は不揮発性メモリモジュール、及びハードディスクドライブ、フロッピー（登録商標）ディスクドライブ、ＣＤ−ＲＯＭドライブ、及び磁気テープドライブのような、光及び磁気固定記憶装置）、１つ以上の入力装置（例えば、マウス及びキーボード）、及び１つ以上の出力装置（例えば、ディスプレイコンソール及びプリンタ）を含む。
【００６５】
コンピュータプログラムは、通常、固定記憶媒体に記憶され、実行時にメモリ内に複製される実行可能コードを含む。プロセッサは、所定の順序でメモリからプログラム命令を読み出すことによって実行可能コードを実行する。プログラムコードを実行する場合、コンピュータは、入力装置及び／又は記憶装置からデータを受信し、データを演算して、得られたデータを出力装置及び／又は記憶装置に伝送する。
【００６６】
本発明の様々な実施形態について記載してきたが、これら以外の実施形態も可能であり、本発明の範囲内にあることは当業者にとって明らかである。例えば、上述した説明は、媒体データ（例えば、映画）のフィンガプリント方法のいくつかの実施形態を記載しているが、他の実施形態においては、実行可能ソフトウェア又は科学的データのような、他の種類のデータを使用することができる。
【００６７】
したがって、本発明は、上述した実施形態だけに限定されるものではない。
【図１】
0005529185.tif 000006
【図２】
0005529185.tif 000007
【図３】
0005529185.tif 000008
【図４】
0005529185.tif 000009
【図５】
0005529185.tif 000010
【図６】
0005529185.tif 000011
【図７】
0005529185.tif 000012
【図８】
0005529185.tif 000013
【図９】
0005529185.tif 000014