(57)【特許請求の範囲】
【請求項１】
アプリケーション・ソフトウェア（ＡＰＰ）によって第１のインタフェース（２１）を介して受信されるデジタル・メディア・コンテンツ（１）に透かしを入れる方法において、前記デジタル・メディア・コンテンツ（１）は、少なくとも１つの暗号化サンプル（１５）の形であり、前記デジタル・メディア・コンテンツ（１）は、各サンプル（１５）に割り当てられたメタデータ（１０）に関連があり、前記サンプル（１５）はサンプルキー（Ｋｃ´）によって暗号化され、前記メタデータ（１０）は、第１のデータ（１１）、第２のデータ（１２）、並びに前記第１及び第２のデータの署名から生じるデジタル署名（１３）を含み、前記第１のデータ（１１）は、少なくともコンテンツキー（Ｋｃ）及び透かしを入れるメタデータ（ＷＭ）を含み、そして少なくとも前記第１のデータ（１１）は、少なくとも１つのトランスポートキー（ＫＴ、ＫＴ´）によって暗号化され、前記コンテンツキー（Ｋｃ）は、暗号プロセスで第１の入力として用いられ、前記第２のデータ（１２）は、少なくとも、前記暗号プロセスにおいて第２の入力として使用される初期ベクトル（ＩＶ）を含み、前記コンテンツキー（Ｋｃ）及び前記初期ベクトル（ＩＶ）が、前記デジタル・メディア・コンテンツ（１）の各サンプル（１５）を暗号化／解読するために、前記サンプルキー（Ｋｃ´）を検索することを可能にし、前記アプリケーション・ソフトウェア（ＡＰＰ）は、第２のインタフェース（２２）を介して前記メタデータ（１０）を処理することを担当する安全な環境（３０）と通信し、前記安全な環境（３０）は、前記トランスポートキー（ＫＴ、ＫＴ´）を安全なメモリ（３５）から抽出するか、又は前記安全なメモリ（３５）に格納された秘密キー（Ｋｓ）から前記トランスポートキー（ＫＴ、ＫＴ´）を導き出すことが可能である方法であって、
前記メタデータ（１０）を得て、それを前記安全な環境（３０）に送信するように、前記アプリケーション・ソフトウェア（ＡＰＰ）に命令するステップと、
少なくともコンテンツキー（Ｋｃ）を理解できる形で検索するために、前記トランスポートキー（ＫＴ、ＫＴ´）によって前記安全な環境（３０）の中で前記第１のデータ（１１）を解読するステップと、
前記安全な環境（３０）によって、前記デジタル的に署名された第１及び第２のデータ（１１、１２）の認証を検証し、否定の結果の場合、対策を行い、一方、肯定の結果の場合、前記透かしを入れるメタデータ（ＷＭ）を透かしを入れるユニット（３９）に送信し、そして前記サンプルキー（Ｋｃ´）によって各サンプル（１５）を暗号解読するために、前記デジタル・メディア・コンテンツ（１）、前記コンテンツキー（Ｋｃ）、及び初期ベクトル（ＩＶ）をデスクランブラー（３７）に送信するステップと、
少なくとも前記透かしを入れるメタデータ（ＷＭ）によってそれをデジタル的にマークするために、各暗号解読されたサンプル（１５´）を前記透かしを入れるユニット（３９）に送信するステップと、
レンダリング目的のために、前記サンプル（１５´、１５"）を前記透かしを入れるユニット（３９）から前記アプリケーション・ソフトウェア（ＡＰＰ）に、又は安全なメディア経路に送信するステップと、
を含む方法。
【請求項２】
前記透かしを入れるユニット（３９）は、前記サンプルを独自に識別するために、前記安全な環境（３０）に特有の識別透かし（ＷＩＤ）で前記サンプルを更にデジタル的にマークし、前記識別透かし（ＷＩＤ）は前記安全なメモリ（３５）から抽出される請求項１に記載の方法。
【請求項３】
前記メタデータ（１０）は、２つの状態を有することができる少なくとも１つのフラグ（Ｆ１、Ｆ２）を更に含み、前記スクランブルされたサンプル（１５´）に透かしを入れることを達成することは、前記フラグ（Ｆ）の前記状態に依存する請求項１〜２のいずれか１項に記載の方法。
【請求項４】
前記メタデータ（１０）は、各スクランブルされたサンプル（１５´）に透かしを入れることを制御するための第１のフラグ（Ｆ１）、及び複数のサンプル（１５´）に透かしを入れることを制御するための、前記第１のデータ（１１）の中のキーメタデータ（ＫｃＭ）に含む第２のフラグ（Ｆ２）を含み、前記第２のフラグ（Ｆ２）の前記状態は、前記第１のフラグ（Ｆ１）の考察及び前記認証ステップの達成を制御する請求項３に記載の方法。
【請求項５】
前記認証ステップが否定の結果を提供する場合、前記デスクランブラー（３７）は、対策として、少なくとも１つの暗号期間の間いかなる暗号解読プロセスも中止する請求項１〜４のいずれか１項に記載の方法。
【請求項６】
少なくとも前記コンテンツキー（Ｋｃ）は、前記トランスポートキー（ＫＴ）で暗号化され、そして前記透かしを入れるメタデータ（ＷＭ）は、前記トランスポートキー（ＫＴ）とは別の第２のトランスポートキー（ＫＴ´）で暗号化される請求項１〜５のいずれか１項に記載の方法。
【請求項７】
前記デジタル・メディア・コンテンツ（１）は、ＩＳＯベースのメディア・ファイル・フォーマットに準拠するストリーム・メディア・コンテンツであり、そして／又は前記暗号プロセスは、先進暗号化標準プロセスに関連する請求項１〜６のいずれか１項に記載の方法。
【請求項８】
前記メタデータ（１０）を得て、それを前記安全な環境（３０）に送信することを前記アプリケーション・ソフトウェア（ＡＰＰ）に命令することを目的とする前記ステップは、標準アプリケーション・ソフトウェア（ＡＰＰ）の中のアプリケーション層を変更することにより実行される請求項１〜７のいずれか１項に記載の方法。
【請求項９】
前記安全な環境（３０）は、前記安全な環境（３０）の中の中央処理装置（３２）に実施されるファームウェア（ファーム）により制御される請求項１〜８のいずれか１項に記載の方法。
【請求項１０】
デジタル・メディア・コンテンツに透かしを入れるシステムであって、
前記デジタル・メディア・コンテンツ（１）が、第１のインタフェース（２１）を介して、サンプルキー（Ｋｃ´）によって暗号化された少なくとも１つの暗号化サンプル（１５）の形で、入力されるアプリケーション・ソフトウェア（ＡＰＰ）を走らせるための演算ユニット（２５）を備え、前記デジタル・メディア・コンテンツ（１）は、各サンプル（１５）に割り当てられたメタデータ（１０）に関連があり、そして前記メタデータ（１０）は、第１のデータ（１１）、第２のデータ（１２）、並びに前記第１及び第２のデータの署名から生じるデジタル署名（１３）を含み、前記第１のデータ（１１）は、少なくともコンテンツキー（Ｋｃ）及び透かしを入れるメタデータ（ＷＭ）を含み、そして前記第２のデータ（１２）は少なくとも初期ベクトル（ＩＶ）を含み、少なくとも前記第１のデータ（１１）は、少なくとも１つのトランスポートキー（ＫＴ、ＫＴ´）によって暗号化されるシステムにおいて、第２のインタフェース（２２）を介して前記アプリケーション・ソフトウェア（ＡＰＰ）と通信する安全な環境（３０）を更に備え、前記安全な環境（３０）は、
少なくとも１つのトランスポートキー（ＫＴ、ＫＴ´）又は少なくとも前記トランスポートキーを検索するために使用される秘密キー（ＫＳ）を格納するための安全なメモリ（３５）と、
前記少なくとも１つのトランスポートキー（ＫＴ、ＫＴ´）によって前記第１のデータ（１１）を解読するための暗号ユニット（３３）と、
前記署名された第１及び第２のデータ（１１、１２）を認証するための認証ユニット（３１）と、
前記コンテンツキー（Ｋｃ）及び前記初期ベクトル（ＩＶ）によって、各サンプル（１５）を暗号解読するためのデスクランブラー（３７）と、
前記第１のデータ（１１）に含まれる少なくとも透かしを入れるメタデータ（ＷＭ）によって各暗号解読されたサンプル（１５´）をデジタル的にマークすることが可能な透かしを入れるユニット（３９）と、
を備え、前記アプリケーション・ソフトウェア（ＡＰＰ）は、前記メタデータ（１０）を処理のために前記安全な環境（３０）に送信する前に、前記メタデータ（１０）を前記デジタル・メディア・コンテンツ（１１）から、又は別のソースから抽出するように更に構成され、前記第２のインタフェース（２２）は、レンダリング装置により再生されることを考慮して、前記安全な環境（３０）から前記暗号解読されたサンプル（１５´、１５"）を出力するために更に使われることを特徴とするシステム。
【請求項１１】
前記安全なメモリ（３５）は、前記暗号解読されたサンプル（１５´）に透かしを入れる間に前記安全な環境に属する、固有識別マーク（ＷＩＤ）を加えるために前記マーキングユニット（３９）に送信される前記固有識別透かし（ＷＩＤ）を更に含む請求項１０に記載のシステム。
【請求項１２】
前記安全な環境（３０）は、中央処理ユニット（３２）と、ファームウェア（ファーム）が安全なマスター処理ユニットとして前記安全な環境（３０）のすべての構成要素を制御するために実行される不揮発性メモリ（３２´）と、を備える請求項１０又は１１に記載のシステム。
【請求項１３】
前記安全な環境（３０）は、その構成要素を制御するためのファームウェアを動作させるいかなる中央処理ユニットも欠いているが、安全な処理従属ユニットとして前記アプリケーション・ソフトウェア（ＡＰＰ）により制御される請求項１０又は１１に記載のシステム。
【請求項１４】
前記安全な環境（３０）はモノリシック・チップセットである請求項１０〜１３のいずれか１項に記載のシステム。
【請求項１５】
前記安全な環境（３０）はスマートカードである請求項１１〜１４のいずれか１項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル画像、音声データ、又は音声／ビデオ・データストリームのようなメディアコンテンツに電子透かしを加えるために透かしを入れる分野に関する。より詳細には、本発明は、関連した暗号解読されたコンテンツに著作権情報を加えなければならない、有料テレビドメインのセットトップボックスのような、処理装置により受信される暗号解読された／暗号化されたコンテンツに関する。
【背景技術】
【０００２】
有料テレビシステムのような有料メディア環境において、デジタル・メディア・プレーヤに送られたマルチメディアコンテンツは、制限されたアクセスを提供するために、暗号化された形（即ち、スクランブルされた形）で提供される。従って、この種のコンテンツを暗号解読する権利の代償を払った加入者だけが、その明りょうな形でコンテンツを検索するための適切な解読キーを受信する。しかしながら、一旦暗号解読されると、コンテンツは、誰がこのコンテンツの所有者か又は許可されたユーザーであるかについて判定する能力なしに、誰にでもその明白な形で送信できるいかなる不正なコピーもされやすい。
【０００３】
デジタルコンテンツの無許可コピーを防止するか又は阻止して、それによって、このコンテンツに付属の著作権を守ることを目的とする公知の技術は、電子透かしプロセスである。透かしを入れることは、デジタル信号に情報を埋め込むプロセスであり、デジタル信号は、その所有者のその真正又は身元を検証するために、同様に可視識別のための透かしがついた紙として用いることができる信号がコピーされる場合、透かしに関する情報もコピーで運ばれる。通常、２種類の電子透かし、即ち可視透かし及び不可視透かしがある。テレビ番組、ダウンロード可能な映画、又はストリーミングにより提供される音声／ビデオデータのようなマルチメディアコンテンツは、好ましくは、明らかな目的のための不可視透かしを含む。
【０００４】
セットトップボックス・ドメインの特定のケースにおいて、コンテンツ（例えば、ビデオ及び音声）は、条件付きアクセスシステム（ＣＡＳ）によって生成されたキーによって安全にされる。暗号化された解読キーを含む暗号化されたコンテンツ及びメタデータは、例えば、ＨＴＴＰ（ＤＡＳＨ）を通じてダイナミック適応ストリーミングにより放送されるか、又は加入者が利用できる。
【０００５】
ＤＡＳＨは、インターネットを介するストリーミングサービスの効果的で高品質の提供を可能にするためにフォーマットを提供するイネーブラである。これらのサービスのメディアコンテンツは、従来のＨＴＴＰウェブサーバから供給される。ＤＡＳＨは、規格「ＩＳＯベースのメディア・ファイル・フォーマット」（ＩＳＯ  ＢＭＦＦ）に基づいている。ＩＳＯ  ＢＭＦＦに適合しているファイルは、「ボックス」と呼ばれる、一連のオブジェクトとして形成される。この基準を参照すると、コンテンツは、先進暗号化基準（ＡＥＳ）カウンター（ＣＴＲ）モード又はＡＥＳ暗号ブロック連鎖（ＣＢＣ）モードを使用して暗号化できる。これらの２つのモードは、コンテンツを暗号化するために初期ベクトル（ＩＶ）を必要とする。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】欧州特許第２ ３９１ １２５Ａ１号明細書
【特許文献２】米国特許出願公開第２０１０／０２０８８９１Ａ１号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００７】
解読プロセスは、条件付きアクセスモジュール（ＣＡＭ）によってユーザー側で実行される。この動作の後、コンテンツは、通常、透かしを入れるメタデータを用いて、ユーザー装置（例えば、セットトップボックス）のアプリケーション・ソフトウェアによってマークされる。この種のメタデータは、通常、透かしをどこに埋め込まれなければならないか、そしてどのデータが透かしとして使われなければならないかに関する情報を含む。これは、保護されないコンテンツ及び透かしを入れるメタデータがこの種のアプリケーション・ソフトウェアにさらされることを意味する。従って、マーキングの施行は、ユーザー装置で動作するソフトウェアのセキュリティに依存する。この装置がうまく攻撃されるか、又は開いているだけの（ソフトウェア認証でない）場合、メディアコンテンツのマーキングをバイパス／変更することがより容易である。また、要求に応じて、アプリケーション・ソフトウェアが解読キーを備えている場合、それがいかなる解読プロセスを実行することも可能である点に留意する必要がある。通常、初期ベクトル及び解読キーの暗号化された形は、アプリケーション・ソフトウェアによってアクセス可能である。従って、アプリケーション・ソフトウェアは、メディアコンテンツの解読を実行して、最後に保護されていないコンテンツにアクセスすることが可能である。
【０００８】
この種のアプリケーション・ソフトウェアが信頼できないこと、そしてそれが保護されていないコンテンツにアクセスすることができることを考慮すると、透かしを入れるプロセスへの攻撃はまだ可能である。
【０００９】
従って、それに電子透かしを加えるためにアプリケーション・ソフトウェアによって暗号化された形で受信された保護されていないメディアコンテンツに実行された透かしを入れるプロセスを安全にするために、効果的な解決策を提供する必要がある。
【００１０】
特許文献１は、特定のユーザーに引き渡されたマルチメディアコンテンツに追跡秘密データを埋め込む方法に関する。このために、この文献は、デスクランブラーユニットのためのセキュリティ動作を担当するセキュリティモジュールにより出力されたデータをマークすることに重点を置いている。目的は、データのこのストリームを生成したセキュリティモジュールを表わすいくつかの値を含むセキュリティモジュールと暗号解読ユニットとの間のマークされたストリームを生成することである。暗号解読ユニットに送信されたデータは、変更されたビデオストリーム及び前記補正データから固有の復元されてマークされたビデオストリームを得るように、復元値の算出を可能にするポストマークされた補正データに関する。
【００１１】
特許文献２は、放送手段によって安全に配布できる視聴覚シーケンスの個人化マーキングを実行するプロセスを開示する。このために、この文献は、変更ストリーム及び補完的ストリームを含む固有の情報を受信施設の全てに送信することを提案する。復元されたストリームは、それがサーバにおいて第１の透かしを入れるステップにより適用された第１のマークを含むという事実によって第１のストリームと異なる。この第１のマークは、好ましくは、ユーザーにとって問題となる。補完的ストリームは、マークされた視聴覚ストリームに属する透かしを入れられたデータを含む。第２のマークは、受信器の視聴覚デコーダにより生成されて、復元されたストリームをマークするための個人化識別子として使われる。
【課題を解決するための手段】
【００１２】
上述の課題を解決するために、本発明は、ユーザー装置、通常は、セットトップボックス又はその他の種類のデコーダのような演算ユニットの中で動作するアプリケーション・ソフトウェアによって第１のインタフェースを介して受信されたデジタル・メディア・コンテンツに透かしを入れる方法を提案する。デジタル・メディア・コンテンツは、少なくとも１つの暗号化サンプル（即ち、コンテンツパケットであり得る１つのコンテンツ）の形で受信される。デジタル・メディア・コンテンツは、サンプルに、好ましくは各サンプルに割り当てられたメタデータに関連している。このために、メタデータは、このメタデータが関連するサンプルを識別することを可能にする情報を含むことができる。サンプルと関連したメタデータとの間のこの関係は、データストリームの中のこの種のデータの特定の配列によって得ることもできるか、又は同期化プロセスによって得ることもできる。各サンプルは、サンプルキーによって暗号化される。
【００１３】
メタデータは、少なくとも第１のデータ、第２のデータ、並びに第１及び第２のデータの署名から生じるデジタル署名を含む。第１のデータは、少なくともコンテンツキー及び透かしを入れるメタデータを含む。好ましくは、第１のデータはコンテンツキーに関するキーメタデータも含む。少なくとも、第１のデータは、少なくとも１つのトランスポートキーによって暗号化される。コンテンツキーは、暗号プロセスで第１の入力として用いられる。第２のデータは少なくとも初期ベクトルを含む。この初期ベクトルは、暗号プロセスで第２の入力として用いられ、そのため、コンテンツキー及び初期ベクトルは、デジタル・メディア・コンテンツの各サンプルを暗号化／解読するためのサンプルキーを検索することを可能にする。
【００１４】
本発明によれば、アプリケーション・ソフトウェアは、メタデータを処理することと、暗号化データを解読することと、そして必要であればメディアコンテンツに透かしを入れることとを担当する安全な環境と、第２のインタフェースを介して通信することが可能である。従って、アプリケーション・ソフトウェアは、メタデータの中に含まれるデータを処理することができない。安全な環境は、トランスポートキーを安全なメモリから抽出するか、又はトランスポートキーを安全な環境の安全なメモリに格納された秘密キーから（計算によって）得ることが可能である。
【００１５】
デジタル・メディア・コンテンツに透かしを入れることは、次のステップにより実行される。
メタデータを（例えば、それをデジタル・メディア・コンテンツから、又は他のソースから抽出することによって）得て、メタデータを安全な環境に（第１のデータを解読せずに）送信するように、アプリケーション・ソフトウェアに命令するステップ、
少なくとも理解できる形のコンテンツキーを検索するためにトランスポートキーによって安全な環境の中の第１のデータの少なくとも一部を解読するステップ、
安全な環境によって、デジタル的に署名された第１及び第２のデータの認証を検証するステップ、
認証ステップが肯定の結果（即ち、署名された第２のデータが真正である場合）を提供する場合には、少なくとも、透かしを入れるメタデータを透かしを入れるユニットに送信し、そしてデジタル・メディア・コンテンツ、コンテンツキー、及び初期ベクトルを、サンプルキーによって各サンプルを暗号解読するためのデスクランブラーに送信するステップ、
少なくとも前記透かしを入れるメタデータによってそれをデジタル的にマークするために、各暗号解読されたサンプルを透かしを入れるユニットに送信するステップ、
レンダリング装置により再生されることを考慮して処理されたサンプルを第２のインタフェースを介して安全な環境から出力するステップ。
【００１６】
本発明はまた、上述の方法に従ってデジタル・メディア・コンテンツに透かしを入れるシステムにも関する。このシステムは、各暗号化サンプル及びその割り当てられたメタデータが第１の入力インタフェースを介して入力されるアプリケーション・ソフトウェアを実行するための演算ユニットを備える。メディアコンテンツは少なくともサンプルを含む。本発明によれば、システムはまた、第２のインタフェースを介してアプリケーション・ソフトウェアと通信することが可能な安全な環境を備える。この安全な環境は、以下の構成要素から成る。
１つのトランスポートキー又は前記トランスポートキーを検索するための少なくとも１つの秘密キーを格納するための安全なメモリ、
トランスポートキーによって前記第１のデータを解読するための暗号ユニット、
署名された第２のデータを認証するための認証ユニット、
暗号ユニットの中の暗号プロセスにおいて入力データとして使われる一対の暗号データによって各サンプルを暗号解読するためのデスクランブラーであって、この暗号データは、第１のデータに含まれるコンテンツキー及び第２のデータに含まれる初期ベクトルを含むデスクランブラー、
第１のデータに含まれる透かしを入れるメタデータで、各サンプルをデジタル的にマークするための透かしを入れるユニット。
【００１７】
また、そして更に本発明によれば、アプリケーション・ソフトウェアは、処理のためにメタデータを安全な環境に送信する前に、デジタル・メディア・コンテンツからメタデータを抽出するように構成される。あるいは、メタデータは、プレイリスト／メディア提示説明から抽出することもできる。その結果、メタデータ自体は、それからコンテンツデータとは別にダウンロードすることができる。第２のインタフェースは、レンダリング装置により再生されることを考慮して安全な環境から暗号解読されたサンプルを出力するために更に使われる。
【００１８】
従って、各サンプルは、条件付きアクセス・システム・プロバイダによって制御できる信用できる安全な環境の中で暗号解読されて、それから透かしを入れることが可能である。実際、本発明によって、透かしを入れるプロセスは、アプリケーション・ソフトウェアにより提供された暗号解読されたサンプルに埋め込まれた透かしを変えることを考慮して、バイパスすることができないか、又は悪意のある人によって、例えば透かしを入れるメタデータを不当に変更することによって変えることができない安全なプロセスである。前記第１のデータの暗号化によって、コンテンツキーは透かしを入れるメタデータに結び付けられ、そして第１及び第２のデータを含むシグネチャによって、透かしを入れるメタデータは初期ベクトルに結び付けられる。
【００１９】
他の利点及び実施形態が、以下の詳細な説明に示される。
【００２０】
本発明は、添付図により、より良く理解される。
【図面の簡単な説明】
【００２１】
【図１】本発明において入力データとして処理されたデジタル・メディア・コンテンツの一般的な構造を図式的に示す。
【図２】デジタル・メディア・コンテンツに含まれるサンプルに割り当てられるメタデータに含まれるデータを図式的に示す。
【図３】本発明のシステムの概要を示す。
【発明を実施するための形態】
【００２２】
図１を参照すると、図１は、本発明において入力データとして処理されたデジタル・メディア・コンテンツ１の一実施形態を図式的に示す。デジタル・メディア・コンテンツは、少なくとも１つの暗号化サンプル１５を含み、そしてメディアコンテンツは、複数のサンプルに、好ましくは各サンプルに割り当てられるか又は関連するメタデータ１０に関連がある。一実施形態において、図１に示すように、デジタル・メディア・コンテンツは前記メタデータを含む。
【００２３】
このメディアコンテンツ１は、あらゆる種類のマルチメディアコンテンツ、例えば音声及び／又はビデオコンテンツ、或いは静止画像及び／又はテキストデータから成るコンテンツ、或いは更にこの種の情報（データ）の混合したものにも関連することがあり得る。好ましくは、デジタル・メディア・コンテンツは、マルチメディアコンテンツのストリームに関連する。このコンテンツが大きいコンテンツであり得るので、それは、本発明においてコンテンツのサンプルであると定義されるパケットに（又はコンテンツの部分又はピースに）分割される。いくつかの特定のケースにおいて、メディアコンテンツは、１つのサンプルだけを含むことができる。しかしながら、ほとんど、メディアコンテンツは、図１に示すように、複数のサンプル１５（Ｓ１、Ｓ２、Ｓ３、…Ｓｎ)を含む。
【００２４】
デジタル・メディア・コンテンツ１は単一のストリームから成ることができる（図１に示すように）か、又はそれはそれらの間で同期する複数のストリームから成ることができる。例えば、別のストリームが関連した音声データ又は関連したメタデータを含むことができると共に、これらのストリームのうちの１つは、例えばビデオデータを含むことができる。或いは、第１のストリームは音声／ビデオデータを含むことができて、そして第２のストリーム（第１のストリームと同期した）は関連したメタデータ１０を含むことができる。また、サンプル１５（即ち、エンドユーザー装置により再生されるコンテンツ）を含むストリームは、第１のコンテンツソースにより提供することができる。その一方で、メタデータ１０は、別のソース、即ち、コンテンツソース（例えば、プレイリスト）とは別の第２のソースにより提供することができる。いかなるケースにおいても、メタデータは、関連したサンプルと同期して処理しなければならない。
【００２５】
サンプル１５は、定数のバイトから成る必要はなく、従って全く同じサイズを有する必要はない。各サンプルの関連したサイズを連続して知ることによって、それらの各々を検索することが可能になる。従って、各サンプル１５のサイズは、サイズ情報ＳＺ（図２）により規定されて、好ましい実施形態に従ってこのために使うことができる。しかしながら、サンプルは、別の方法によって、例えば、ヘッダに含むマーカー又は他のデータによってストリームから検索できる。また、すべてのサンプルが同一サイズを有する場合には、クロック情報は同じ目的に使用することもできる。
【００２６】
図１はまた、メタデータＭ１、Ｍ２、Ｍ３、… Ｍｎが、複数の対のデータ（メタデータ１０、サンプル１５）を形成するように、各サンプルＳ１、Ｓ２、Ｓ３、…Ｓｎによって、それぞれ割り当てられる（例えば、関連させられる）ことを示している。メディアコンテンツがサンプル及びメタデータから成る単一のストリームである場合には、各メタデータ１０は、好ましくは、その関連したサンプル１５の直前にコンテンツ・データ・ストリーム１の中に設置される。その結果、各メタデータは最初に処理できる（即ち、そのサンプルの前に）。好ましくは、各メタデータは、それが割り当てられるサンプルに特有である。しかしながら、いくつかの特定のケースで、いくつかのサンプルは同じメタデータを備えることができる。別のケースにおいて、メタデータが、例えば１０又は２０のサンプルごとにサンプルの中で等間隔に挿入することができるように、１つのメタデータ１０は複数のサンプル１５により共有されることができる。
【００２７】
メディアコンテンツ１のサンプル１５は、サンプルキーＫｃ´によって最初に暗号化される。サンプルキーＫｃ´はサンプルのセットごとに（サンプルごとでも）異なることがあり得る。これは、ブラケット間でサンプルの識別子Ｓ１〜Ｓｎを書き込むことによって、そしてＫｃ´インデックスを加えることによって、図１に示される。メタデータが大域的に暗号化されないけれども（更にそれは暗号化されたデータを含むことができる）、本発明で入力データとして処理されるデジタル・メディア・コンテンツ１は、図１及び図３に示すように、［ＣＴ］と示される。
【００２８】
ここで図２を参照すると、図２は、一実施形態に従って、メタデータ１０に含まれる主要なデータ及びこのデータが編成される（分類される）方法を示す。メタデータ１０は、第１のデータ１１、第２のデータ１２、及びデジタル署名１３を含む。この署名は、通常、例えば、第１及び第２のデータに、特に、いわゆる第１のデータ１１の少なくとも若干のデータ（例えば、コンテンツキーＫｃ及び透かしを入れるメタデータＷＭ）に、そしていわゆる第２のデータ１２の少なくとも若干のデータ（例えば、初期ベクトルＩＶ及びサイズ情報ＳＺ）に適用されるハッシュ関数から与えられるダイジェストである。また、署名は、好ましくは、非暗号化データから決定される。即ち、署名は、いわゆる第１のデータ１１に含まれるデータの暗号化の前に計算される。従って、署名も暗号化されて、従って第１のデータ１１の一部であり得る。この署名を提供する機能又はアルゴリズムは秘密に保たれる。その結果、それはアプリケーション・ソフトウェアにとって未知のままである。もちろん、同じ機能又は同じアルゴリズムは、この署名を（発信者側で）生成するために、そしてそれを（受取者側で）認証するために用いられる。デジタル的に署名されたデータは、第１及び第２のデータを囲む領域に割り当てられたインク壷及び羽毛を示す絵文字によって図２に図式的に示される（最大の点線参照）。
【００２９】
南京錠を例示している絵文字で示すように、第１のデータ１１は暗号化データに関連する。この第１のデータは、少なくともコンテンツキーＫｃ及び透かしを入れたデータＷＭを含む。コンテンツキーＫｃは、暗号化サンプルを解読する暗号プロセスの第１の入力として必要とされる大域的なキーである。この暗号プロセスは、特に、サンプルの暗号化（スクランブル）の間にコンテントプロバイダによって（例えば、ヘッドエンドによって、又はその他の遠隔サーバによって）、そして解読の間に、通常ユーザー側で（例えば、ユーザーコンピュータ、セットトップボックスＳＴＢ、又はその他の演算装置によって）用いられる。この暗号プロセスの第２の入力は、更に詳細に後述する初期ベクトルＩＶにより供給される。同じコンテンツキーＫｃは、メディアコンテンツ１において放送されるか又はその他の手段によって、いくつかのエンドユーザー（例えば、加入者）に提供されるすべてのサンプルを暗号化するために使うことができる。しかしながら、そして好ましい実施形態に従って、コンテンツキーＫｃは、いわゆる暗号期間を定めるために、データストリーム１の中で変化する。従って、いくつかのサンプルは１つの暗号期間に含まれて、これらのサンプルは同じコンテンツキーＫｃによって暗号化される。しかし、異なるコンテンツキーＫｃは、連続した暗号期間の間に、特に各暗号期間の間に使われる。
【００３０】
透かしを入れるメタデータＷＭは、主要なデータと、サンプルに透かしを入れるための、好ましくは、メディアコンテンツの各サンプルに透かしを入れるための情報と、を含む。例えば、透かしを入れるメタデータは、透かしとしてサンプルに埋め込まれるデータの少なくとも一部、及び透かしがサンプルの中のどこに、即ちどの位置に埋め込まれなければならないかについて述べる情報を含む。この位置は、例えば、座標によって、又は、透かしを入れるブロックの相対的なオフセットを提供する（サンプルは複数のデータブロックにより形成される）ことによって、定めることができる。
【００３１】
一実施形態において、透かしを入れるメタデータは、共通の予め透かしを入れるデータ、即ち、いくつかの透かしを入れるメタデータにおいて同一であり、そしていくつかのサンプルに透かしを入れるために使われるデータを含むことができる。予め透かしを入れるデータは、マークされるブロックのアドレス及び少なくとも１つの代替値を含む記録の形であり得る。クライアント装置で、特に安全な環境で、各記録は処理され、そして代替値は、安全な環境に関連する（そして後者に格納される）固有識別子の各ビットに従って、又はメタデータに含まれる識別の各ビットに従って選択される（又は選択されない）。
【００３２】
第１のデータ１１は、少なくとも１つのトランスポートキーＫＴによって暗号化される。それは、いわゆる第１のデータに含むすべてのデータが同じキーＫＴによって、又はいくつかの異なるキーによって暗号化されることを意味する。例えば、コンテンツキーＫｃはトランスポートキーＫＴによって暗号化することができて、透かしを入れるデータＷＭは、第１の上述したトランスポートキーＫＴとは別の第２のトランスポートキーＫＴ´によって暗号化できる。
【００３３】
第２のデータ１２は、初期ベクトルＩＶ及び好ましくはサイズ情報ＳＺを含む。初期ベクトルＩＶは、上述の暗号プロセスで第２の入力として使われる。その結果、コンテンツキーＫｃ及び初期ベクトルＩＶは、前記デジタル・メディア・コンテンツ１の各サンプル１５を暗号化／解読するために、一対の固有の暗号データ（Ｋｃ、ＩＶ）を一緒に形成する。従って、初期ベクトルはサンプルにより異なる。一対の暗号データＫｃ、ＩＶが暗号化／解読のために使用するデータを含むとき、この対は、いわゆるサンプルキーＫｃ´を形成する。換言すれば、この一対の固有の暗号データ（Ｋｃ、ＩＶ）は、サンプルキーＫｃ´に等しい。
【００３４】
サンプル１５をスクランブルするために（即ち、暗号化するために）用いられる暗号プロセスは、初期ベクトルを含むいかなる暗号アルゴリズムにも関連できる。従って、このアルゴリズムは、先進暗号化標準（ＡＥＳ）カウンター（ＣＴＲ）モード又は暗号ブロック連鎖（ＣＢＣ）暗号化モード、例えば、ＡＥＳ  ＣＢＣ又はＴＤＥＳ  ＣＢＣに関連できる。これらのモード（他のモードも用いることができる）において、初期ベクトルが、暗号化キーに加えて、補助入力として用いられる。従って、初期ベクトルは、暗号化キーを変えるために使用するパラメータとみなすことができる。通常、この初期ベクトルは、暗号化コンテンツプロセスの第１のステップの前にベース暗号化キーと組み合わせて使用される数値である。初期ベクトルは、しばしば、暗号化されるときに以前のシーケンスと同一である一連のデータが同じ結果を生じるのを防止するために用いられる。このように、初期ベクトルの使用は、放送されるパケット化イベント又はプログラムから生じるコンテンツパケットのようなデータを暗号化することに十分に適している。コンテンツキーＫｃとは逆に、初期ベクトルは秘密のままである必要はない。
【００３５】
有利なことに、透かしを入れるデータＷＭ及び初期ベクトルＩＶは、署名１３によって結び付けられる。また、透かしを入れるデータＷＭ及びコンテンツキーＫｃも署名によって結び付けられる。
【００３６】
図３は、本発明に従ってデジタル・メディア・コンテンツ１に透かしを入れるために使用されるシステム２０の概要を示す。この図は、方法の説明を続けるためにここで主に用いて、そしてそれは、この方法を実施するシステム２０を提示するためにも用いられる。
【００３７】
本発明に従って、デジタル・メディア・コンテンツ１（図１に示す）は、アプリケーション・ソフトウェアＡＰＰによって、第１のインタフェース２１を介して受信される。既に述べたように、デジタル・メディア・コンテンツは、少なくとも１つの暗号化サンプル１５を含み、そしてそれは、好ましくは、各サンプル１５に割り当てられたメタデータ１０に関連がある。従って、メタデータ１０は、メディアコンテンツ１の中に含まれる（図１に示すように）ことができるか、又は別のチャネル、即ち、遠隔サーバのような別のソースを介してアプリケーション・ソフトウェアＡＰＰに提供することができる。メタデータ及びサンプルが２つの異なるチャネルにより提供される場合には、メタデータ及びサンプルは互いに同期しなければならない。同期は、データを発する間に（例えば、ヘッドエンドで）、アプリケーション・ソフトウェアによる受け入れの間に、このアプリケーション・ソフトウェアの中で、又はこのデータを処理する前に安全な環境の中でさえ行なわれることができる。図１に示す実施形態では、それがコンテンツストリーム１のこのデータの配列により提供されると想定すれば、サンプルと関連したメタデータ１０との同期は暗黙である。
【００３８】
また、メタデータ１０の若干のデータ、例えば、いわゆる第２のデータ１２及び特に初期ベクトルＩＶは、メタデータ１０の他のデータとは別に、即ち、異なるチャネルによって、アプリケーション・ソフトウェアＡＰＰによって受け取られることが可能である点にも留意しなければならない。もう一度、この場合、別のチャネルにより提供されるデータは、その他の入力データ（即ち、メタデータ１０及びサンプル１５の他のデータ）と同期して処理しなければならない。簡潔に説明するために、以下の説明において、サンプル１５に関するメタデータが同じパケット１０に含まれると、そしてメタデータ１０及びサンプル１５が図１に示すように、メディアコンテンツ１に配置されるとみなす。
【００３９】
アプリケーション・ソフトウェアＡＰＰは、例えば、ユーザー装置の中で、通常、セットトップボックス又はその他の種類のデコーダのような演算ユニットの中で動作できる。或いは、アプリケーション・ソフトウェアは、例えばメディアパスを介して遠隔でアクセスすることができて、遠隔サーバにより提供することができる。より詳しくは、メディアコンテンツ１は、少なくとも１つの暗号化サンプル１５の形で、この第１のインタフェース２１の入力ポート（図３の左側に示す）によって受け取られる。アプリケーション・ソフトウェアＡＰＰは、第２のインタフェース２２を介して、安全な環境３０（ＳＥ）と通信することが可能である。この安全な環境は、メタデータ１０を処理することを担当している。それゆえに、そして本発明に従って、アプリケーション・ソフトウェアＡＰＰは、いわゆるメタデータ１０に含まれるデータをうまく処理することができない。実際、メタデータ１０が、解読されるために少なくとも秘密キーを必要とする少なくともいくつかの暗号化データ（特に、コンテンツキー及び透かしを入れるメタデータのような機密データ）を含むと想定すれば、そしてメタデータが、製造業者によって、ベンダーによって、又は安全な環境３０のプロバイダによって秘密に保つことができる署名アルゴリズム（又は機能）によって更に少なくとも部分的にデジタル的に署名されると想定すれば、それによって、アプリケーション・ソフトウェアは、メタデータに含まれる機密データへうまくアクセスできない。
【００４０】
デジタル・メディア・コンテンツ１に透かしを入れることは、次のステップにより実行される。
【００４１】
第１のステップは、例えば、メタデータを安全な環境３０に送信する前に、デジタル・メディア・コンテンツ１からメタデータ１０を抽出するためにアプリケーション・ソフトウェアＡＰＰに命令するために関連する。これは、暗号化データストリームの処理の間に、即ち、ストリームに含まれる各データを連続して読み込む間に、メタデータを（例えば、ヘッダ又はあらゆる特定の情報の検出によって）連続して識別することにより行なうことができる。更に、そして好ましい実施形態に従って、第２のインタフェース２２を介して安全な環境に各メタデータ１０の伝送を導くために（受信すると）、前もって、（例えば初期化ステップの間に、）アプリケーション・ソフトウェアのアプリケーション層に特定のコード（プログラミング命令）を注意深く導入した。従って、デジタル・メディア・コンテンツ１からメタデータ１０を抽出して、メタデータを安全な環境３０に伝えるようにアプリケーション・ソフトウェアＡＰＰに命令することを目的にしているステップは、標準アプリケーション・ソフトウェアＡＰＰ（即ち共通ＡＰＰ）の中でアプリケーション層を変更することによって実行できる。
【００４２】
それから、特に明記しない限り、現在処理されているサンプル１５が解読されて、透かしを入れられるまで、次に続くステップは安全な環境３０の中で実行される。このために、安全な環境は、暗号ユニット３３によって第１のデータ１１の少なくとも一部（即ち、コンテンツキーＫｃのような、前記第１のデータ１１の少なくともいくつかのデータ）の解読を実行する。このユニットは、暗号化プロセスの間に使用されたものと同じ暗号アルゴリズム（又は対のアルゴリズム）を使用した。解読のために、暗号ユニット３３は、少なくとも、コンテンツキーＫｃ及び好ましくは暗号化された第１のデータ１１に含まれた透かしを入れるメタデータＷＭを検索するために、トランスポートキーＫＴ、ＫＴ´を使用する。第１のデータが１つのキーだけで（２つのキーの代わりに）暗号化された場合、暗号ユニットは１つだけのいわゆるトランスポートキーＫＴを得ることを必要とする。このために、安全な環境は、トランスポートキーＫＴ、ＫＴ´を安全なメモリ３５から抽出するか、又は前記トランスポートキーＫＴ、ＫＴ´を安全なメモリ３５に格納された秘密キーＫｓから抽出することが可能である。実際に、いわゆるトランスポートキーＫＴ、ＫＴ´は、例えば、最終的なトランスポートキーＫＴ、ＫＴ´が得られるまで連続した暗号動作によって、複数のキーを決定する複数の暗号モジュールによって計算できる。従って、トランスポートキーＫＴ、ＫＴ´は、安全なメモリに格納した秘密キーＫｓから得ることができる。
【００４３】
トランスポートキーＫＴ、ＫＴ´は、安全な環境の製作の間に、又は、例えば、初期化段階の間に実行できるダウンロードプロセスを経るその個人化の間に、安全なメモリ３５に格納できる。
【００４４】
トランスポートキーＫＴ、ＫＴ´によって、少なくとも、コンテンツキーＫｃ及び透かしを入れるメタデータＷＭ（必要であれば）は、理解できる形で検索できる。同じコンテンツキーＫｃが、同じ暗号期間内にいくつかのサンプルの解読プロセスのために使われる場合、好ましくは、システムは、コンテンツキーＫｃをその理解できる形で全暗号期間の間に（一時メモリに）格納し、それによって、サンプルがこの暗号期間の間に解読されるたびに、コンテンツキーＫｃを決定することを回避する。
【００４５】
好ましくは、第１のデータ１１は、図２に示すようにキーメタデータＫｃＭも含む。キーメタデータは、好ましくは、コンテンツキーＫｃを暗号化するために使用されたものと同じトランスポートキーＫＴによって暗号化される。キーメタデータＫｃＭは、コンテンツキーＫｃの利用に関するパラメータに関連できる。例えば、これらのパラメータは、関連したコンテンツキーが、ＡＥＳ  ＣＴＲモードで暗号化されたストリーム（例えば、各サンプル１５）を解読するために用いなければならないことを、デスクランブラーに知らせることができる。一実施形態において、キーメタデータＫｃＭは、特定の暗号アルゴリズム及びチェイニングモード、例えばＡＥＳ  ＣＴＲによるサンプルの解読を実施する情報を含むことができる。チェイニングモードは、安全な環境で（特にデスクランブラー３７で）処理されて、アプリケーション・ソフトウェアＡＰＰにより変更することができない。他の情報、例えばフラグは、以下で示唆されるようにキーメタデータに含ませることができる。キーメタデータＫｃＭが第１のデータ１１の中に存在する場合、透かしを入れるメタデータＷＭの解読が、以下に説明されるようにキーメタデータＫｃＭに含まれるフラグの状態に依存することがあり得るので、キーメタデータＫｃＭは、透かしを入れるメタデータＷＭの解読の前に解読されて、処理される。
【００４６】
それから、次のステップの間に、デジタル的に署名された第１及び第２のデータの認証の検証を続行する。このために、デジタル的に署名されたメタデータは、デジタル署名１３（ＳＩ）と共に、署名されたデータの署名を検証するための秘密の機能／アルゴリズムを備えた認証ユニット３１に導かれる。検証は、認証ユニット３１によって受信された署名されたデータに基づいて、第２の署名を計算することによって、そして第２の署名をオリジナルの署名１３と比較することにより実行される。一致がある場合、メタデータ１０は真正である。即ち、このメタデータは、送信者から受信者への伝送の間に不正操作されず、従って送信者のオリジナルのメタデータと同一である。この結果に関して、認証ユニット３１は、メタデータが真正であるかどうか後者に知らせるために、メッセージ（図３にイエス又はノーに関してＹ／Ｎと示す）を、例えば中央処理ユニット３２に提供できる。
【００４７】
認証ユニット３１が否定のメッセージを提供する場合、好ましくは、システム２０は対策を行なう。例えば、システム２０は、少なくとも１つの暗号期間の間いかなる次の暗号解読プロセスも止めることができる。変形において、システムは、このシステム２０（例えば、固有識別子により識別される）が不正操作されたメタデータを見つけたことをこの実体に知らせるために、暗号化メッセージを、例えば、コンテントプロバイダ又は会費を管理する当局に送ることができる。理解できるメッセージは、例えば、アプリケーション・ソフトウェアに、又はそのホストコンピュータに接続しているレンダリング装置の方へエンドユーザー宛に送ることもできる。
【００４８】
これに反して、認証ステップが肯定の結果を提供する場合、透かしを入れるメタデータＷＭは、透かしを入れるユニット３９に送信される。
【００４９】
それから、デジタル・メディア・コンテンツ１、コンテンツキーＫｃ、及び初期ベクトルＩＶは、サンプルキーＫｃ´によって各暗号化サンプル１５を暗号解読するために、デスクランブラー３７に送信される。暗号化サンプルの解読は、デスクランブラー３７の中で暗号プロセスの入力データとして使用された一対の暗号データ（Ｋｃ、ＩＶ）により実行される。
【００５０】
別の実施形態では、認証ステップが肯定の結果を提供する場合だけ、コンテンツキーＫｃ及び／又は初期ベクトルＩＶのデスクランブラー３７への伝送を実行できる。変形において、デジタル・メディア・コンテンツ１のデスクランブラー３７への伝送はまた、認証ステップの結果に依存することもあり得る。その結果、メディアコンテンツは肯定の結果の場合にだけ送信される。
【００５１】
別の実施形態によれば、暗号ユニット３３により実行される解読ステップは、認証ステップの後に実行することができる。この場合、認証ステップが否定の結果を提供する場合、システム２０は、少なくともコンテンツキーＫｃのデスクランブラー３７の方への伝送を防止することが可能であり得る。
【００５２】
好ましい実施形態によれば、各サンプルは、サイズ情報ＳＺのおかげで（通常データストリームから）検索できる。従って、サイズ情報はまた、図３に示すようにデスクランブラーに入力される。
【００５３】
一旦サンプル１５が解読されると、暗号解読されたサンプル１５´は、それから、暗号解読されたサンプル１５´の中に埋め込む少なくとも１つの透かし（マーカー）を含む透かしを入れるメタデータＷＭによって、それをデジタル的にマークするために、透かしを入れるユニット３９に入力される。好ましくは、この透かし（又は少なくともサンプルの中のその位置）は、サンプルによって異なる。
【００５４】
好ましい実施形態によれば、透かしを入れるユニット３９には、補完的な透かしに、特に、例えばこの安全な環境又は派生値の固有識別子（ＩＤ）を含ませることによって、安全な環境３０に特有である固有の透かし（固有のスタンプのような）に関連する第１の付加的な入力ＷＩＤが供給される。この識別透かしＷＩＤによって、サンプル１５を処理した安全な環境３０を識別することができて、従って、この安全な環境がインストールされるユーザー装置（例えば、ＳＴＢ）を識別することが可能である。図３に示すように、識別透かしＷＩＤは、例えば、安全な環境の中の安全なメモリ３５に格納できる。
【００５５】
変形において、この識別透かしＷＩＤは、安全な環境３０に割り当てられた固有識別子ＩＤを定めるビットと共に予め透かしを入れるデータを処理することによって得ることができる。予め透かしを入れるデータは、少なくとも１つの共通透かしＷ、及び表記Ｒｉ＝｛＃Ａｄｒｉ；Ｖ１／Ｖ２｝によって表すことができる少なくとも１つの記録を含むことができる。各記録は、マークされなければならないブロックの位置又はアドレス（＃Ａｄｒ）、及び代替値、即ち、Ｖ１又はＶ２であり得る双状態値（Ｖ１／Ｖ２）を含む。例えば、安全な環境の識別子としてＩＤ＝０１０１１を有することによって、そして５つの記録Ｒ１〜Ｒ５（即ち、ＩＤのビットごとに１つの記録）を有することによって、識別透かしＷＩＤは、サンプルを位置＃Ａｄｒ１においてＶ１で、位置＃Ａｄｒ２においてＶ２で、位置＃Ａｄｒ３においてＶ１で、位置＃Ａｄｒ４においてＶ２で、そして位置＃Ａｄｒ５においてＶ２でマークすることによって得ることができる。
【００５６】
別の実施形態によれば、暗号解読されたサンプル１５´に透かしを入れることは、少なくとも１つのフラグＦの状態に依存できる。その結果、透かしを入れるユニット３９は、透かしを入れたサンプル１５"又はいかなる透かしもない暗号解読されたサンプル１５´を出力できる。実際、システム２０は、透かしを入れなければならないか、又は透かしを入れてはならないとしている情報を（フラグＦを介して）提供することによって、透かしを入れるユニット３９を制御することが可能である。従って、他のものが透かし無しのままであるのに対して、同じメディアコンテンツのいくつかの暗号解読されたサンプル１５´は、透かしを入れることができる。或いは、暗号解読されたサンプル１５´の全ては、透かし無しのままであり得る。このように、この種の情報は、全データストリーム１に透かしを入れなければならないか又は透かしを入れてはならないことを透かしを入れるユニットに知らせるために使うことができる。この場合、第２のフラグはそのために用いることもできる。フラグＦは、透かしを施すべきか否か定めるために、２つの状態を提供する単一ビット、１又は０を含むことができる。安全上の理由から、このフラグは複数ビットを含むことができる。フラグＦは、好ましくは、第１のデータ１１の中のメタデータ１０に含まれる。
【００５７】
好ましい実施形態によれば、２つのフラグＦがある。第１のフラグＦ１は、各暗号解読されたサンプル１５´に透かしを入れることを（即ち個々の方法で）制御するために用いる。従って、第１のフラグＦ１は、透かしを入れるメタデータＷＭに含まれて、このフラグは、その状態（０／１）に応じて、関連したスクランブルされたサンプル１５´に透かしを入れなければならないかどうか知るために最初に処理される。
【００５８】
第２のフラグＦ２は、例えば、全メディアコンテンツ１に透かしを入れなければならないかどうか知るために、複数の暗号解読されたサンプル１５´に透かしを入れることを制御するために用いられる。従って、透かしを入れる作動がコンテンツキーＫｃに関するデータと関連するように、第２のフラグＦ２は、暗号ユニット３３により処理されたキーメタデータＫｃＭに含まれる。また、第２のフラグＦ２の状態は、第１のフラグＦ１の考察及び認証ステップの達成を制御する。実際、第２のフラグＦ２が、例えば、メディア・コンテンツ・ストリームのすべての暗号解読されたサンプル１５´にとって透かしを入れることが必要でないことを示す場合には、認証ステップはバイパスされ（新規な命令が第２のフラグＦ２によって与えられるまで）、そして、好ましくは、透かしを入れるメタデータＷＭの解読は実行されない（それが不必要であるので）。従って、第２のフラグＦ２は、サンプルのストリームに透かしを入れなければならないかどうか、表示を提供する。この第２のフラグＦ２がキーメタデータＫｃＭに含まれると想定すれば、それによって、キーメタデータＫｃＭは解読されて、透かしを入れるメタデータＷＭの解読の前に読み出される。第２のフラグＦ２がサンプルに透かしを入れなければならないことを示す場合には、第１のフラグＦ１の状態は従属状態として考慮される。このように、第２のフラグＦ２が、ストリームに透かしを入れなければならないことを示すにもかかわらず、第１のフラグＦ１が、透かしを入れることが特定のサンプルには要求されないことを時々示す場合には、このストリームのいくつかの個々のサンプルは透かし無しのままであり得る。
【００５９】
フラグＦ１、Ｆ２は、好ましくは、中央処理ユニット３２により処理される。その結果、このＣＰＵは適切なステップを行うことを決めることができる。
【００６０】
この種のフラグによって、特に第１のフラグＦ１のために、メタデータ１０の中に偽の透かしを入れるメタデータを導入することが可能になる。透かしを入れることが必要でないと述べるフラグＦが提供される場合、この種の偽の透かしを入れるメタデータは考慮されない。実際、メタデータ１０が偽の透かしを入れるメタデータの真を含むにもかかわらず、メタデータ１０の構造、特に透かしを入れるメタデータＷＭの構造は保たれる。従って、悪意のある人は、しかるべく、フラグによって知らされるシステム２０に反して真と偽の透かしを入れるメタデータを識別することができない。
【００６１】
最後に、システム２０は、透かしを入れるユニット３９の出力で提供されるサンプル１５´、１５"をアプリケーション・ソフトウェアＡＰＰに、又はレンダリングのための安全なメディア経路に送信する。
【００６２】
一実施形態によれば、デジタル・メディア・コンテンツ１は、ＩＳＯベースのメディア・ファイル・フォーマット（ＩＳＯ  ＢＭＦＦ）に準拠するストリーム・メディア・コンテンツである。それはまた、ＨＴＴＰベースのメディア・ストリーミング通信プロトコル、例えばＨｔｔｐ  Ｌｉｖｅ  Ｓｔｒｅａｍｉｎｇ（ＨＬＳ）に準拠することもできる。
【００６３】
更なる実施形態によれば、安全な環境３０は、安全な環境の中で処理ユニット３２（例えば、ＣＰＵ）に実行されるファームウェア・ファーム（即ち、マイクロコード又はプログラムコード）により制御される。従って、一旦安全な環境がメタデータ１０を受信すると、それは独立した方法で動作することが可能である。
【００６４】
実施形態が何であれ、ファームウェアは、アプリケーション・ソフトウェアＡＰＰによってダウンロード可能であるか、又はアップグレード可能であり得る。しかしながら、ファームウェアがアプリケーション・ソフトウェアを介して安全な環境にインストールされる場合には、例えば不揮発性メモリ３２´において、内蔵中央処理ユニット３２（安全な環境の中に設置されている）によって動作することを考慮して、ファームウェアは、内蔵ＣＰＵによって暗号化されて署名された形でダウンロードされる。従って、ダウンロードされたファームウェアが安全な環境の中で関連した秘密の認証プロセスによってうまく認証された場合だけ、ダウンロードされたファームウェアはインストールされる。また、ファームウェア・ファームは、例えばアプリケーション・ソフトウェアＡＰＰの中で、安全な環境の外側に格納することもできる。この場合、ファームウェアは、暗号化された形に格納されて、安全な環境だけにより解読される。
【００６５】
既に述べたように、本発明はまた、上記の方法を実施するためのシステムに関連する。このために、本発明はまた、図１を参照して説明したように、暗号化された（より詳細には、少なくとも部分的に暗号化された）形で供給されたデジタル・メディア・コンテンツ１に透かしを入れるためのシステム２０に関連する。
【００６６】
添付図に、特に図３に示すように、システム２０は、デジタル・メディア・コンテンツ１が、少なくとも１つの暗号化サンプル１５（そのサイズは、例えばサイズ情報ＳＺにより定義される）の形で（第１のインタフェース２１を介して）入力されるアプリケーションＡＰＰを走らせるための演算ユニット２５を備える。デジタル・メディア・コンテンツは、方法に関して既に説明したのと同じデータを含み、そしてメディアコンテンツはメタデータ１０にも関連がある。便宜上、そして方法に関して既に述べたように、サンプル１５に関するメタデータ１０が同じパケットに含まれて、メタデータ１０及びサンプル１５が、図１に示したようにメディアコンテンツ１に配置されるとみなす。
【００６７】
本発明によれば、システムは、第２のインタフェース２２を介してアプリケーション・ソフトウェアＡＰＰと通信する安全な環境３０を更に備える。
【００６８】
安全な環境は、以下の構成要素を次々に備える。
少なくとも１つのトランスポートキーＫＴ、ＫＴ´を格納するための安全なメモリ３５であって、前記トランスポートキーは、上記の方法に関連して説明したように、安全なメモリ３５に格納された秘密キーＫｓから導き出すことができるメモリ３５、
トランスポートキーＫＴ、ＫＴ´によっていわゆる第１のデータ１１（図２参照）を解読するための暗号ユニット３３、
署名された第１及び第２のデータ１１、１２を認証するための認証ユニット３１、
暗号ユニット３３の中の暗号プロセスにおいて入力データとして使用される一対の暗号データＫｃ、ＩＶに対応するサンプルキーＫｃ´によって各暗号化サンプル１５（例えば、サイズ情報ＳＺによって検索される）を暗号解読するためのデスクランブラー３７、
第１のデータ１１に含まれる透かしを入れるメタデータＷＭによって各暗号解読されたサンプル１５´をデジタル的にマークするための透かしを入れるユニット３９。
【００６９】
加えて、システム２０に含まれるアプリケーション・ソフトウェアＡＰＰは、処理のために抽出されたメタデータ１０を安全な環境３０に送信する前に、デジタル・メディア・コンテンツ１から、又は別のソース（例えば、プレイリスト）からメタデータ１０を抽出するようにも構成される。第２のインタフェース２２は、レンダリング装置により再生されることを考慮して、暗号解読されたサンプル１５´、１５"（即ち、透かしのない暗号解読されたサンプル１５´又は透かしを入れた暗号解読されたサンプル１５"）を安全な環境３０から出力するために更に使われる。
【００７０】
第２のインタフェース２２は、インタフェースソフトウェア構成要素、例えばアプリケーション・プログラミング・インタフェース（ＡＰＩ）として使うことを目的とするプロトコルに関連して、２つのプログラム（又はソフトウェア、ファームウェアなど）が互いに通信することを可能にすることができる。
【００７１】
好ましくは、安全なメモリ３５は、サンプルに透かしを入れる間に固有識別マークを加えるために、（ユニット３５からの要求に応じて、又は暗号ユニット３３の命令によって）マーキングユニット３５に送信される固有識別透かしＷＩＤを更に含む。従って、透かしを入れたサンプル１５"は、少なくとも２つの異なった透かし、即ち、透かしを入れるメタデータＷＭにより提供された透かし及び安全な環境３０に特有の識別透かしＷＩＤを含むことができる（同じことは上記の方法に適用できる）。
【００７２】
好ましい実施形態によれば、安全な環境３０は、中央処理ユニット３２、及びファームウェア・ファームが安全な環境のすべての構成要素（回路、論理ユニット、メモリなど）を制御するために実行される不揮発性メモリ３２´を備える。このように、安全な環境は安全なマスター処理ユニットとして作用する。
【００７３】
変形において、安全な環境３０は、いかなる中央処理装置（例えば、その構成要素を制御するためのファームウェアを動かすＣＰＵ３２）も欠けていることがあり得るが、即ち、アプリケーション・ソフトウェアＡＰＰがいかなる機密データにもアクセスするいかなる可能性なしでも、安全な処理従属ユニットとしてアプリケーション・ソフトウェアＡＰＰにより制御することができる。従って、機密データ（例えば、解読されたデータ）は、常に安全な環境だけによって処理される。
【００７４】
好ましくは、安全な環境３０はモノリシック・チップセットでできている。また、この安全な環境又はこのモノリシック・チップセットは、スマートカードによって収容できる。
【００７５】
別の実施形態では、デスクランブラー３７及び透かしを入れるユニット３９は、後者に物理的に接続したままである一方で、安全な実施形態から物理的に切り離すことができる。
【００７６】
本発明によって、サンプル１５に透かしを入れることは、透かしを入れるメタデータＷＭを、コンテンツ保護権（即ち、コンテンツキーＫｃ及びもしあれば関連したキーメタデータＫｃＭ）及びコンテンツ（サンプル）を解読するために用いられた初期ベクトルＩＶに、暗号によって結び付けることにより実施される。安全な環境だけが、デジタル・メディア・コンテンツを解読して、マークするために、コンテンツキーＫｃ及び透かしを入れるメタデータＷＭを検索することが可能である。アプリケーション・ソフトウェアＡＰＰがこのデータ（ＩＶ、ＷＭ）にアクセスする場合であっても、ＷＭプロセスがどのように機能するかを理解／変更するためにそれらを利用することができない。
【図１】
0006297137.tif 000002
【図２】
0006297137.tif 000003
【図３】
0006297137.tif 000004