説明

データのフィンガプリント方法

【課題】データのフィンガプリントを実施するための方法及び装置を提供する。
【解決手段】フィンガプリントシステムは、複数の入力データセットを受信し、複数の入力データセットの各々を複数の入力セグメントに分割し、複数の入力データセットの少なくとも1つを固有にマーキングする複数の受信ユニットと、複数の入力のデータセットの少なくとも2つの異なる入力データセットの1つから少なくとも1つの入力セグメントを選択するセレクタと、選択された少なくとも1つの入力セグメントを、出力セグメントの数が各入力データセット内の入力セグメントの数と等しくなるように、配置し、複数の出力セグメントを有する出力データセットを生成する少なくとも1つの結合器とを有する。

【発明の詳細な説明】
【背景技術】
【0001】
〔関連出願〕
本発明は、名称「ウォータマーク付きコンテンツとウォータマークなしコンテンツとの擬似ランダム結合を使用するデータのフィンガプリント方法」の同時係属米国仮特許出願第60/480,687号、出願日2003年6月23日の優先権の利益を請求する。本願は、名称「データのフィンガプリント方法」の同時係属米国仮特許出願第60/491,763号、出願日2003年7月31日の優先権の利益も請求する。出願日2003年6月23日及び2003年7月31日の優先権の利益はこれにより請求され、仮特許出願の開示内容はこの参照により開示に含まれる。
【0002】
インターネットの急速な発展及びその結果としてデジタルデータの複製と配布の可能性により、これらの不正な活動を防止し、海賊版に関連する諸問題から著作権者を保護する方法に対する需要が増大しつつある。例えば、違法コピーはデジタルデータの許可配布コピー(例えば、市販のコピー)から生成されることがある。デジタルデータの特定のドキュメントを不正又は違法コピーと比較することにより、ウォータマークはそのドキュメントが著作権者自身の知的財産であるとの証拠を著作権者に提供することができる。不正コピーの拡散を抑制、防止又は禁止するために、不法コピーを作るのに使用された当該の配布コピーを特定することにより、不正コピーの出所を知るのが有効な場合が多い。しかしながら、不正コピーを生成するのに使用された配布コピーを識別するためにウォータマーク埋込を用いることは難しいかもしれない。
【0003】
不正又は違法配布コピーの出所を特定するために、デジタルウォータマークを埋め込むことができる。例えば、デジタルウォータマークを埋め込んでドキュメントを保護しようとする場合は、著作権者のウォータマークとともに、ドキュメントの電子配信コピーを受信することができる顧客を識別する識別子をドキュメントの中に気付かれないように埋め込むことができる。もし顧客が著作権者の利益に反して配布コピーのコピーを配布した場合は、不正又は違法配布コピーの全てに含まれるデジタルウォータマークに基づき、その顧客を識別することができる。しかしながら、多くの配布コピーを多くの異なる顧客に合法的に配布することができる場合は、各配布コピーに個別にデジタルウォータマークを入れるのは一般的には不便で、時間もかかることが明らかになっている。
【発明の概要】
【課題を解決するための手段】
【0004】
本発明は、データのフィンガプリントを実施するための方法及び装置を提供する。一実施形態においては、フィンガプリント方法は、複数の入力データセットを受信し、複数の入力データセットの各々を複数の入力セグメントに分割し、複数の入力データセットの少なくとも1つを固有にマーキングするステップと、複数の入力のデータセットの少なくとも2つの異なる入力データセットの1つから少なくとも1つの入力セグメントを選択するステップと、選択された少なくとも1つの入力セグメントを、出力セグメントの数が各入力データセット内の入力セグメントの数と等しくなるように、配置して、複数の出力セグメントを有する出力データセットを生成するするステップとを有する。
【0005】
他の実施形態において、フィンガプリント装置は、複数の入力データセットを受信し、複数の入力データセットの各々を複数の入力セグメントに分割し、複数の入力データセットの少なくとも1つが固有にマーキングする複数の受信ユニットと、複数の入力のデータセットの少なくとも2つの異なる入力データセットの1つから少なくとも1つの入力セグメントを選択するセレクタと、選択された少なくとも1つの入力セグメントを、出力セグメントの数が各入力データセット内の入力セグメントの数と等しくなるように、配置して、複数の出力セグメントを有する出力データセットを生成する少なくとも1つの結合器とを備える。
【0006】
他の実施形態において、フィンガプリント媒体のフィンガプリントシステムは、複数の媒体セグメントに分割された媒体を受信する受信機と、媒体をマーキングし、少なくとも1つのウォータマーク付き媒体を生成し、少なくとも1つのウォータマーク付き媒体の各々を複数のウォータマーク付き媒体セグメントに分割する第1エンコーダと、媒体と少なくとも1つのウォータマーク付き媒体とを圧縮するための第2エンコーダと、媒体の1つと少なくとも1つのウォータマーク付き媒体から少なくとも1つの媒体又はウォータマーク付き媒体セグメントを選択するセレクタと、選択された少なくとも1つの媒体又はウォータマーク付き媒体セグメントを、配置して、複数のフィンガプリント付きセグメントを有するフィンガプリント付きセグメントを、フィンガプリント付きセグメントの数が、媒体又はウォータマーク付き媒体セグメントの数に等しくなるように、生成する少なくとも1つ結合器とを有する。
【0007】
他の実施形態において、媒体のソース識別方法は、媒体を受信し、媒体を形成するために配置された複数のセグメントを識別するステップと、配置された複数のセグメントから代表マスタ鍵(RMK)を生成するステップと、フィンガプリントとフィンガプリントにリンクされた媒体のソースを受信するステップと、RMKとフィンガプリントとを比較するステップとを有する。
【図面の簡単な説明】
【0008】
【図1】2つのマスタを用いたフィンガプリント付きコンテンツを生成するための方法の実施形態を例示した図である。
【図2】データのフィンガプリントを実施するための処理を例示したフローチャートである。
【図3】3つのマスタそれぞれと5つのセグメントとの結合の表示を例示した図である。
【図4】DVDパッケージ媒体を生成するためのフィンガプリント方法の1つの可能な実施形態を例示した図である。
【図5】一実施形態によるDVDパッケージ媒体を生成するためのフィンガプリント方法の他の可能な実施形態を例示した図である。
【図6】入力マスタのセグメントを処理するために設定されたセグメント結合器の詳細線図を例示した図である。
【図7】ダウンロードされた媒体の固有フィンガプリント付きバージョンを生成するための2つの媒体ファイルのセグメント的結合の一実施形態を例示した図である。
【図8】ビデオオンデマンドコンテンツの固有フィンガプリント付きバージョンを生成するための2つの媒体ファイルのセグメント結合の一実施形態を例示した図である。
【図9】RMK及びKSを使用する一実施形態による媒体のソースを識別する処理を例示したフローチャートである。
【発明を実施するための形態】
【0009】
本発明は、フィンガプリント付き媒体を生成する効率を高め、システムロバスト性を提供するシステム及び方法を記載したものである。
【0010】
一実施形態において、フィンガプリントシステムは、ウォータマーク付きコンテンツとウォータマークなしコンテンツとの擬似ランダム結合を使用するデータのフィンガプリント方法を提供する。フィンガプリント付きデータは、科学捜査の手法を使用してコンテンツを固有に識別するために使用することができる。このシステムは、ビデオ及びオーディオ基本データ又は多重ストリームのような様々なタイプのデータに適用可能である。さらに、このシステムは、DVD及びビデオテープのようなパッケージ媒体、インターネットからダウンロードされたコンテンツ、及び/又は他のあらゆる媒体にも適用することができる。
【0011】
図1は、第1マスタ100及び第2マスタ102を用いて、フィンガプリント付きコンテンツを生成する方法の実施形態を示す。他の実施形態において、3以上というように、マスタの数を変えることができる。この方法は、複数のマスタ(mi)を生成するステップを有し、ここでは、指数iはi番目のマスタを示す。第1マスタ100は、ウォータマークなしである。第2マスタ102は、例えば、デジタルウォータマーク埋込を用いることによって、固有ウォータマーク付きとなる。3つ以上のマスタを有する、他の一実施形態において、1つのマスタは、ウォータマークなしであり、他のマスタの各々は、固有ウォータマーク付きである(例えば、第2マスタは第3マスタとは異なるウォータマーク付きである)。
【0012】
マスタは、次にn個の部分又はセグメントに分割される。ウォータマークなしマスタ100の中の各セグメントは、同じ大きさであり、ウォータマーク付きマスタ102に対応するセグメントと同じコンテンツを有する(例えば、マスタ100のセグメント1はマスタ102のセグメント1と同じ大きさであり、同じコンテンツを有する)。このように、後述するように異なるマスタ100、102からのセグメントを擬似ランダム結合することにより、コピー104、106を生成することができる。ウォータマークなしマスタ100のコンテンツは、ウォータマーク付きマスタ102のコンテンツと同一ではあるが、各マスタは、異なるウォータマークを有する。例えば、ウォータマークなしマスタ100の第1セグメントは、ウォータマーク付きマスタ102の第1セグメントと同じコンテンツを有するが、ウォータマークなしマスタ100の第1セグメントは、ウォータマークなしであり、ウォータマーク付きマスタ102の第1セグメントは、ウォータマーク付きである。その結果として、(ウォータマークなしデータとウォータマーク付きデータとを比較する場合に一般的であるように)コンテンツに影響を与えず、セグメントを区別することができるデータは異なるかもしれないが、対応するセグメント内の基本情報は同じである。
【0013】
m個のマスタからn個の各セグメントを擬似ランダムに結合することに基づき、マスタと同じn個の各セグメントを含むマスタのコピーが生成され、各セグメントは、擬似ランダムに選択されたマスタから取られる。それらのn個のセグメントは、フィンガプリントのような擬似ランダムに生成されたセグメントのシーケンスを有するコピーを生成するように、擬似ランダム方法によって、セグメントは選択され、結合される(連結される)。コピーのフィンガプリントは、コピー内の各セグメントに対するソースマスタを識別する。したがって、擬似ランダムに生成された結合は、各コピーの十分明確なフィンガプリントを生成することができるように構成されている。マスタからセグメントを擬似ランダム割当て、全てのコピーに十分明確なフィンガプリントを、セグメント結合のパターンを繰り返さずに割り当てることができるように、複数の擬似乱数が生成される。したがって、生成された擬似乱数の数は、所望のコピーの数以上でなければならない。
【0014】
上述したデータのフィンガプリント方法は、図2に示すフローチャートに例示する。ステップ200において、複数のマスタを受信し、各マスタを複数のセグメントに分割し、各マスタに固有マーキングする(例えば、デジタルウォータマークを付す)。一実施形態において、1つのマスタを、ウォータマークなしの状態のままにする。マスタ内の第1セグメントは、他の各マスタの第1セグメントに対応している。一実施形態において、各セグメント内における各ウォータマーク(又はウォータマークの欠如)により、他のマスタの対応するセグメントから、各セグメントを区別することができる(そのセグメントが属するマスタを特定することができる)。他の一実施形態において、対応するセグメントから区別することができるセグメントは、全てのセグメントではない。
【0015】
ステップ202において、少なくとも2つの異なるマスタの1つから少なくとも1つのセグメントを選択する。ステップ204において、フィンガプリントを生成する。一実施形態において、フィンガプリントは、擬似乱数シーケンスである。ステップ206において、出力データセット内のセグメントの数が各マスタ内のセグメントの数と等しくなるように、出力データセットを生成し、フィンガプリントに基づき選択されたセグメントを配置する。セグメントの選択及び配置の一例を、図3との関連で以下に記載する。ステップ208において、生成された出力データセットを、(例えば、CD又はDVDに焼き付けられ、VHSテープに複製された)パッケージ媒体のような媒体製品に記憶し、配布用コピーを生成する。ステップ210において、フィンガプリントを、パッケージ媒体にリンクし、リンケージを記憶する(例えば、フィンガプリント、当該の媒体品目を識別するIDコード、及びその媒体品目を受信するために顧客を識別するIDコードをデータベースのテーブルエントリに記憶する)。
【0016】
擬似乱数生成器は、セグメントを選択及び配置することができるパターンを決定する。したがって、擬似乱数生成器は、繰り返すことなく十分多くの数の擬似乱数を生成させなければならない。一実施形態において、擬似乱数生成器は、各セグメントに対して1桁の数字を含む数を生成し、各数字の範囲は、1からマスタの数までである。各数字は、コピー内の1つのセグメントと一致し、数字の値は、どのマスタからそのセグメントが複製されたのかを示している。他の一実施形態において、擬似乱数生成器は、桁数として各セグメントに適切な数を生成し、数字を1つのパターンにまとめる。
【0017】
例えば、図3に示したように、もしマスタ1、2、3が存在し、各マスタを5つのセグメントに分割すると、擬似乱数生成器は、各数字の値の範囲が1〜3の5桁の数を生成し、「13213」及び「22131」のような数パターンを生成する。これらの擬似乱数パターンは、コピー1及びコピー2のセグメントをそれぞれ生成するために用いることができ、擬似乱数パターンの各数字は、ソースマスタのセグメントを示している。
【0018】
例えば、マスタ1のセグメントは、1〜5の範囲の数列により表され、マスタ2のセグメントは、1’〜5’の範囲の数列により表され、マスタ3のセグメントは、1”〜5”の範囲の数列により表される。図3に示すように、擬似乱数生成器は、擬似乱数列「13213」をコピー1に、擬似乱数列「22131」をコピー2に割り当てている。したがって、コピー1の数列「13213」は、セグメント1をマスタ1から複製すべきであり、セグメント2をマスタ3から複製すべきであること等を示している。したがって、コピー1セグメントは、1−2”−3’−4−5”として生成することができる。コピー2セグメントは、同様に1’−2’−3−4”−5として生成することができる。各コピーの擬似乱数列は、データベースに記憶され、データを要求した特定のユーザ及び/又はデータを記憶する媒体の品目にリンクすることができる。これらのデータベースエントリは、後にソースの識別に使用することができる。
【0019】
フィンガプリント付き媒体を生成する効率及びシステムのロバスト性を理解するための手掛かりを提供するために、擬似乱数列の数を決定する因子を分析することができる。例えば、考えられる個々のフィンガプリントの数は、3つの因子、すなわち、マスタの数(m)、マスタ内のセグメントの数(n)、及び互換性のあるセグメントの最小数(k)によって決定される。これらの因子を用いて、結合(c)の数を、以下のように決定することができる。
【0020】
もし最大n個のセグメントが互換性を有する場合、結合の数は、次式[1]により決定される。
【0021】
【数1】

【0022】
もし最大k個のセグメントが互換性を有する場合、結合の数は、次式[2]により決定される。
【0023】
【数2】

【0024】
もし正確にn個のセグメント内のk個が互換性を有する場合、結合の数は、次式[3]により決定され、ここに、nk'は、n個のセグメント内のk’個の結合を一度に表し、nkは、n個のセグメントの中のk個の結合を一度に表す。
【0025】
【数3】

【0026】
例えば、120分の映画に2つのマスタ(m=2)が存在し、各マスタを60個のセグメント(n=60)に分割し、60個のセグメント内の20個のセグメント(k=20)のみが互換性を有する場合、数2を用いると、固有結合の数は、4,191,844,505,805,495(4000兆以上)になる。セットアップを簡素化するために、2つのマスタ(m=2)が存在し、各マスタが20個のセグメント(n=20)を有し、20個のセグメント全てが互換性を有すると仮定する。数1を使用すると、考えられる結合の数は、1,048,576になる。表1は、マスタ及びセグメントの数により、結合の規模がどの程度になるかを示したものである(cの値は切り上げてある)。
【0027】
【表1】

【0028】
上述したデータフィンガプリントの技術は、配布するために物理的パッケージが製造される様々な異なる媒体に適用することができる。例えば、データのフィンガプリントは、映画の批評のために米国映画芸術科学アカデミーのメンバーに配布されるDVDパッケージ媒体(「アカデミースクリーナ」)、インターネットからダウンロードされたコンテンツ媒体、又は優先配信ビデオオンデマンド(VOD)に適用することができる。これらの適用例の各々については、以下で詳細に記載する。他の適用例としては、ホームネットワーキング、特別注文オンデマンドCD/DVD編集、CD/DVD記録可能媒体へのクライアント側「焼付け」及び他の関連媒体がある。さらに、フィンガプリントの技術は、スイッチャを用いたアナログチャンキングに移植可能である。
【0029】
アカデミースクリーナ媒体(例えば、DVDパッケージ媒体又はVHSテープ)からの海賊版の問題は、明らかであり、その事実が認められている。提案されている1つの解決策は、映画をマーキングして、符号化して、個別に各DVDに「焼付け」又はVHSに記録するように、送出されたあらゆるコピーに(例えば、固有ウォータマークによって)個別にマーキングすることである。しかしながら、上述したように、各コピーに、個別に異なるウォータマークによってマーキングすることは、非常に煩雑で、多大の時間を必要とする可能性がある。
【0030】
図4は、DVDパッケージ媒体を個別にマーキングする一般的な方法の実行可能な一実施形態を示す。この処理は、ウォータマークなしビデオファイル400により開始する。生成される全てのDVDコピー用の識別子(ID)は、データベース402に記憶される。ウォータマーク付きビデオファイル406を生成するために、ウォータマークなしビデオファイル400は、ウォータマークエンコーダ404内で固有IDウォータマークが付される。固有IDは、データベースエントリに記憶される。ウォータマーク付きビデオファイル406は、次にビデオエンコーダ408によって符号化され、ビデオエンコーダ408は、圧縮ビデオファイル410を生成する。一実施形態において、ビデオエンコーダ408は、MPEG−2エンコーダとして構成されている。
【0031】
圧縮ビデオファイル410は、マルチプレクサ412内で圧縮オーディオファイル414と結合され、1つ以上の結合されたビデオオーディオファイル及びメタデータファイル414を生成する。1つ以上の結合されたビデオオーディオファイル及びメタデータファイル414は、DVD生成器416内でDCDに焼き付けられ、DVDコピー418を生成する。特定のDVD上の固有IDウォータマークによって、そのDVDを識別するIDは、データベースエントリに記憶される。
【0032】
個別ウォータマーク付きDVDを生成するという観点から、上述した処理を記載したが、所望の数(x)のDVDコピーを生成するためには、その数だけこの処理を繰り返さなければならないことは言うまでもない。したがって、上述した処理は、技術的には可能であるが、実用的には煩雑で、費用もかかる。例えば、一般的に、2時間映画の場合、ウォータマークエンコーダ404のウォータマーク埋込処理は、最大で8時間かかることがある。ビデオエンコーダ408内におけるMPEG−符号化処理は、最大で2時間かかることがある。マルチプレクサ412内におけるオーディオビデオ結合処理は、最大で約30分かかることがあり、DVD焼付け処理は、最大でさらに30分かかることがある。したがって、DVDコピーをそれぞれ生成するのに、最大で約11時間かかることがある。個別ウォータマーク付きコピーを同時に生成するために、追加的資源を有効に活用することもできるが、コピーの数が多い場合は、個別ウォータマーク付きコピーを同時に生成するには費用がかさむこともある。
【0033】
図5は、DVDパッケージ媒体を生成するためのフィンガプリント処理の一実施形態を示す。図5の実施形態を用いて、DVDコピーを生成する処理をかなり迅速に行うことができる。
【0034】
図5の実施形態において、この処理は、ビデオマスタ500により開始する。次に、ビデオマスタ500の2つのコピー504A、504Bが生成される。ビデオマスタの第1コピー504Aは、ウォータマークが付されず、一方、第2コピー504Bは、ウォータマークエンコーダ502によってウォータマークが付される。ウォータマーク付きコピー504Bを符号化するために、特定のウォータマーク付き識別子(ID)が使用される。他の一実施形態において、異なるマーキング処理を使用することもできる。
【0035】
次に、ビデオマスタの2つのコピー504A、504Bは、ビデオエンコーダ506A、506Bによってそれぞれ符号化される。ビデオエンコーダ506A、506Bは、それぞれ圧縮ビデオファイル508A、508Bを生成する。圧縮ビデオファイル508Aは、マーキングされず、圧縮ビデオファイル508Bは、マーキングされる。一実施形態において、ビデオエンコーダは、MPEG−2として構成されている。
【0036】
結合ビデオオーディオファイル532A、532Bを生成するために、圧縮ビデオファイル508A、508Bは、一対のマルチプレクサ510A、510B内で圧縮オーディオファイル520とそれぞれ結合される。マルチプレクサ510A、510Bは、ビデオオブジェクト(VOB)と呼ばれるセグメント内において、圧縮ファイル508A、508Bを処理するように構成されている。結合ビデオオーディオファイル532Aは、複数のセグメントを有するウォータマークなしDVDファイルである。結合ビデオオーディオファイル532Bは、結合ビデオオーディオファイル532Aと同じ数のセグメントを有するウォータマーク付きDVDファイルである。したがって、DVDファイルである結合ビデオオーディオファイル532A、532Bの関係は、図1に示した2つのマスタ100、102の関係に実質的に類似している。VOBセグメントについては以下に詳細に記載する。
【0037】
図1に示したコピー104、106に類似したフィンガプリント付きコピーを生成するために、セグメント結合器534A、534Bは、DVDファイルである2つの結合ビデオオーディオファイル532A、532Bを使用する。各結合ビデオオーディオファイル532A、532Bの異なるセグメントを再結合(連結)するために、各セグメント結合器534A、534Bは、固有識別子を用いる。上述したように、各固有識別子は、擬似乱数生成器により生成され、媒体の各コピー及び/又は品目の受取人を識別するために、データベース522に記憶される。したがって、図1は、ブロック530の一実施形態の働きを実質的に表している。
【0038】
セグメント結合器534A、534Bの出力によって生成されたフィンガプリント付きコピーは、DVD生成器540A、540Bを用いて、DVD542A、DVD542Bにそれぞれ焼き付けられる。追加コピーを生成するためには、ウォータマークなしDVDファイル及びウォータマーク付きDVDファイルのセグメントの異なる結合がセグメント結合器534A、534Bのいずれかにおいて行われ、次にDVDに焼き付けられる。あらゆるコピーについて、ウォータマークエンコーダ502によるウォータマーク埋込、エンコーダ506による符号化、及びマルチプレクサ510による多重化及び処理が繰り返されることはない。したがって、図5の実施形態において、図4の実施形態とは対照的に、処理全体における各段階を繰り返すのではなく、所望の数(x)のDVDコピー542を生成するために、結合器によるセグメントの再結合及びDVDへの焼付けが繰り返される。したがって、図5に例示した処理の場合、ウォータマーク埋込は、1つのビデオマスタに対して1回だけしか行われないので、所要時間が大幅に短縮されるはずである。そのため、ブロック530及び540により表された処理の場合、DVD1枚あたりの所要時間が1時間未満になるはずである。
【0039】
図6は、DVD専用の実施形態に基づいて、入力マスタのセグメントを処理するために構成されたセグメント結合器534を詳細に示すブロック図である。しかし、図6に示す実施形態は、ビデオテープのような他のパッケージ媒体に拡張してもよい。
【0040】
入力マスタであるDVDのセグメントは、いくつかの所定のビデオオブジェクトユニット(以下、VOBUという)境界で生成され、「VOBUグループ」にグループ化される。各VOBUグループは、独立型多重化ユニットであり、前又は後のユニットへ依存していない。さらに、VOBUは、1つ以上のグループの画像(GOP)から構成されている。DVD−VIDEOフォーマットに定義されているような1つのVOBUは、長さ0.4〜1.2秒とすることができる。VOBUグループは、必要に応じた数のVOBUを有していてもよい。
【0041】
VOBUグループを結合して、一組のVOBファイル形成する。各VOBファイル毎にメタデータ(IFO)ファイルを生成する。メタデータファイルが提供する詳細の1つには、一組のVOBファイル内のVOBUのオフセット情報がある。このVOBからエンドユーザへの再生は、正規のDVDのVOBからの再生であるように思われる。本質的には、VOBは、VOBUグループの結合であるが、各VOBUグループは、2つの異なるビデオ(MPEG−2)エンコードの部分から多重化されたデータによって構成されている。したがって、VODは、DVD仕様制約に従い、実質的に準拠している。その結果、リッピング又は再符号化(例えば、Dix又はXvidのようなフォーマット)によって、これらのDVDの1つの海賊版が生成された場合、ビデオストリームを解析し、ウォータマーク付きビデオセグメントが存在するポイントを特定することにより、システムは、海賊版コピーの出所を識別することができる。システムは、これらの位置と、DVDに焼き付けた時に生成されたデータベースサーバに記憶された位置とを比較することができる。各DVDは、ウォータマーク付きセグメントの固有パターンを有し、したがって、各DVDには、効率的に「フィンガプリントされた」ことになる。
【0042】
インターネットからダウンロードされたコンテンツ媒体を、フィンガプリントするために、図5に示す実施形態に類似した実施形態を使用することができる。図7に示す実施形態において、2つの媒体ファイル、すなわち、1つのウォータマークなしの媒体ファイル702A及び1つのウォータマーク付きの媒体ファイル702Bをセグメントに分割して、結合器704は、セグメントを固有パターンで結合して、ダウンロードされた各コンテンツの固有フィンガプリント付きバージョンを生成する。擬似乱数生成器によって生成された識別子を用いて、各固有結合を生成して、フィンガプリント付きコピーを識別するために、データベース706に記憶する。フィンガプリント付きコピーは、インターネット710を介してクライアントPC712へダウンロードするために、ウェブサーバ708を介して記憶されるか、流される。クライアントPC712に対して、再結合/フィンガプリント付きファイルは、1つの連続ファイルとして現れる。クライアントPC712は、ウェブサーバ708において行われた再結合(すなわち、フィンガプリント)の知識を有していない。
【0043】
図7の実施形態と同様に、VOD(ビデオオンデマンド)コンテンツは、図8に示すようにフィンガプリントすることができる。この実施形態において、VODサーバは、セグメントに分割された2つの媒体ファイル、すなわち、1つのウォータマークなし媒体ファイル802A及び1つのウォータマーク付きの媒体ファイル802Bからフィンガプリント付きファイルを生成する。各配信毎にコンテンツの固有フィンガプリント付きバージョンを生成するために、この2つの媒体ファイル802A、802Bを、結合器804内でセグメント式結合する。VOD媒体ファイルは、通常、MPEG−2輸送ストリームファイルであり、パッケージ化されているので、これらの媒体ファイルは、フィンガプリントの有望な候補である。
【0044】
図8に示す実施形態において、2つの媒体ファイル802A、802Bは、VODサーバ808内で結合される。したがって、上述したシナリオは、ユニキャストシナリオと呼ばれ、すなわち、データは、ソースで結合され、他の配布コピーの知識を有していない送信先に送信される。
【0045】
他の一実施形態(図示せず)において、衛星が多重マスタを各衛星放送受信機ボックスに送信することができる(すなわち、各ボックスへの多重マスタの同時放送)。この実施形態はマルチキャストシナリオと呼ばれる。この実施形態において、衛星放送受信機ボックスは、RMK情報をサーバから受信し、TVへデータを提供する前に結合する。したがって、この実施例において、VODセットトップボックス812において、結合される。
【0046】
各固有結合は、擬似乱数生成器によって生成される識別子を用いて生成され、フィンガプリント付きコピーを識別するために、データベース806に記憶される。フィンガプリント付きコピーは、ケーブルネットワーク810を介してVODセットトップボックス812に配信される。フィンガプリント付きコピーは、処理され、クライアントTV814に配信される。クライアントTV814は、VODサーバ808で行われた再結合(すなわち、フィンガプリント)の知識を有していない。
【0047】
システム及び媒体ソース識別方法のロバスト性を提供するために、データをフィンガプリントすることができる。特に、単一の不正コピーを生成するために、多重又は部分コピーを使用することによってソース識別を回避しようとする試みに対する防護手段を提供し、m個のマスタからn個のセグメントの結合を擬似ランダムに生成するように効率的に設定することができる。一実施形態において、不正コピーの小部分だけを用いてソースを識別することができるように、擬似数列が生成される。他の一実施形態において、複数のソースの結合に基づく不正コピーについて、複数のソースを類似の方法で識別することができる。
【0048】
一実施形態において、ソース識別に関するシステムのロバスト性のために、代表マスタ鍵(RMK)を用いる。RMKは、ビルド(コピー)のセグメントの順読出しである。上述したように、コピーをビルドするために、m個のマスタからn個のセグメントを用いる。読出しは(n個のセグメントについて)n個の数字を含み、各数字は、1〜mの範囲の値である。ある数字がその代わりに値Xを有することがあり、この値が意味することは問題ではない(すなわち、「気にする必要はない」)。したがって、8つのマスタから生成された10のセグメントを有する配布コピーであれば、RMK「1,4,2,5,X,6,X,1,6,2」を含むことができる。
【0049】
RMKは、「タプル」の列として定義することもでき、各タプルは、形式(x,y)を含む。項xは、セグメントの数(順に1〜nまで変化)であり、項yは、セグメント値(値の範囲が1〜m又は値Xを含む)。この事例において、上述のRMKは、「(1,1)(2,4)(3,2)(4,5)(5,X)(6,6)(7,X)(8,1)(9,6)(10,2)」として書くことができる。したがって、RMKは、形式(タプル順位、マスタ数)のタプルの列として書くこともできる。
【0050】
異なるフィンガプリントを有する2つ以上のコピーを生成する1つの方法は、コピーに異なるRMKを与えることである。したがって、出所の分からないコピーが提示された場合、(例えば、コピー内の各セグメントのウォータマークを解析し、そのセグメントのマスタソースを特定することにより)システムは、コピーのRMKを復号又は解読し、検索テーブル/データベースからそのコピーのソース(例えば、最初に配布されたコピーの受取人)を特定することができる。しかし、不正コピーを複数の配布コピー又は1つの配布コピーの一部分から生成した場合、その不正コピーは、データベースに登録されていないRMK、又は別の顧客に登録されており、間違った肯定識別を示すRMKを有することがある。したがって、データフィンガプリント方法において、RMKの構築方法の決定が重要になることがある。
【0051】
一実施形態において、RMKは、1つ以上の鍵セット(KS)を有する。各KSは、1からセグメントの総数(n)までの範囲の長さを有し、タプルの形式でRMKから読み出され、上述したように、タプル順位の昇順で配置される。RMKの異なるKSは、長さを変えることもできる。したがって、1つの例においては、KSは以下のようにすることができる。KS1=(2,4)(3,2)(4,5)、KS2=(1,1)(2,4)(6,6)(10,2)、KS3=(1,1)(2,4)(3,2)(4,5)(5,X)(6,6)(7,X)(8,1)(9,6)(10,2)、KS4=(4,5)等である。未知のコピーのRMKが、検索テーブルにリストアップされた配布コピーのどれかのRMKと一致しなかった場合、未知のコピーのKSのいくつが検索テーブル内の配布コピーのKSと一致するかを判断するために、システムは、数学的計算を行うことができる。未知のコピーのソース配布コピーは、選択閾値を超える数のKSの一致を示す配布コピーであると判断されることになる。
【0052】
異なるKSは、異なる生成方法を有することもできる。KSの値を決定するために、そのKSの生成法はコピー用RMKに適用される。例えば、異なるRMKの特定の長さのKSが生成されるように、これらの方法のいくつかは、相当に単純化されている。KS生成方法の一実施形態において、KS4が4番目のタプルであるとすると、RMK=「(1,1)(2,4)(3,2)(4,5)(5,X)(6,6)(7,X)(8,1)(9,6)(10,2)」の場合は、KS4=(4,5)となる。しかし、別のRMKについては、KS4は、KS4=(4,7)等としてもよい。
【0053】
他のKSは、より詳細な生成方法を有することもできる。KS生成方法の他の一実施形態において、KS12は、RMK内に存在するマスタ番号が最大の最低順位タプルから始まり、マスタ番号がより小さな第1タプルよりも高順位のタプルが続き、マスタ番号の降順で次のタプルが続くこともできる。RMK=「(1,1)(2,4)(3,2)(4,5)(5,X)(6,6)(7,X)(8,1)(9,6)(10,2)」の場合は、存在する最大マスタ番号が6であるので、(6,6)及び(9,6)においては、(9,6)よりも順位が低いので、手順は(6,6)を選択する。選ばれる次のタプルは、マスタ番号は6よりも小さいが、順位がより高いものとなり、その結果は、手順は(10,2)となる。その後には、セットルールに適合するタプルは、もはや存在せず、その結果、手順はKS=12(6,6)(10,2)で終わる。KS12の事例において、手順の選択という理由から、KSの長さは固定されていない。
【0054】
上述の方法は、優れたKSを得るために用いることができる数多くの可能性のうちのほんの若干である。したがって、フィンガプリントシステムは、データベースに記憶された各配布コピーの1つのRMK及びそのRMKに関連する多数のKSを有する。出所が未知のコピーの場合は、システムはその未知のコピーのRMKを獲得する。もしデータベースにRMKの一致が存在しない場合は、システムは、そのRMKのKSを生成する。特定のKSが特定の領域に限定されることになるので、RMKをもたらした可能性のあるソースの少なくとも一部分をシステムが識別することができるチャンスがある。
【0055】
目立たなくすることが困難になるRMKの優れたセットを生成するためには、上記のKS生成法を逆順で使用することができることが分かる。目立たなくすることが困難になる特定のKSを配布コピーが含むようにそのコピーの擬似乱数のセットを構築するために、RMKのセットは使用することができる。
【0056】
フィンガプリントシステムのロバストを高めるためには、他の方法もある。一実施形態においては、RMK及び/又はデータ形式の1つ以上のKSを配布コピー自体に挿入することができる。挿入は配布コピーの生成期間内に異なる位置及び異なる形態において行うことができる。これにより、たとえ未知のコピーが配布コピーのほんのわずかな部分しか含んでいないとしても、システムがその未知のコピーを識別することが可能になる。もしそのわずかの部分が、上記の形態のいずれかにおいて挿入されたRMKの構成要素の1つ以上及び/又は1つ以上のKSデータを含む場合は、未知のコピーが配布コピーに由来するものであることを識別することができる。
【0057】
フィンガプリントシステムにロバスト性を提供するための他の一実施形態においては、ダミーデータを配布コピーの生成期間内に異なる位置及び異なる形態においてデータ形式で配布コピー自体に挿入することができる。2つ以上の配布コピーをパターンマッチングすることによりフィンガプリントを回避する試みを阻止するために、挿入は擬似ランダム方式で行うことができる。
【0058】
さらに別の実施形態においては、特定又は全ての形態の配布コピーにRMKの識別子及び/又は1つ以上のKSをマーキングすることができる。この事例においては、たとえコピーが他の多くの配布コピーからリメークされたとしても、リメークコピーのソースを識別するために、所要の形態の配布コピーに問合せを行うことができる。
【0059】
図9は、RMK及びKSを用いた一実施形態による媒体のソースを識別する処理を示したものである。ステップ900において、まず、識別すべき媒体を受信し、媒体を形成するために配置された媒体のセグメントを識別する。次に、ステップ902において、配置されたセグメントから代表マスタ鍵(RMK)を生成する。データベースは、生成された配布コピーのフィンガプリント、及びリンクされたフィンガプリントに対応する配布コピーを受信したソースを示すフィンガプリントにリンクされた識別子を記憶する。一実施形態において、フィンガプリントにリンクされたソースは、配布コピーを受信した人物の名前であってもよい。
【0060】
ステップ906において、フィンガプリント及びフィンガプリントにリンクされたソースを、データベースから受信する。ステップ906において、RMKとフィンガプリントとを比較する。比較した結果が、一致した(すなわち、ステップ908の結果がはいである)場合、ステップ910において、リンクされたソースを出力する。一方、RMKとフィンガプリントとの比較が一致しなかった(すなわち、ステップ908の結果がいいえである)場合、ステップ912において、次のフィンガプリント及びリンクされたソースをデータベースから受信する。
【0061】
ステップ914において、全てのフィンガプリントとRMKを比較し、一致が全く存在しない場合、RMKの鍵セットを生成する。したがって、RMKとフィンガプリントとの間に一致が存在しない場合、問題の媒体は、1つの配布コピーから複製されたものではないということが推定される。したがって、媒体の各部分を解析し、ソースを識別するために、鍵セットを生成する。
【0062】
ステップ916において、フィンガプリント及びフィンガプリントにリンクされたソースをデータベースから受信する。ステップ918において、鍵セットをフィンガプリントから生成する。ステップ920において、RMKから生成された鍵セットとフィンガプリントから生成された鍵セットを比較する。ステップ922において、鍵セット間の一致の数がある閾値を超えた場合、ステップ924において、フィンガプリントにリンクされたソースを指摘する。ステップ926において、次のフィンガプリント及びリンクされたソースをデータベースから受信し、そのフィンガプリントの鍵セットを比較するために生成し、ステップ918に戻る。ステップ928において、全てのフィンガプリントの鍵セットとRMKの鍵セットとを比較した場合は、ステップ924で指摘されたソースを、ステップ900で受信した媒体の少なくとも一部の推定ソースとして出力する。
【0063】
他の実施形態において、媒体のソースを識別するために、配布コピーに挿入されたRMK及び/又はデータ形式の1つ以上のKSを用いてもよい。さらに、フィンガプリントシステムのロバスト性を強化するために、図9の上述した識別処理に加えて、埋め込まれたRMK及び/又はKSを用いることができる。
【0064】
本発明の様々な実施形態において、本発明は、電子ハードウェア、コンピュータソフトウェア、又はこれらの技術の組合せによって実現される。ほとんどの実施形態では、プログラマブルコンピュータによって実行される1つ以上のコンピュータプログラムを含む。例えば、一実施形態において、配布コピーを識別するシステムは、上述した識別処理を実施するソフトウェアを実行する1つ以上のコンピュータを備える。他の一実施形態において、データをフィンガプリントするシステムは、上述したフィンガプリント方法を実施するソフトウェアを実行する1つ以上のコンピュータを備える。一般的に、各コンピュータは、1つ以上のプロセッサ、1つ以上のデータストレージコンポーネント(例えば、揮発性又は不揮発性メモリモジュール、及びハードディスクドライブ、フロッピー(登録商標)ディスクドライブ、CD−ROMドライブ、及び磁気テープドライブのような、光及び磁気固定記憶装置)、1つ以上の入力装置(例えば、マウス及びキーボード)、及び1つ以上の出力装置(例えば、ディスプレイコンソール及びプリンタ)を含む。
【0065】
コンピュータプログラムは、通常、固定記憶媒体に記憶され、実行時にメモリ内に複製される実行可能コードを含む。プロセッサは、所定の順序でメモリからプログラム命令を読み出すことによって実行可能コードを実行する。プログラムコードを実行する場合、コンピュータは、入力装置及び/又は記憶装置からデータを受信し、データを演算して、得られたデータを出力装置及び/又は記憶装置に伝送する。
【0066】
本発明の様々な実施形態について記載してきたが、これら以外の実施形態も可能であり、本発明の範囲内にあることは当業者にとって明らかである。例えば、上述した説明は、媒体データ(例えば、映画)のフィンガプリント方法のいくつかの実施形態を記載しているが、他の実施形態においては、実行可能ソフトウェア又は科学的データのような、他の種類のデータを使用することができる。
【0067】
したがって、本発明は、上述した実施形態だけに限定されるものではない。

【特許請求の範囲】
【請求項1】
媒体を受信し、該媒体を形成するために配置された複数のセグメントを識別するステップと、
上記配置された複数のセグメントから代表マスタ鍵(RMK)を生成するステップと、 フィンガプリントと該フィンガプリントにリンクされた媒体のソースを受信するステップと、
上記代表マスタ鍵と上記フィンガプリントとを比較するステップとを有する媒体のソース識別方法。
【請求項2】
上記フィンガプリントは、擬似乱数シーケンスを含むことを特徴とする請求項1に記載の媒体のソース識別方法。
【請求項3】
さらに、上記代表マスタ鍵と上記フィンガプリントとが一致した場合、上記フィンガプリントにリンクされた媒体のソースを出力するステップを有する請求項1に記載の媒体のソース識別方法。
【請求項4】
さらに、上記代表マスタ鍵から第1の複数の鍵セットを生成するステップと、
上記フィンガプリントから第2の複数の鍵セットを生成するステップと、
該第1の複数の鍵セットと該第2の複数の鍵セットとを比較するステップとを有する請求項1に記載の媒体のソース識別方法。
【請求項5】
さらに、閾値が供給されるステップと、
上記第1の複数の鍵セットと上記第2の複数の鍵セットとを比較して一致した鍵セットの数が上記閾値以上となったときに、上記フィンガプリントにリンクされたソースを出力するステップを有する請求項4に記載の媒体のソース識別方法。
【請求項6】
さらに、上記フィンガプリントから上記第2の複数の鍵セットを生成し、複数のフィンガプリントの鍵セットを生成することを繰り返すステップと、
上記閾値が供給されるステップと、
上記第1の複数の鍵セットと上記第2の複数の鍵セットとを比較して一致した鍵セットの数が上記閾値以上になったときに、上記複数のフィンガプリントにリンクされたソースを出力するステップとを有する請求項4に記載の媒体のソース識別方法。
【請求項7】
複数の出力セグメントを有する出力データセットをフィンガプリントする際に用いる、有形の記憶媒体に記憶されるコンピュータプログラムにおいて、
コンピュータに
媒体を受信し、該媒体を形成するために配置された複数のセグメントを識別するステップと、
上記配置された複数のセグメントから代表マスタ鍵を生成するステップと、
フィンガプリントと該フィンガプリントにリンクされた媒体のソースを受信するステップと、
上記代表マスタ鍵とフィンガプリントとを比較するステップとを行わせる実行可能命令を含むコンピュータプログラム。
【請求項8】
さらに、上記コンピュータに、上記代表マスタ鍵と上記フィンガプリントとが一致した場合、上記フィンガプリントにリンクされたソースを出力するステップを行わせる実行可能命令を含む請求項7記載のコンピュータプログラム。
【請求項9】
さらに、上記コンピュータに、
上記代表マスタ鍵から第1の複数の鍵セットを生成するステップと、
上記フィンガプリントから第2の複数の鍵セットを生成するステップと、
上記第1の複数の鍵セットと上記第2の複数の鍵セットとを比較するステップとを行わせる実行可能命令を含む請求項7記載のコンピュータプログラム。
【請求項10】
さらに、上記コンピュータに、
閾値が供給されるステップと、
上記第1の複数の鍵セットと上記第2の複数の鍵セットとを比較して一致した鍵セットの数が上記閾値以上になったときに、上記複数のフィンガプリントにリンクされたソースを出力するステップとを行わせる実行可能命令を含む請求項9に記載のコンピュータプログラム。
【請求項11】
さらに、上記コンピュータに、
上記フィンガプリントから上記第2の複数の鍵セットを生成し、複数のフィンガプリントの鍵セットを生成することを繰り返すステップと、
閾値が供給されるステップと、
上記第1の複数の鍵セットと上記第2の複数の鍵セットとを比較して一致した鍵セットの数が上記閾値以上になったときに、上記複数のフィンガプリントにリンクされたソースを出力するステップとを行わせる実行可能命令を含む請求項9に記載のコンピュータプログラム。
【請求項12】
複数の媒体セグメントに分割された媒体を受信する手段と、
上記媒体をマーキングし、第1エンコーダが少なくとも1つのウォータマーク付き媒体を生成し、該少なくとも1つのウォータマーク付き媒体の各々を複数のウォータマーク付き媒体セグメントに分割する手段と、
上記媒体と上記少なくとも1つのウォータマーク付き媒体とを圧縮する手段と、
上記媒体の1つと上記少なくとも1つのウォータマーク付き媒体から少なくとも1つの媒体又はウォータマーク付き媒体セグメントを選択する手段と、
上記選択された少なくとも1つの媒体又はウォータマーク付き媒体セグメントを、配置して、複数のフィンガプリント付き媒体を有するフィンガプリント付きセグメントを、該フィンガプリント付きセグメントの数が、該媒体又はウォータマーク付き媒体セグメントの数に等しくなるように、生成する少なくとも1つの手段とを有する媒体のフィンガプリント媒体のフィンガプリントシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2010−9739(P2010−9739A)
【公開日】平成22年1月14日(2010.1.14)
【国際特許分類】
【出願番号】特願2009−171355(P2009−171355)
【出願日】平成21年7月22日(2009.7.22)
【分割の表示】特願2006−517083(P2006−517083)の分割
【原出願日】平成16年3月31日(2004.3.31)
【出願人】(000002185)ソニー株式会社 (34,172)
【出願人】(596102126)ソニー ピクチャーズ エンターテインメント インコーポレイテッド (46)
【Fターム(参考)】