(57)【要約】      （修正有）【課題】配布データのサイズの増大を可及的に抑制し、かつ、データの利用をできる限り妨げない態様での追跡可能なデータの配布方法を提供する。【解決手段】サーバ５１０から複数のクライアント５１５−１〜５１５−ｎにデータを配布するための方法が提供される。方法は、複数のクライアントのそれぞれに対応する固有ノイズを用いて共通ノイズを生成するステップと、配布対象のデータを利用不可能にするように、共通ノイズをデータに埋め込むステップと、共通ノイズが埋め込まれたデータが複数のクライアントそれぞれにおいて提供される固有ノイズを用いてデータが利用可能とされるために、共通ノイズが埋め込まれたデータを配布するステップを含む。【選択図】図６
2013126225.tif 000002
【特許請求の範囲】
【請求項１】
サーバから複数のクライアントにデータを配布するための方法であって、
前記複数のクライアントのそれぞれに対応する固有ノイズを用いて共通ノイズを生成するステップと、
配布対象の前記データを利用不可能にするように、前記共通ノイズを前記データに埋め込むステップと、
前記共通ノイズが埋め込まれた前記データが前記複数のクライアントそれぞれにおいて提供される固有ノイズを用いて前記データが利用可能とされるために、前記共通ノイズが埋め込まれた前記データを配布するステップと、
を含む、方法。
【請求項２】
前記固有ノイズが、第１のノイズと第２のノイズを合成したものであり、第１のノイズの振幅が第２のノイズの振幅よりも大きい、請求項１に記載の方法。
【請求項３】
前記固有ノイズが、所与のパラメータに応じて提供される、請求項１に記載の方法。
【請求項４】
複数のクライアントのうちの１つであるクライアントｋに対応する前記固有ノイズＮ（ｋ，ｔ）が以下の式に従って与えられる、請求項３に記載の方法。
【数１】
2013126225.tif 000017
【請求項５】
前記パラメータがt0である場合に、パラメータt0が以下の式に従って与えられる、請求項３に記載の方法。
【数２】
2013126225.tif 000018
【請求項６】
前記配布するステップが前記パラメータを送信するステップを含み、クライアントにおいて受信されたパラメータに応じて提供された固有ノイズを用いて、前記共通ノイズが埋め込まれた前記データが利用可能とされる、請求項３に記載の方法。
【請求項７】
前記パラメータおよび前記共通ノイズが埋め込まれた前記データを配布先クライアント固有の暗号鍵を用いて暗号化した配布データに含まれて送信され、
前記複数のクライアントそれぞれにおいて、クライアント固有の復号鍵を用いて配布データを復号することで前記パラメータが提供される、請求項６に記載の方法。
【請求項８】
前記生成するステップが、前記複数のクライアントに対応する固有ノイズの平均を計算することで共通ノイズを生成するステップを含む、請求項１に記載の方法。
【請求項９】
前記サーバは、前記複数のクライアントに固有ノイズのすべてを提供する機構を備え、前記複数のクライアントのそれぞれが対応する固有ノイズを提供する機構を備える、請求項１に記載の方法。
【請求項１０】
前記データが可変長符号（ＶＬＣ）部分を含み、前記埋め込むステップが、前記データに含まれるＶＬＣ部分を共通ノイズに基いて変更するステップを含む、請求項１に記載の方法。
【請求項１１】
前記変更するステップが、前記共通ノイズに基いて生成した同一長符号の集合に含まれる各ＶＬＣ符号間のマップを決定するステップと、前記マップに従って前記データ内のＶＬＣ符号を置き換えるステップを含む、請求項１０に記載の方法。
【請求項１２】
同一長符号の集合に含まれるメンバーにラベルを割り振るステップと、所与のＶＬＣ部分を以下の式に従って算出された置換後のラベルに対応するＶＬＣに置き換えるステップと、を含む、請求項１１に記載の方法。
【数３】
2013126225.tif 000019
【請求項１３】
前記共通ノイズの埋め込みが、前記データのＤＣＴ係数、ＤＣ成分、マクロブロック・パターン、および／または、モーション・ベクタに対して行われる、請求項１０に記載の方法。
【請求項１４】
前記変更するステップが、前記共通ノイズに基いてＶＬＣ部分のレベルを変更するステップを含む、請求項１０に記載の方法。
【請求項１５】
前記ＶＬＣ部分のレベルを変更するするステップが、正負のどちらの方向にレベルを変更したかを表す情報を埋め込むステップを含む、請求項１４に記載の方法。
【請求項１６】
前記共通ノイズを埋め込むステップにおいて、所定の係数に基いて増幅または減幅された共通ノイズがデータに埋め込まれる、請求項１に記載の方法。
【請求項１７】
複数のクライアントのうちの１つであるクライアントｋに対応する前記固有ノイズがＮ（ｋ，ｔ）である場合に、前記所定の係数が、変数ｔに依存する関数で決定される、請求項１６に記載の方法。
【請求項１８】
配布対象の前記データが、静止画または動画のデータである、請求項１に記載の方法。
【請求項１９】
前記データを配布する複数のクライアントを指定する配布先リストＤを受けるステップをさらに含む、請求項１に記載の方法。
【請求項２０】
請求項１〜１９のいずれかに記載の方法の各ステップをコンピュータに実行させる、プログラム。
【請求項２１】
サーバから複数のクライアントにデータを配布するためのプログラムであって、
前記複数のクライアントのそれぞれに対応する固有ノイズを用いて共通ノイズを生成するステップと、
配布対象の前記データを利用不可能にするように、前記共通ノイズを前記データに埋め込むステップと、
前記共通ノイズが埋め込まれた前記データが前記複数のクライアントそれぞれにおいて提供される固有ノイズを用いて前記データが利用可能とされるために、前記共通ノイズが埋め込まれた前記データを配布するステップと、
をコンピュータに実行させる、プログラム。
【請求項２２】
サーバから複数のクライアントにデータを配布するためのシステムであって、
前記複数のクライアントのそれぞれに対応する固有ノイズを用いて共通ノイズを生成する手段と、
配布対象の前記データを利用不可能にするように、前記共通ノイズを前記データに埋め込む手段と、
前記共通ノイズが埋め込まれた前記データが前記複数のクライアントそれぞれにおいて提供される固有ノイズを用いて前記データが利用可能とされるために、前記共通ノイズが埋め込まれた前記データを配布する手段と、
を備える、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的には、情報処理技術に関し、より特定的には、サーバから複数のクライアントにデータを配布するための方法、プログラムおよびシステムに関する。
【背景技術】
【０００２】
インターネットやイントラネットのようなネットワーク技術の普及によって、ドキュメント、動画・静止画のコンテンツ、エンジニアリング・データのような様々なデータを、ネットワークを通じて配布し、共有することが一般的に行われている。かかるデータは、機密情報を含んでいたり、著作権で保護されていたりする場合があり、データを保護し、機密情報の漏洩元や著作権の侵害者を調査するために、配布されたデータにノイズを埋め込んでスクランブル化する技法、トラッキング（追跡）のためのデータ（一般的な用語として「フォレンシック・データ」と称されることがある）を埋め込む技法が存在する。かかる技法に関連して、背景技術として以下の特許公開公報が存在する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−７６６１６号公報
【特許文献２】特開２００７−２６６４８号公報
【特許文献３】特開２００７−９７１２８号公報
【特許文献４】特開２００１−２１６７６３号公報
【特許文献５】特開２０１１−８６３１３号公報
【特許文献６】特開２００７−５２５７２９号公報
【非特許文献】
【０００４】
【非特許文献１】D. Naor, M. Naor and J. Lotspiech, ``Revocation and Tracing Schemesfor Stateless Receivers", Crypto 2001, Lecture Notes in computer science,Vol. 2139, pp.41-62, 2001.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
例えば、動画コンテンツを複数のクライアントに配布する場合、サーバ側でフォレンシック・データを埋め込むと、配布するデータのサイズが大きくなってしまう。例えば、動画コンテンツを複数のクライアントに配布する場合、一定の時間間隔で配布するクライアントの数だけフォレンシック・データを埋め込む必要があるので、データ・サイズが非常に大きくなる場合がある。
【０００６】
また、スクランブルを解除するときにクライアントにおいてフォレンシック・データを埋め込む方法の場合、攻撃者がスクランブルを解除した状態、つまりフォレンシック・データを埋め込む前の状態のデータを取得し、そのデータを再配布されてしまう可能性がある。このような場合、漏洩したデータはいずれのクライアント・グループに配布したものなのか、データがどのクライアントから漏洩したかなどを特定することができなくなってしまい、攻撃者の追跡が困難となる可能性がある。また、いずれの場合もフォレンシック・データが埋め込まれることによってコンテンツが変形してしまう場合がある。
【０００７】
上記の背景のもと、配布するデータのサイズの増大を可及的に抑制し、かつ、コンテンツの利用をできる限り妨げない態様で攻撃者を効果的に追跡できるようにデータを配布することに対する要望が存在することが理解できるであろう。
【０００８】
したがって、本発明の目的の１つは、かかる要望に応える改善されたサーバから複数のクライアントにデータ配布するための方法、プログラム、およびシステムを提供することである。
【課題を解決するための手段】
【０００９】
上記の目的を達成するために、サーバから複数のクライアントにデータを配布するための方法が提供される。方法は、複数のクライアントのそれぞれに対応する固有ノイズを用いて共通ノイズを生成するステップと、配布対象のデータを利用不可能にするように、共通ノイズをデータに埋め込むステップと、共通ノイズが埋め込まれたデータが複数のクライアントそれぞれにおいて提供される固有ノイズを用いてデータが利用可能とされるために、共通ノイズが埋め込まれたデータを配布するステップを含む。
【００１０】
好ましくは、固有ノイズが、第１のノイズと第２のノイズを合成したものであり、第１のノイズの振幅が第２のノイズの振幅よりも大きい。また、固有ノイズが、所与のパラメータに応じて提供されるようにすることができる。さらに、複数のクライアントのうちの１つであるクライアントｋに対応する固有ノイズＮ（ｋ，ｔ）が以下の式に従って与えられるようにすることができる。
【００１１】
【数１】
2013126225.tif 000003
【００１２】
また、前述のパラメータがt0である場合に、パラメータt0が以下の式に従って与えられることが好ましい。
【数２】
2013126225.tif 000004
【００１３】
好ましくは、配布するステップがパラメータを送信するステップを含み、クライアントにおいて受信されたパラメータに応じて提供された固有ノイズを用いて、共通ノイズが埋め込まれたデータが利用可能とされる。
【００１４】
好ましくは、パラメータおよび共通ノイズが埋め込まれたデータを配布先クライアント固有の暗号鍵を用いて暗号化した配布データに含まれて送信され、複数のクライアントそれぞれにおいて、クライアント固有の復号鍵を用いて配布データを復号することでパラメータが提供される。
【００１５】
好ましくは、生成するステップが、複数のクライアントに対応する固有ノイズの平均を計算することで共通ノイズを生成するステップを含む。好ましくは、サーバは、複数のクライアントに固有ノイズのすべてを提供する機構を備え、複数のクライアントのそれぞれが対応する固有ノイズを提供する機構を備える。
【００１６】
好ましくは、  前記データが可変長符号（ＶＬＣ）部分を含み、前記埋め込むステップが、前記データに含まれるＶＬＣ部分を共通ノイズに基いて変更するステップを含む。さらに好ましくは、前記変更するステップが、前記共通ノイズに基いて生成した同一長符号の集合に含まれる各ＶＬＣ符号間のマップを決定するステップと、前記マップに従って前記データ内のＶＬＣ符号を置き換えるステップを含む。さらに好ましくは、同一長符号の集合に含まれるメンバーにラベルを割り振るステップと、所与のＶＬＣ部分を以下の式に従って算出された置換後のラベルに対応するＶＬＣに置き換えるステップと、を含む。
【数３】
2013126225.tif 000005
【００１７】
また、好ましくは、共通ノイズの埋め込みが、データのＡＣの離散コサイン変換（ＤＣＴ）係数、ＤＣ成分、マクロブロック・パターン、および／または、モーション・ベクタに対して行われる。
【００１８】
好ましくは、変更するステップが、前記共通ノイズに基いてＶＬＣ部分のレベルを変更するステップを含む。好ましくは、ＶＬＣ部分のレベルを変更するするステップが、正負のどちらの方向にレベルを変更したかを表す情報を埋め込むステップを含む。
【００１９】
共通ノイズを埋め込むステップにおいて、所定の係数に基いて増幅または減幅された共通ノイズがデータに埋め込まれる。さらに好ましくは、複数のクライアントのうちの１つであるクライアントｋに対応する前記固有ノイズがＮ（ｋ，ｔ）である場合に、所定の係数が、変数ｔに依存する関数で決定される。
【００２０】
好ましくは、配布対象のデータは、静止画または動画のデータである。好ましくは、方法は、データを配布する複数のクライアントを指定する配布先リストＤを受けるステップをさらに含む。
【００２１】
以上、サーバから複数のクライアントにデータを配布する方法として本発明の概要を説明したが、本発明は、システム、プログラム、プログラム製品、ソフトウェア、ソフトウェア製品、装置などとして把握することもできる。プログラム製品ないしソフトウェア製品は、例えば、前述のプログラム、ソフトウェアを格納した記憶媒体を含め、あるいはプログラム、ソフトウェアを伝送する媒体を含めることができる。
【００２２】
上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの構成要素のコンビネーションまたはサブコンビネーションもまた、発明となり得ることに留意すべきである。
【図面の簡単な説明】
【００２３】
【図１】本発明の実施形態におけるクライアントの固有ノイズのイメージの一例である。
【図２】本発明の実施形態における共通ノイズのイメージの一例である。
【図３】本発明の実施形態における共通ノイズが埋め込まれた配布対象データのイメージの一例である。
【図４】本発明の実施形態におけるクライアントにおいて利用可能とされたコンテンツのイメージの一例である。
【図５】本発明の実施形態おけるネットワーク・システムのイメージの一例を示した図である。
【図６】本発明の実施形態におけるネットワーク・システムの機能ブロック図である。
【図７】本発明の実施形態におけるネットワーク・システムの全体動作を表現するフローチャートである。
【図８】本発明の実施形態におけるネットワーク・システムのユーザ登録の動作を表現するフローチャートである。
【図９】本発明の実施形態におけるネットワーク・システムのデータ配布の動作を表現するフローチャートである。
【図１０】本発明の実施形態におけるノイズ埋め込み処理の一例の動作を表現するフローチャートである。
【図１１】本発明の実施形態におけるノイズ埋め込み処理の他の例の動作を表現するフローチャートである。
【図１２】本発明の実施形態におけるノイズ除去処理の一例の動作を表現するフローチャートである。
【図１３】本発明の実施形態におけるノイズ除去処理の他の例の動作を表現するフローチャートである。
【図１４】本発明の実施形態におけるネットワーク・システムの構成要素を実現するのに好適な情報処理装置のハードウェア構成の一例を示した図である。
【発明を実施するための形態】
【００２４】
以下、本発明を実施するための形態を図面に基づいて詳細に説明するが、以下の実施形態は特許請求の範囲に記載された発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００２５】
また、本発明は多くの異なる態様で実施することが可能であり、実施の形態の記載内容に限定して解釈されるべきものではない。実施の形態の説明の全体を通じて同じ要素には同じ番号を付している。
【００２６】
本発明の実施形態では、配布対象データである特定の動画コンテンツがサーバ側から複数のクライアントに配布されることで共有される。クライアントには、それぞれ固有ノイズのデータ（本明細書において、単に「固有ノイズ」と称される）を所与のパラメータｔ０に応じて提供する機構が設けられている。サーバ側は、すべてのクライアントについての固有ノイズをパラメータｔ０に応じて提供する機構を有している。
【００２７】
本発明の実施形態では、各クライアントの固有ノイズは、各クライアント共通の第１のノイズと各クライアント固有の第２のノイズを合成したものであり、第１のノイズの振幅が第２のノイズの振幅よりも大きいものとする。その結果、各クライアントの固有ノイズは、互いに類似した形状となる。図１は、本発明の実施形態におけるシステムに存在するｎ個のクライアントのうちコンテンツの配布先であるｍ個のクライアントの固有ノイズＮ（ｉｊ，ｔ）（ｊ＝１…ｍ）（１０５−１…１０５−ｍ）のイメージの一例である。
【００２８】
次いで、サーバ側では、コンテンツの配布先であるｍ個のクライアントの固有ノイズから、共通ノイズのデータ（本明細書において、単に「共通ノイズ」と称される）を生成する。共通ノイズは、固有ノイズのいずれにも類似しているものとする。本発明の実施形態では、好ましくは、共有ノイズは固有ノイズの平均を算出することによって得られる。本発明の実施形態における共通ノイズＮｐ（ｔ）（２０５）のイメージの一例である。
【００２９】
そして、サーバ側で共有ノイズがコンテンツに埋め込まれる。共有ノイズが埋め込まれたデータは、利用（動画の場合、再生）することができないか、または、劣化が著しく、再生できた場合においても利用に耐えられない。図３は、本発明の実施形態における共通ノイズが埋め込まれた配布対象コンテンツのイメージの一例である。図３には、共通ノイズが埋め込まれる前のコンテンツＣ（３０５）、共通ノイズＮｐ（ｔ）（２０５）、は共通ノイズが埋め込まれたコンテンツＣｐ−（３１０）のイメージが示されている。
【００３０】
次に、サーバ側が共通ノイズを埋め込んだコンテンツを各クライアントの公開鍵でパラメータｔ０とともに暗号化して配布データが準備される。暗号化された配布データを受け取ったクライアントは、当該配布データを自己の秘密鍵を用いて復号し、パラメータｔ０を取り出す。さらに当該クライアントはパラメータｔ０に応じて固有ノイズを提供し、提供した固有ノイズを用いてコンテンツを利用可能にする。
【００３１】
ここで、共通ノイズはコンテンツを受信したクライアントに対応する固有ノイズから生成されており、固有ノイズと共通ノイズは類似しているがわずかな相違を有する。したがって、あるクライアントにおいてコンテンツが固有ノイズによって利用可能にされた場合、当該相違に起因する差分がコンテンツ中に残存する。かかる差分によって、利用可能とされたコンテンツによって対応するクライアントを識別することができる。図４は、本発明の実施形態におけるクライアントにおいて利用可能とされたコンテンツのイメージの一例である。図４には、共通ノイズが埋め込まれたコンテンツＣｐ−（３１０）、受信したクライアントｋの固有ノイズＮ（ｋ，ｔ）（１０５−ｋ）、受信したクライアントｋにおいて利用可能にされたコンテンツＣｋ（４０５−ｋ）が示されている。
【００３２】
既に述べたとおり、あるクライアントにおいて利用可能にされたコンテンツに残存する固有ノイズと共通ノイズの差分によって当該クライアントを識別することができる。その結果、ユーザが意図的にコンテンツを漏洩した場合や、悪意のある攻撃者によってコンテンツが盗まれた場合等に、当該コンテンツの漏洩ルートを追跡することが可能となる。
【００３３】
図５は、本発明の実施形態おけるネットワーク・システムの全体像の一例を示した図である。ネットワーク・システム（５００）は、コンテンツ作成者のコンピュータ（本明細書においては「作成者コンピュータ」という）（５０５）、コンテンツの配布をサポートするサーバ・コンピュータ（本明細書においては「サーバ」という）（５１０）、および、コンテンツ利用者のコンピュータ（本明細書においては「クライアント」という）（５１５−１）…（５１５−ｎ）を含む。これらのコンピュータは、ネットワーク５２０で相互に接続されているものとする。
【００３４】
本発明の実施の形態では、配布対象のコンテンツが作成者コンピュータ（５０５）で作成される。配布対象のコンテンツは、ドキュメント、静止画、動画、エンジニアリング・データなど様々なものであり得る。本発明の実施形態では、一例として、配布対象のコンテンツは、ＭＰＥＧ形式の特定の動画コンテンツのデータであるものとする。なお、ＭＰＥＧ形式は、標準化され広く知られたものであるので、ここでは詳細な説明はなされない。作成者は、作成者コンピュータ（５０５）からネットワークを介して配布するコンテンツ、および、システムに存在するｎ個のクライアントから選択したコンテンツを配布先であるｍ個のクライアントの情報を含む配布先リストＤをサーバ（５１０）にアップロードする。
【００３５】
サーバ（５１０）は、アップロードされたコンテンツを、共通ノイズを埋め込むことで利用不可能にする。共通ノイズは、以下の手順に従って生成される。すなわち、最初に、サーバ（５１０）はパラメータｔ０を設定する。そして、配布先リストＤに含まれるユーザに固有のノイズをパラメータｔ０に応じて生成し、提供する。提供された固有ノイズに基づいて共通ノイズを得る。具体的には、固有ノイズの平均を計算することによって共通ノイズを得るものとする。サーバ（５１０）は、共通ノイズを埋め込んだコンテンツをパラメータｔ０とともに作成者コンピュータ（５０５）に返送する。
【００３６】
作成者は、作成者コンピュータ（５０５）を操作して返送されたコンテンツおよびパラメータｔ０を一緒に配布先の各ユーザ固有の公開鍵を用いて暗号化して配布データを準備する。作成者は全てのクライアントのＰＫＩの公開鍵を所持し、各クライアントは自己の秘密鍵はセキュアに記憶しているものとする。また、暗号化データを配布する際、データとパラメータｔ０を一旦タイトル鍵（Ｋｔ）で暗号化し、Ｋｔを配布先の各ユーザの公開鍵で暗号化したものと一緒に送付することにより、配布データのサイズを小さくすることが出来る。更に、Ｋｔの暗号化を放送暗号を用いて行うことにより、配布データのサイズをさらに小さくすることが可能である（非特許文献１参照）。
【００３７】
次いで、作成者コンピュータ（５０５）は、配布先リストＤに含まれるｍ個のクライアントに配布データを送信する。配布データを受信したクライアントは、配布データを秘密鍵で復号する。そして、復号された配布データからパラメータｔ０を抽出する。クライアントは、パラメータｔ０に基づいて当該クライアントの固有ノイズを提供する。そして、固有ノイズを用いてコンテンツを利用可能にする。その後、ユーザは利用可能となったコンテンツを利用して作業を実施することとなる。
【００３８】
図６は、本発明の実施形態におけるネットワーク・システム（５００）の機能ブロック図である。なお、図６の機能ブロック図に示す各要素は、図１４に例示したハードウェア構成を有する情報処理装置およびスキャナ装置を組み合わせ、ハードディスク装置１３などに格納されたオペレーティング・システム、アプリケーション・プログラムなどのコンピュータ・プログラムをメインメモリ４にロードした上でＣＰＵ１に読み込ませ、ハードウェア資源とソフトウェアを協働させることによって実現することができる。
【００３９】
本発明の実施形態のネットワーク・システム（５００）は、既に述べた通り、作成者コンピュータ（５０５）、サーバ（５１０）、および、ｎ個のクライアント（５１５−１）…（５１５−ｎ）を含む。本発明の実施形態では、これらのコンピュータは、ネットワーク５２０で相互に接続されているものとする。
【００４０】
本発明の実施形態の作成者コンピュータ（５０５）は、コンテンツ記憶部（６０２）、配布リスト生成部（６０４）、通信部（６０６）、パラメータ記憶部（６０８）、データ暗号化部（６１０）および配布データ記憶部（６１２）を備える。
【００４１】
本発明の実施形態のコンテンツ記憶部（６０２）は、コンテンツの作成者が生成、編集して作成したコンテンツのデータを記憶する機能を有する。また、サーバ（５１０）が共通ノイズを埋め込んだコンテンツのデータも記憶するものとする。本発明の実施形態の配布リスト生成部（６０４）は、作成者がコンテンツ記憶部（６０２）に記憶されたコンテンツを配布しようとするクライアントのリストを生成する機能を有する。
【００４２】
本発明の実施形態の通信部（６０６）は、ネットワーク（５２０）を介してサーバ（５１０）、クライアント（５１５−１）…（５１５−ｎ）とデータ通信する機能を作成者コンピュータ（５０５）に与える。具体的には、通信部（６０６）は、コンテンツ記憶部（６０２）に記憶されたコンテンツのデータ、および、配布リスト生成部（６０４）によって生成された配布リストをサーバ（５１０）に送信する機能を有する。また、通信部（６０２）は、サーバ（５１０）によって共通ノイズが埋め込まれたコンテンツ、および、後述するパラメータｔ０をサーバ（５１０）から受信する。さらに、本発明の実施形態の通信部（６０６）は、クライアント（５１５−１）…（５１５−ｎ）のうち配布先リストで指定されたｍ個のクライアントに配布データを送信する。
【００４３】
本発明の実施形態のパラメータ記憶部（６０８）は、サーバ（５１０）から受信したパラメータｔ０を記憶する。データ暗号化部（６１０）は、各クライアントの公開鍵を記憶し、コンテンツ記憶部（６０２）に記憶された共通ノイズが埋め込まれたコンテンツのデータおよびパラメータ記憶部（６０８）に記憶されたパラメータｔ０を一緒に公開鍵で暗号化することで、配布データを生成する。配布データ記憶部（６１２）は、データ暗号化部（６１０）が生成した配布データを記憶する。記憶された配布データは通信部（６０６）を介して、クライアント（５１５−１）…（５１５−ｎ）のうち配布先リストで指定されたｍ個のクライアントに送信される。
【００４４】
本発明の実施形態のサーバ（５１０）は、固有ノイズ生成部（６２２）、共通ノイズ生成部（６２６）、共通ノイズ埋込部（６２８）、エンベッダ生成部（６３０）、ユーザＩＤ管理部（６３２）、配布リスト記憶部（６３４）、パラメータ設定部（６３６）、コンテンツ記憶部（６３８）、および、通信部（６４０）を備える。
【００４５】
本発明の実施形態の固有ノイズ生成部（６２２）は、固有ノイズ生成部１〜ｎ（６２４−１）・・・（６２４−ｎ）を含む。これらのそれぞれは各クライアント（５１５−１）…（５１５−ｎ）に対応するｎ種類の固有ノイズを生成することができる。固有ノイズ生成部（６２２）は、作成者コンピュータ（５０５）から配布リストおよびパラメータｔ０を受信し、配布リストに含まれるｍ個のクライアントに対応する固有ノイズ生成部をトリガして対応する固有ノイズを生成し、提供する。提供した固有ノイズは、共通ノイズ生成部（６２６）に引き渡される。固有ノイズの生成のさらなる具体的な手法は、本明細書において後に詳述される。
【００４６】
本発明の実施形態の共通ノイズ生成部（６２６）は、固有ノイズ生成部（６２２）によって提供された複数の固有ノイズに基いて共通ノイズを生成する機能を有する。具体的には、共通ノイズ生成部（６２６）は、受信したｍ個のクライアントに対応する固有ノイズの平均を算出することによって共通ノイズを生成する。
【００４７】
本発明の実施形態の共通ノイズ埋込部（６２８）は、共通ノイズ生成部（６２６）において生成された共通ノイズをコンテンツ記憶部（６３８）に記憶されているオリジナルのコンテンツのデータに埋め込む機能を有する。共通ノイズの埋め込み処理は、本明細書において後で詳述される。
【００４８】
本発明の実施形態のエンベッダ生成部（６３０）は、コンテンツを利用することを希望するユーザからの要求に応じて、ユーザのコンピュータにおいてコンテンツを利用、再生するためのエンベッダ・ソフトウェア（以下、「エンベッダ」という）を生成する。エンベッダは、各ユーザに固有のノイズを生成する機構を備えるためユーザ毎に異なる。また、クライアントｋのためのエンベッダが生成されたことに応じて、固有ノイズＮ（ｋ，ｔ）を提供する固有ノイズ生成部ｋを固有ノイズ生成部（６２２）に登録する。
【００４９】
本発明の実施形態のユーザＩＤ管理部（６３２）は、コンテンツを利用することを希望するユーザからの要求に応じて、当該ユーザのＩＤおよびパスワードの管理および認証を実施する。また、本発明の実施形態の配布リスト記憶部（６３４）は、コンピュータ（５０５）から受信したコンテンツの配布対象であるクライアントのリストを含む配布先リストＤを記憶する。
【００５０】
本発明の実施形態のパラメータ設定部（６３６）は、配布するコンテンツごとに、特定のパラメータを設定する機能を有する。設定されるパラメータは、パラメータｔ０を含む。コンテンツ記憶部（６３８）は、作成者コンピュータ（５０５）から受信したコンテンツのオリジナル・データおよび共通ノイズ埋込部（６２８）によって共通ノイズが埋め込まれたコンテンツのデータを記憶する。
【００５１】
本発明の実施形態の通信部（６４０）は、ネットワーク（５２０）を介して作成者コンピュータ（５０５）、クライアント（５１５−１）…（５１５−ｎ）とデータ通信する機能をサーバ（５１０）に与える。具体的には、通信部（５１０）は、コンピュータ（５０５）からオリジナルのコンテンツのデータおよび配布リストを受信し、また、共通ノイズが埋め込まれたコンテンツおよびパラメータｔ０を作成者コンピュータ（５０５）に送信することができる。
【００５２】
次に、本発明の実施形態のクライアント（５１５−１）…（５１５−ｎ）（本明細書では、これらを集合的にクライアント（５１５）と表現し、この中の任意の１つをクライアント（５１５−ｋ）または、単に「クライアントｋ」と表現することとする）について説明する。クライアント（５１５−ｋ）は、通信部（６５２−ｋ）、ユーザＩＤ管理部（６５４−ｋ）、コンテンツ利用部（６５６−ｋ）、および、エンベッダ（６５８−ｋ）を備える。
【００５３】
本発明の実施形態の通信部（６５２−ｋ）は、ネットワーク（５２０）を介して作成者コンピュータ（５０５）、サーバ（５１０）とデータ通信する機能をクライアント（５１５−ｋ）に与える。具体的には、通信部（６５２−ｋ）は、ユーザＩＤ登録の要求をサーバ（５１０）に送信し、その結果を受信することができる。また、通信部（６５２−ｋ）は、配布データをコンピュータ（５０５）から受信することができる。
【００５４】
本発明の実施形態のユーザＩＤ管理部（６５４−ｋ）は、クライアント（５１５−ｋ）のユーザのＩＤおよびパスワードの、エンベッダ（６５８−ｋ）に対する認証を行う。すなわち、本発明の実施形態では、ユーザＩＤ管理部（６５４−ｋ）の認証を経なければエンベッダ（６５８−ｋ）にアクセスすることができず、その結果、コンテンツを利用することができない。
【００５５】
本発明の実施形態のコンテンツ利用部（６５６−ｋ）は、作成者のコンピュータ（５０５）より受信したコンテンツを利用する。例えば、コンテンツが動画である場合は、コンテンツ利用部（６５６−ｋ）は、そのような動画を閲覧する機能を提供する。ただし、本発明の実施形態では、受信した配布データがエンベッダ（６５８−ｋ）によって利用可能にされることによって、ユーザはコンテンツ利用部（６５６−ｋ）において初めてコンテンツが利用できるようになるものとする。
【００５６】
本発明の実施形態のエンベッダ（６５８−ｋ）は、データ復号部（６６０−ｋ）、固有ノイズ生成部（６６２−ｋ）、および、ノイズ除去部（６６４−ｋ）を備える。データ復号部（６６０−ｋ）は、作成者コンピュータ（５０５）のデータ暗号化部（６１０）において暗号化に使用された公開鍵の対となる当該クライアントの秘密鍵をセキュアに記憶し、かかる秘密鍵を用いて配布データを復号する。本発明の実施形態では、かかる復号によって、共通ノイズが埋め込まれたコンテンツおよびパラメータｔ０が得られる。
【００５７】
本発明の実施形態の固有ノイズ生成部（６６２−ｋ）は、データ復号部（６６０−ｋ）から受けたパラメータｔ０に応じてクライアント（５１５−ｋ）に固有ノイズを提供する機能を有する。クライアント（５１５−ｋ）における固有ノイズの提供の手法については、後でより詳細に説明される。
【００５８】
本発明の実施形態のノイズ除去部（６６４−ｋ）は、固有ノイズ生成部（６６２―ｋ）によって提供された固有ノイズを用いて、配布データに含まれていた共有ノイズを含むコンテンツを利用可能にする。既に述べたとおり、共通ノイズは、それぞれわずかに異なる複数の固有ノイズに基いて、具体的には、複数の固有ノイズの平均を算出することによって得られたものである。
【００５９】
そのために、ノイズ除去部（６６４−ｋ）は、コンテンツに埋め込まれた共有ノイズを当該クライアントの固有ノイズによって完全には除去することができない。除去されずに残った固有ノイズと共有ノイズの差分は、配布先の各クライアント（５１５−ｉ１）…（５１５−ｉｍ）に固有である。また、コンテンツの配布ごとにパラメータｔ０が設定されるので、配布ごとに固有ノイズ、およびそれから生成される共通ノイズは異なる結果、差分も配布ごとに異なるものとなる。さらに、共通ノイズは、配布先のｍ個のクライアントの固有ノイズから生成されるので、差分は配布先が変わると変化する。本発明の実施形態では、かかる差分の固有性によって、仮に利用可能にされたコンテンツが流出した場合であっても、どのクライアントから流出したか、どの配布によるコンテンツが流出したか、どのクライアント・グループに対して配布されたコンテンツが流出されたか等を特定するために差分を使用することができ、その結果、流出経路の追跡を効果的に実施することができることとなる。
【００６０】
図７は、本発明の実施形態におけるネットワーク・システムの全体動作を表現するフローチャート（７００）である。処理はステップ（７０５）でスタートし、ステップ（７１０）でユーザの要求に応じて、ユーザ登録および要求ユーザに対するエンベッダの配布を行う。処理はステップ（７１５）に進み、コンテンツの配布およびユーザによるコンテンツの利用が行われ、処理はステップ（７２０）で終了する。ステップ（７１０）、（７１５）の詳細は、それぞれ図８、９のフローチャートを用いて以下に詳述される。
【００６１】
次に、図８のフローチャート（７１０）を使用して、図７のステップ（７１０）におけるユーザ登録処理およびエンベッダの配布処理の一例をより詳細に説明する。図８は、本発明の実施形態におけるネットワーク・システムのユーザ登録の動作を表現するフローチャート（７１０）である。処理はステップ（８０５）でスタートし、ステップ（８１０）でユーザのコンピュータ（潜在的なクライアント）からユーザＩＤおよびパスワードの登録リクエストがサーバ（５０５）に送信される。次いで、ステップ８１５においてユーザ登録リクエストを受けたサーバ（５０５）が、ユーザＩＤおよびパスワードを登録するとともに、当該ユーザに対するエンベッダを準備する。
【００６２】
エンベッダは、ダウンロードした配布データをクライアント固有の秘密鍵を用いて復号する機能、パラメータｔ０に応じてクライアントの固有ノイズを生成する機能、共通ノイズが埋め込まれたコンテンツを固有ノイズを用いて利用可能とする機能等をコンピュータに与える、クライアントにインストールされるソフトウェアである。なお、本発明の実施形態では、クライアント（５１５−ｋ）の固有ノイズは以下の式に従って生成されるものとする。
【００６３】
【数４】
2013126225.tif 000006
【００６４】
ここで、上記の算出式そのものをエンベッダに含めるとクライアントｋに対応するシード（seeds）であるｓ0, ｓ1kが漏洩した場合にセキュリティの観点から大きなリスクを負うこととなる。そこで、本発明の実施形態では、上記のｓ0, ｓ1kを含む式を直接エンベッダに含めるのではなく、サーバ（５１０）においてあらかじめＮ（ｋ，ｔ）を求めたうえで、以下の条件を満たすａｋ，jをエンベッダに含めて配布するものとする。
【００６５】
【数５】
2013126225.tif 000007
【００６６】
なお、かかるak, jは、以下の行列演算を実行することによって求めることができる。
【００６７】
【数６】
2013126225.tif 000008
【００６８】
次に、ステップ（８１５）で要求ユーザに対するエンベッダが準備されたことに応じて、処理はステップ（８２０）に進み、エンベッダのダウンロードのためのリンク（ＵＲＬ）を含む、ユーザＩＤ登録完了通知をユーザに送信する。
【００６９】
次いで、ステップ（８２５）で、通知を受信したクライアント（５１５−ｋ）においてユーザがユーザＩＤ登録完了通知に含まれるエンベッダのダウンロードＵＲＬをクリックすることで、エンベッダをダウンロード、インストールする。処理はステップ（８３０）へ進み、終了する。
【００７０】
次に、図９のフローチャート（７１５）を使用して、図７のステップ（７１５）におけるコンテンツ配布処理の一例をより詳細に説明する。図９は、本発明の実施形態におけるネットワーク・システムのデータ配布処理の動作を表現するフローチャート（７１５）である。処理は、ステップ（９０５）でスタートし、ステップ（９１０）でコンテンツの作成者が準備したコンテンツが、当該コンテンツの配布を希望するクライアントを含む配布リストとともに作成者コンピュータ（５０５）からサーバ（５１０）にアップロードされる。
【００７１】
次に、ステップ（９１５）において、コンテンツを受信したサーバ（５１０）が、パラメータｔ０を設定する。パラメータｔ０は、例えば、以下の数式に従って、最小差分（ｍｉｎｉｍｕｍ  ｄｉｆｆｅｒｅｎｃｅ）Ａを最大化するように設定することができる。
【００７２】
【数７】
2013126225.tif 000009
【００７３】
なお、最小差分Ａを最大化するようにパラメータｔ０を設定することによって、最後にコンテンツに残存する共通ノイズと固有ノイズの差分（漏洩元のクライアントの特定に使用される）を、各クライアント間でより明確に差別化することができることに留意されたい。
【００７４】
処理はステップ（９２０）に進み、サーバ（５１０）が受信した配布先リストＤに含まれるクライアントについて、パラメータｔ０に基づいて固有ノイズＮ（ｋ，ｔ）を生成する。既に述べたとおり、本発明の実施形態では、クライアントｋに対応する固有ノイズは以下の数式に従って生成されるものとする。
【００７５】
【数８】
2013126225.tif 000010
【００７６】
次に、ステップ（９２５）で、ステップ（９２０）で生成された固有ノイズに基づいて共通ノイズＮｐ（ｔ）が生成される。本発明の実施形態では、共通ノイズは固有ノイズの平均を算出することによって、具体的には以下の数式に従って生成されるものとする。
【００７７】
【数９】
2013126225.tif 000011
【００７８】
処理はステップ（９３０）へ進み、サーバ（５１０）がコンテンツにステップ（９２５）で生成した共通ノイズＮｐ（ｔ）を埋め込む。なお、配布先のクライアントにおいて、共通ノイズが埋め込まれたコンテンツはスクランブル化されており、そのまま利用することができないものであることに再び留意されたい。
【００７９】
ここで、ステップ（９３０）における共通ノイズの埋め込み処理の２つの例を、図１０、１１を用いて説明する。図１０は、本発明の実施形態におけるノイズ埋め込み処理の一例の動作を表現するフローチャートである。この一例におけるノイズ埋め込み処理では、ＭＰＥＧ形式のコンテンツ内の離散コサイン変換（ＤＣＴ）係数に共通ノイズが埋め込まれる。
【００８０】
ＭＰＥＧコンテンツでは、ＤＣＴ係数について、ゼロ係数の継続個数ラン（ＲＵＮ）、それに続く非ゼロ係数のレベル（ＬＥＶＥＬ）、および、ＬＥＶＥＬの正負を表すサイン（ＳＩＧＮ）の組み合わせに対して、規格化された可変長符号（ＶＬＣ）を用いた符号化がなされる。この一例では、様々な長さをもつＶＬＣのうち同一の長さを持つものの集合内で、共通ノイズに基づくマップに従って置き換えを行うことによってノイズの埋め込み処理が実現される。
【００８１】
処理は、ステップ（１００５）でスタートし、ステップ（１０１０）で同一長のＶＬＣの集合のメンバーに対してラベル付けがなされたテーブルを形成する。具体的には、同じ長さのＶＬＣを大きさの順番、または、ＭＰＥＧ規格書の順に並べ、０からラベルを付与する。以下に、長さが７ビットのＶＬＣのテーブルを例として示す。本発明の実施形態では、このようなテーブルがＶＬＣのビット長ごとに形成される。この表は、サーバと全てのクライアント間で共有されるものとする。
【００８２】
【表１】
2013126225.tif 000012
【００８３】
処理はステップ（１０１５）に進み、変数ｔにパラメータｔ０をセットする。次いでステップ（１０２０）で、配布対象のＭＰＥＧ形式のコンテンツをファイルの頭から解析（ｐａｒｓｅ）する。
【００８４】
処理は進み、ステップ（１０２５）において、ＤＣＴ係数が見つかったかどうかが判定される。ステップ（１０２５）においてＤＣＴ係数が見つからなかったと判定された場合、処理はＮＯの矢印を介してステップ（１０２０）に戻り、コンテンツの解析が継続される。ステップ（１０２５）においてＤＣＴ係数が見つかったと判定された場合、処理はＹＥＳの矢印を介してステップ（１０３０）に進み、以下の式に従って共通ノイズ値を使用して置き換えるＤＣＴ係数が決定される。
【００８５】
【数１０】
2013126225.tif 000013
【００８６】
処理はステップ（１０３５）に進み、ステップ（１０３０）で決定された置き換えるＤＣＴ係数値でＤＣＴ係数を置き換え、次いで、ステップ（１０４０）においてｔがインクリメント（増分）される。処理はステップ（１０４５）に進み、コンテンツの解析に関して、ファイルの最終位置に到達したかどうかが判定される。到達していないと判定された場合、処理はＮＯの矢印を介してステップ（１０２０）に戻り、コンテンツの解析が継続される。到達したと判定された場合、処理はＹＥＳの矢印からステップ（１０５０）に進み終了する。
【００８７】
次に、共通ノイズの埋め込み処理の他の例を説明する。図１１は、本発明の実施形態におけるノイズ埋め込み処理の他の例の動作を表現するフローチャートである。この他の例では、第１の例と同様にＭＰＥＧ形式のコンテンツのＤＣＴ係数に共通ノイズが埋め込まれる。しかし、第１の例と異なりゼロ係数の継続個数ラン（ＲＵＮ）は変更されず、それに続く非ゼロ係数のレベル（ＬＥＶＥＬ）の大きさ（常に正の値を取る）、および、ＬＥＶＥＬの正負を表すサイン（ＳＩＧＮ）の組み合わせを共通ノイズ値に基いて変更することによって、共通ノイズを埋め込むものである。
【００８８】
処理は、ステップ（１１０５）でスタートし、ステップ（１１１０）において変数ｔにパラメータｔ０にセットする。次いでステップ（１１１５）において、配布対象のＭＰＥＧ形式のコンテンツをファイルの頭から解析（ｐａｒｓｅ）する。
【００８９】
処理は進み、ステップ（１１２０）において、ＤＣＴ係数が見つかったかどうかが判定される。ステップ（１１２０）においてＤＣＴ係数が見つからなかったと判定された場合、処理はＮＯの矢印を介してステップ（１１１５）に戻り、コンテンツの解析が継続される。ステップ（１１２０）においてＤＣＴ係数が見つかったと判定された場合、処理はＹＥＳの矢印を介してステップ（１１２５）に進み、共通ノイズ値を使用して置き換えるＤＣＴ係数の値（具体的には、ＬＥＶＥＬ、ＳＩＧＮ、および、共通ノイズによるＬＥＶＥＬ値の増減の方向を決定するＢｉｔＤｉｒ）を決定する。なお、本明細書では、ＬＥＶＥＬおよびＳＩＧＮの組み合わせにより求められる正負の符号付きのＬＥＶＥＬ値をＳＬＥＶＥＬというものとする。
【００９０】
本発明の実施形態のステップ（１１２５）では、置き換え後のデータ量が少なくなるように、共通ノイズによってＬＥＶＥＬ値の絶対値が小さくなるように、ＢｉｔＤｉｒが決定される。すなわち、ある変数ｔにおいて（ａ）ＳＬＥＶＥＬの値が正、共通ノイズの値が正の場合はＢｉｔＤｉｒを反転方向（−１）に、（ｂ）ＳＬＥＶＥＬの値が正、共通ノイズの値が負の場合はＢｉｔＤｉｒを順方向（＋１）に、（ｃ）ＳＬＥＶＥＬの値が負、共通ノイズの値が正の場合はＢｉｔＤｉｒを順方向（＋１）に、（ｄ）ＳＬＥＶＥＬの値が負、共通ノイズの値が負の場合はＢｉｔＤｉｒを反転方向（−１）に、それぞれＢｉｔＤｉｒが設定される。
【００９１】
本発明の実施形態では、ＢｉｔＤｉｒを決定したことに応じて、下記の式に従って、ＳＬＥＶＥＬ´が算出され、算出されたＳＬＥＶＥＬ´に基いて、置き換えるべきＬＥＶＥＬ値およびＳＩＧＮ値が決定される。
【００９２】
【数１１】
2013126225.tif 000014
【００９３】
上記式においては、共通ノイズを埋め込んだときのＬＥＶＥＬの絶対値が許容される値を超えたり、また、不必要にデータ・サイズが大きいものとなったりすることを防止するために、ゼロ係数の継続個数ラン（ＲＵＮ）の数に応じて予め設定された値（ｒｎ［ｒｕｎ］）のｍｏｄの算出値を共通ノイズ乗じていることに留意されたい。
【００９４】
また、共通ノイズを埋め込んだ後のＬＥＶＥＬの値が０となりＲＵＮが消えてしまうことを避けるために、（ａ）ＳＬＥＶＥＬが正、ＳＬＥＶＥＬ´が０以下である場合、ＳＬＥＶＥＬ´さらに−１するものとし、（ｂ）ＳＬＥＶＥＬが負、ＳＬＥＶＥＬ´が０以上である場合、ＳＬＥＶＥＬ´さらに＋１する処理を行っていることに留意されたい。
【００９５】
処理はステップ（１１３０）に進み、ステップ（１１２５）で決定した置き換えるべきＬＥＶＥＬ値およびＳＩＧＮ値を用いてコンテンツを変更し、さらにＢｉｔＤｉｒをコンテンツに埋め込む。なお、本発明の実施形態では、ＢｉｔＤｉｒは、データ量の増加を可及的に防止するために、”−１“を”１“、”＋１“を”０“に変換して埋め込まれるものとする。
【００９６】
次いで、ステップ（１１３５）において変数ｔがインクリメント（増分）される。処理はステップ（１１４０）に進み、コンテンツの解析に関して、ファイルの最終位置に到達したかどうかが判定される。到達していないと判定された場合、処理はＮＯの矢印を介してステップ（１１１５）に戻り、コンテンツの解析が継続される。到達したと判定された場合、処理はＹＥＳの矢印からステップ（１１４５）に進み終了する。
【００９７】
説明は、図９のフローチャート（７１５）に戻る。ステップ（９３５）で共通ノイズが埋め込まれたコンテンツがパラメータｔ０とともに作成者コンピュータ（５０５）に返送される。次いで、ステップ（９４０）で、返送されたコンテンツとパラメータｔ０が、各ユーザの公開鍵で暗号化され、各ユーザに配布される。
【００９８】
ステップ（９４５）で、クライアントは秘密鍵で受けたデータを復号し、共通ノイズが埋め込まれたコンテンツおよびパラメータｔ０を得る。次いで、ステップ（９５０）で、抽出された共通パラメータｔ０に基づいて、当該クライアントの固有ノイズを生成する。固有ノイズの生成の方法は既に述べたが、各クライアントにインストールされたエンベッダが他のクライアントの固有ノイズを生成することができないことに留意されたい。
【００９９】
処理はステップ（９５５）に進み、クライアントが、ステップ（９５０）で生成した固有ノイズを用いて、コンテンツを利用可能にする。ここで、固有ノイズと共通ノイズのわずかな差分によって、コンテンツは利用可能となるが完全には復元されず、利用可能にされたコンテンツにはそのユーザ固有の識別情報を持つことになることを再び思い出されたい。
【０１００】
ここで、ステップ（９３０）におけるノイズの埋め込み処理に関して、２つの例を図１２および図１３を用いて説明する。図１２は、本発明の実施形態におけるノイズ除去処理の一例の動作を表現するフローチャート（９５５）である。この処理は、図１０と関連して説明した共通ノイズ埋め込み処理に対応するものである。処理は、ステップ（１２０５）でスタートし、ステップ（１２１０）でＶＬＣテーブルがクライアントにおいて形成される。かかるＶＬＣテーブルの形成は図１０と関連して説明したのでここでは詳述されない。
【０１０１】
処理はステップ（１２１５）に進み、変数ｔにパラメータｔ０をセットする。次いでステップ（１２２０）で、配布対象のＭＰＥＧ形式のコンテンツをファイルの頭から解析（ｐａｒｓｅ）する。
【０１０２】
処理は進み、ステップ（１２２５）において、ＤＣＴ係数が見つかったかどうかが判定される。ステップ（１２２５）においてＤＣＴ係数が見つからなかったと判定された場合、処理はＮＯの矢印を介してステップ（１２２０）に戻り、コンテンツの解析が継続される。ステップ（１２２５）においてＤＣＴ係数が見つかったと判定された場合、処理はＹＥＳの矢印を介してステップ（１２３０）に進み、固有ノイズ値を使用して置き換えるＤＣＴ係数が決定される。かかる決定は固有ノイズ値を使用すること以外は、図１０において説明した決定の逆の処理を行うことである。具体的には、上述の第１の例に従って共通ノイズが埋め込まれた場合は、以下の式に従ってラベルが計算され、対応するＶＬＣによってＤＣＴ係数が置き換えられる。
【０１０３】
【数１２】
2013126225.tif 000015
【０１０４】
処理はステップ（１２３５）に進み、ステップ（１２３０）で決定された置き換えるＤＣＴ係数値でＤＣＴ係数を置き換え、次いで、ステップ（１２４０）において変数ｔがインクリメント（増分）される。処理はステップ（１２４５）に進み、コンテンツの解析に関して、ファイルの最終位置に到達したかどうかが判定される。到達していないと判定された場合、処理はＮＯの矢印を介してステップ（１２２０）に戻り、コンテンツの解析が継続される。到達したと判定された場合、処理はＹＥＳの矢印からステップ（１２５０）に進み終了する。
【０１０５】
次に、ノイズ除去の他の例を説明する。図１３は、本発明の実施形態におけるノイズ除去処理の他の例の動作を表現するフローチャート（９５５）である。この処理は、図１１と関連して説明した共通ノイズ埋め込み処理に対応するものである。処理は、ステップ（１３０５）でスタートし、ステップ（１３１０）において変数ｔにパラメータｔ０にセットする。次いでステップ（１３１５）において、配布対象のＭＰＥＧ形式のコンテンツをファイルの頭から解析（ｐａｒｓｅ）する。
【０１０６】
処理は進み、ステップ（１３２０）において、ＤＣＴ係数が見つかったかどうかが判定される。ステップ（１３２０）においてＤＣＴ係数が見つからなかったと判定された場合、処理はＮＯの矢印を介してステップ（１３１５）に戻り、コンテンツの解析が継続される。ステップ（１３２０）においてＤＣＴ係数が見つかったと判定された場合、処理はＹＥＳの矢印を介してステップ（１３２５）に進み、対応するＢｉｔＤｉｒを抽出したうえで、以下の式に従って固有ノイズ値を使用してＳＬＥＶＥＬ´が算出される。そして、算出されたＳＬＥＶＥＬ´に基いて、置き換えるべきＬＥＶＥＬ値およびＳＩＧＮ値が決定される。
【０１０７】
【数１３】
2013126225.tif 000016
【０１０８】
処理はステップ（１３３０）に進み、ステップ（１３２５）で決定したＬＥＶＥＬの値およびＳＩＧＮ値でＤＣＴ係数を置き換える。次いで、ステップ（１３３５）において変数ｔがインクリメント（増分）される。処理はステップ（１３４０）に進み、コンテンツの解析に関して、ファイルの最終位置に到達したかどうかが判定される。到達していないと判定された場合、処理はＮＯの矢印を介してステップ（１３１５）に戻り、コンテンツの解析が継続される。到達したと判定された場合、処理はＹＥＳの矢印からステップ（１３４５）に進み終了する。
【０１０９】
説明は、図９のフローチャート（７１５）に戻る。ステップ（９６０）において、ユーザはコンテンツを利用し、ステップ（９６５）において処理は終了する。
【０１１０】
図１４は、本発明の実施の形態による利用者コンピュータ５０５、サーバ５１０、クライアント（５１５−１）・・・（５１５−ｎ）を実現するのに好適な情報処理装置のハードウェア構成の一例を示した図である。情報処理装置は、バス２に接続されたＣＰＵ（中央処理装置）１とメインメモリ４を含んでいる。ハードディスク装置１３、３０、およびＣＤ−ＲＯＭ装置２６、２９、フレキシブル・ディスク装置２０、ＭＯ装置２８、ＤＶＤ装置３１のようなリムーバブル・ストレージ（記録メディアを交換可能な外部記憶システム）がフロッピーディスクコントローラ１９、ＩＤＥコントローラ２５、ＳＣＳＩコントローラ２７などを経由してバス２へ接続されている。
【０１１１】
フレキシブル・ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭのような記憶メディアが、リムーバブル・ストレージに挿入される。これらの記憶メディアやハードディスク装置１３、３０、ＲＯＭ１４には、オペレーティング・システムと協働してＣＰＵ等に命令を与え、本発明を実施するためのコンピュータ・プログラムのコードを記録することができる。メインメモリ４にロードされることによってコンピュータ・プログラムは実行される。コンピュータ・プログラムは圧縮し、また複数に分割して複数の媒体に記録することもできる。
【０１１２】
情報処理装置は、キーボード／マウス・コントローラ５を経由して、キーボード６やマウス７のような入力デバイスからの入力を受ける。情報処理装置は、視覚データをユーザに提示するための表示装置１１にＤＡＣ／ＬＣＤＣ１０を経由して接続される。
【０１１３】
情報処理装置は、ネットワーク・アダプタ１８（イーサネット（Ｒ）・カードやトークンリング・カード）等を介してネットワークに接続し、他のコンピュータ等と通信を行うことが可能である。図示はされていないが、パラレルポートを介してプリンタと接続することや、シリアルポートを介してモデムを接続することも可能である。
【０１１４】
以上の説明により、本発明の実施の形態によるデータ処理システムを実現するのに好適な情報処理装置は、通常のパーソナルコンピュータ、ワークステーション、メインフレームなどの情報処理装置、または、これらの組み合わせによって実現されることが容易に理解されるであろう。ただし、これらの構成要素は例示であり、そのすべての構成要素が本発明の必須構成要素となるわけではない。
【０１１５】
本発明の実施の形態において使用される情報処理装置の各ハードウェア構成要素を、複数のマシンを組み合わせ、それらに機能を配分し実施する等の種々の変更は当業者によって容易に想定され得ることは勿論である。それらの変更は、当然に本発明の思想に包含される概念である。
【０１１６】
本発明の実施の形態のデータ処理システムは、マイクロソフト・コーポレーションが提供するＷｉｎｄｏｗｓ（Ｒ）オペレーティング・システム、アップル・コンピュータ・インコーポレイテッドが提供するＭａｃＯＳ（Ｒ）、Ｘ  Ｗｉｎｄｏｗ  Ｓｙｓｔｅｍを備えるＵＮＩＸ（Ｒ）系システム（例えば、インターナショナル・ビジネス・マシーンズ・コーポレーションが提供するＡＩＸ（Ｒ））のような、ＧＵＩ（グラフィカル・ユーザー・インターフェース）マルチウインドウ環境をサポートするオペレーティング・システムを採用する。
【０１１７】
以上から、本発明の実施の形態において使用されるデータ処理システムは、特定のマルチウインドウ・オペレーティング・システム環境に限定されるものではないことを理解することができる。
【０１１８】
また、本発明は、ハードウェア、ソフトウェア、またはハードウェア及びソフトウェアの組み合わせとして実現可能である。ハードウェアとソフトウェアの組み合わせによる実行において、所定のプログラムを有するデータ処理システムにおける実行が典型的な例として挙げられる。かかる場合、該所定プログラムが該データ処理システムにロードされ実行されることにより、該プログラムは、データ処理システムを制御し、本発明にかかる処理を実行させる。このプログラムは、任意の言語・コード・表記によって表現可能な命令群から構成される。そのような命令群は、システムが特定の機能を直接、または１．他の言語・コード・表記への変換、２．他の媒体への複製、のいずれか一方もしくは双方が行われた後に、実行することを可能にするものである。
【０１１９】
もちろん、本発明は、そのようなプログラム自体のみならず、プログラムを記録した媒体もその範囲に含むものである。本発明の機能を実行するためのプログラムは、フレキシブル・ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＤＶＤ、ハードディスク装置、ＲＯＭ、ＭＲＡＭ、ＲＡＭ等の任意のコンピュータ読み取り可能な記録媒体に格納することができる。かかるプログラムは、記録媒体への格納のために、通信回線で接続する他のデータ処理システムからダウンロードしたり、他の記録媒体から複製したりすることができる。また、かかるプログラムは、圧縮し、または複数に分割して、単一または複数の記録媒体に格納することもできる。また、様々な形態で、本発明を実施するプログラム製品を提供することも勿論可能であることにも留意されたい。
【０１２０】
上記の実施の形態に、種々の変更または改良を加えることが可能であることが当業者に明らかである。例えば、本発明の実施形態では、ＭＰＥＧ形式の動画コンテンツのＡＣ成分の離散コサイン変換（ＤＣＴ）係数に共通ノイズを埋め込むことについて説明をしたが、そのほか、ＤＣ成分、マクロブロック・パターン、モーション・ベクタなど他の部分にノイズを埋め込むこともの可能であることは当然である。
【０１２１】
さらに、動画コンテンツの場合、画質、信号強度について時間依存で調整を行う必要がある場合がある。その場合、変数ｔに対して、例えばコンテンツ作成者が望む信号強度の倍率ｒ（ｔ）を設定し、ｒ（ｔ）で増幅ないし減幅した共通ノイズをサーバ５１０で埋め込み、ｒ（ｔ）をパラメータｔ０とともにクライアントに送付して、クライアント側で固有ノイズをｒ（ｔ）で増幅ないし減幅したものを用いてコンテンツを利用可能にするようにするとよい。
【０１２２】
本発明の実施形態においては、すべてのj（ｊ＝０…Ｔ−１）についてak,jをクライアントｋのエンベッダに含めるものとして説明した。しかし、固有ノイズのサイクル（Ｔ）が非常に大きいためにすべてのak,jをエンベッダに含めてクライアントｋに配布することが困難な場合がある。かかる場合、ｊの値を離散的に選択して固有ノイズＮ（ｋ，ｔ）を計算し、選択されたｊに対応するak,jをエンベッダに含めることで固有ノイズ（ｋ，ｔ）を近似する手法を採用してもよい。なお、かかる手法を採用する場合には、jを選択する場合に、極値を与えるjをスキップしないように選択することが望ましい。
【０１２３】
また、本発明の実施形態では、動画コンテンツを配布することについて説明をしたが、様々な他の形式の動画や、静止画データ、エンジニアリング・データ、ドキュメント・データなどの種々のデータについて本発明が適用可能であることは明らかであることに留意されたい。上記のような変更または改良を加えた形態も当然に本発明の技術的範囲に含まれる。
【０１２４】
以上、本発明の実施形態によれば、配布するデータのサイズの増大を可及的に抑制することができる。また、共通ノイズが配布先クライアントの固有ノイズから生成される、具体的には複数の配布先クライアントの固有ノイズの平均を算出することによって共通ノイズが生成されるので、コンテンツの利用をできる限り妨げない態様で攻撃者を効果的に追跡できるようにデータを配布することができる。
【符号の説明】
【０１２５】
５０５…作成者コンピュータ
５１０…サーバ
５１５−１〜５１５−ｎ…クライアント
５２０…ネットワーク
【図１】
2013126225.tif 000020
【図２】
2013126225.tif 000021
【図３】
2013126225.tif 000022
【図４】
2013126225.tif 000023
【図５】
2013126225.tif 000024
【図６】
2013126225.tif 000025
【図７】
2013126225.tif 000026
【図８】
2013126225.tif 000027
【図９】
2013126225.tif 000028
【図１０】
2013126225.tif 000029
【図１１】
2013126225.tif 000030
【図１２】
2013126225.tif 000031
【図１３】
2013126225.tif 000032
【図１４】
2013126225.tif 000033