(57)【要約】  デジタルコンテンツ（１１０）を復号化できる第１コンテンツ保護システム（１００）を含むデジタルコンテンツ（１１０）を保護する技術であって、該デジタルコンテンツ（１１０）は、インクルージョンリスト（１１８）、第２コンテンツ保護システム（３０３）を含むアプリケーションに対して第１コンテンツ保護システム（１１０）の機能性へのアクセスを提供するリンク可能なライブラリ（３０８）、および第２コンテンツ保護システム（３０３）が該インクルージョンリスト（１１８）にあるか否かを判断するために、第２コンテンツ保護システム（３０３）を検証する手段を含む。
2009500766.tif 000002
【特許請求の範囲】
【請求項１】
デジタルコンテンツを保護するコンピューティングシステムであって、
インクルージョンリストを含む前記デジタルコンテンツを復号化可能な第１コンテンツ保護システムと、
第２コンテンツ保護システムを含むアプリケーションに対して、前記第１コンテンツ保護システムの機能性へのアクセスを提供するリンク可能なライブラリと、
前記第２コンテンツ保護システムが前記インクルージョンリストにあるか否かを判断するために、前記第２コンテンツ保護システムを評価する手段と
を備えることを特徴とするシステム。
【請求項２】
前記コンテンツ保護システムと前記リンク可能なライブラリとを安全に結合させる手段をさらに備えることを特徴とする請求項１に記載のシステム。
【請求項３】
前記第１コンテンツ保護システムと前記第２コンテンツ保護システムとの間で、共有手段を介して共有された初期ベクトルを計算する手段をさらに備えることを特徴とする請求項１に記載のシステム。
【請求項４】
一時暗号化鍵となる暗号ハッシュ手段を介してソルト値を前記初期ベクトルと組み合わせて、前記デジタルコンテンツのチャンクに基づいて前記ソルト値を計算する手段をさらに備えることを特徴とする請求項３に記載のシステム。
【請求項５】
前記一時暗号化鍵を使用して前記チャンクを一時暗号化する手段をさらに備えることを特徴とする請求項４に記載のシステム。
【請求項６】
前記第２コンテンツ保護システムに、前記チャンクの一時暗号化と、前記初期ベクトルと前記ソルト値とを提供する手段をさらに備えることを特徴とする請求項５に記載のシステム。
【請求項７】
デジタルコンテンツを複写する方法であって、
前記デジタルコンテンツを、第１コンテンツ保護システムを介して復号化し、復号化デジタルコンテンツを生成する段階と、
一時暗号化鍵を生成し、前記一時暗号化鍵を使用して前記復号化デジタルコンテンツの一時暗号化を行う段階と、
前記一時暗号化鍵および前記一時暗号化を前記第２コンテンツ保護システムに提供する段階と
を備えることを特徴とする方法。
【請求項８】
前記デジタルコンテンツが前記第２コンテンツ保護システムに複写できるか否かを判断するために前記デジタルコンテンツのインクルージョンリストをチェックする段階をさらに備えることを特徴とする請求項７に記載の方法。
【請求項９】
前記暗号化鍵は、初期ベクトルと、前記デジタルコンテンツのチャンクに基づいて計算されたソルト値とを暗号ハッシュすることにより生成されることを特徴とする請求項７に記載の方法。
【請求項１０】
デジタルコンテンツを保護する方法であって、
前記方法は第１コンテンツ保護システムを備え、前記第１コンテンツシステムは、
初期ベクトルを生成する段階と、
前記デジタルコンテンツのチャンクを復号化する段階と、
前記チャンクに基づいてソルト値を生成する段階と、
前記初期ベクトルと前記ソルト値とを暗号ハッシュして一時鍵を生成する段階と、
前記一時鍵を使用して前記チャンクを暗号化することにより、前記チャンクの一時暗号化を行う段階と
を備えることを特徴とする方法。
【請求項１１】
前記デジタルコンテンツは、インクルージョンリストを含むことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記初期ベクトルは、乱数であることを特徴とする請求項１０に記載の方法。
【請求項１３】
前記ソルト値は、前記チャンクを使用して計算された数字であることを特徴とする請求項１０に記載の方法。
【請求項１４】
前記一時暗号化は、ストリーム暗号を使用して行われることを特徴とする請求項１０に記載の方法。
【請求項１５】
前記方法は、第２コンテンツ保護システムをさらに備え、前記第２コンテンツ保護システムは、
前記第１コンテンツ保護システムから暗号化初期ベクトルを受信する段階と、
前記初期ベクトルを復号化し、記憶する段階と、
前記第１コンテンツ保護システムから前記一時暗号化を受信する段階と、
前記第１コンテンツ保護システムからソルト値を受信する段階と、
前記初期ベクトルと前記ソルト値とを暗号ハッシュして、前記一時鍵の複製を生成する段階と、
前記一時鍵の複製を使用して一時暗号化を復号化する段階と
を備えることを特徴とする方法。
【請求項１６】
前記第２コンテンツ保護システムは、前記インクルージョンリストにあることを特徴とする請求項１５に記載の方法。
【請求項１７】
前記初期ベクトルは、前記第２コンテンツ保護システムにより提供された公開鍵を使用して、前記第１コンテンツ保護システムにより暗号化されることを特徴とする請求項１５に記載の方法。
【請求項１８】
前記暗号化初期ベクトルは、前記第２コンテンツ保護システムにより提供された非公開鍵を使用して、前記第２コンテンツ保護システムにより復号化されることを特徴とする請求項１５に記載の方法。
【請求項１９】
前記初期ベクトルは、安全な方法で記憶されることを特徴とする請求項１５に記載の方法。
【請求項２０】
前記方法は、コンピュータ可読媒体において具現化されることを特徴とする請求項１５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本記述は、一般にデジタルコンテンツの保護に関し、より詳細には、異なるコンテンツ保護システムにより使用される暗号化フォーマット間のデジタルコンテンツの複写、およびシステム間および／またはソフトウェアコンポーネント間でデジタルコンテンツを転送している間のデジタルコンテンツの一時暗号化の提供に関する。
【背景技術】
【０００２】
本出願は、概して家庭用電子機器とのデジタルコンテンツの使用に関し、より詳細には、各種コンテンツ保護機構間の互換性の作成および複写に関する。
【０００３】
電子システムおよびコンピューティングシステムは、調整されたデジタルコンテンツを再生あるいは、処理するように設計される可能性がある。該デジタルコンテンツは、使用される保護機構に従う限定された方式でコンテンツへのアクセスを許可する第三者が制御および所有することができる。アクセス制御の例として、所定回数あるいは所与の期間、情報のアクセスを許可することが挙げられる。共通のデジタルコンテンツへのアクセスを制御する方法は、暗号鍵を使用して、およびコンテンツへのアクセス権を特定するライセンスをインクルードすることによってのみアクセスされるようにコンテンツを暗号化することである。コンテンツを使用するには、システムがデジタルコンテンツにアクセスするためのライセンスと一致しなければいけない。アクセス制御は、一般的に、コンテンツのオーサリング時あるいはコンテンツの生成時に、暗号化や後の情報への不正アクセスを制限できるアクセス権などのセキュリティ機能を組み込むことにより確立される。しかし、一般的には各種コンテンツ保護機構は、相互運用性が高くない。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
読者が基本的な理解を得られるように、本開示の簡略化した概要を以下に説明する。本概要は、本発明の広範囲にわたる概説ではなく、本発明の主要な／クリティカルな要素を特定するものでもなく、本発明の範囲を描写するものでもない。本概要の唯一の目的は、本発明で開示されるいくつかの概念を、後述するより詳細な説明への前置きとして、簡略化した形式で提示することである。
【課題を解決するための手段】
【０００５】
本実施例は、コンテンツ保護システム間のデジタルコンテンツの複写をサポートする技術、およびコンテンツ保護システム間および／またはソフトウェアコンポーネント間でコンテンツを転送している間に、デジタルコンテンツを一時的に暗号化する技術を提供する。この技術は、デジタルコンテンツに関連付けられるインクルージョンリストを提供して、どの形式のコンテンツ保護システムに対して、そのコンテンツが複写できるかを指定する。
【０００６】
添付図面と関連して考察した後述の発明の詳細な説明を参照することにより、この技術をより深く理解できるように、多くの付随する機能もより容易に理解できるであろう。
【０００７】
本発明の説明は、添付図面に照らして示した以下の発明の詳細な説明から、より深く理解できるだろう。同一の参照番号は、添付図面内の同一の要素を示すように使用される。
【０００８】
本出願は、２００５年７月１１日に出願された米国仮特許出願番号第６０／６９８，５２５号（代理人整理番号３１３８５９．０１）の利益を主張するものである。
【発明を実施するための最良の形態】
【０００９】
添付図面と関連して後述される発明の詳細な説明は、本実施例を説明することを目的とするものであって、本例が構成され、あるいは本実施例が使用される唯一の形式を示すものではない。ここで、本実施例の機能と、本実施例を構成し、操作する段階のシーケンスを説明する。同一あるいは同等の機能およびシーケンスは、異なる実施例により達成される。
【００１０】
本発明は、本明細書内では家庭用電化製品（「ＣＥ」）システム内で実装されるものとして記述および説明されるが、記述されるシステムは、一例として説明するものであって、これに限定されない。本発明は、デジタルコンテンツをサポートできる任意のデバイスあるいはシステムで実施される可能性がある。ＣＥデバイスとしては、ポケットＰＣ、セットトップボックス、ポータブルメディアセンタ、携帯電話、ミュージックプレイヤー、ＰＣ，ソフトウェアを構成したメディアプレイヤーなどが挙げられる。当技術分野の技術者が理解するように、本発明はデジタルコンテンツアクセスおよびコンテンツ保護を提供するさまざまな異なる形式のシステムにおける応用に適している。コンテンツ保護システムの一例は、デジタル著作権管理（「ＤＲＭ」）システムであり、以下の説明で使用される。他のコンテンツ保護システムが、本発明の実施に使用されてもよい。
【００１１】
本実施例は、コンテンツ保護スキーム間で複写される保護コンテンツを許可する明示的および堅牢な手段を提供できる。本実施例は、デジタルコンテンツおよびコンテンツ保護システムのプロバイダは、例えばＷｉｎｄｏｗｓ(登録商標)  Ｍｅｄｉａ  ＤＲＭ（「ＷＭＤＲＭ」）などのコンテンツ保護フォーマットからＤｉｇｉｔａｌ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ（「ＤＴＣＰ」）などの他のフォーマットへの複写を行うときに、個々のコンテンツをＲｉｖｅｓｔ  Ｃｉｐｈｅｒ  ４（「ＲＣ４」）などの中間コンテンツ保護フォーマットに複写するためにダウンストリームのアプリケーションを許可することができる。
【００１２】
図１は、インクルージョンリストを有し、デジタルコンテンツ１００の複写を許可するコンテンツ保護システムの一例を示す図である。複写により、ＤＲＭシステムなどの第１コンテンツ保護システムと互換性のあるデジタルコンテンツは、他のＤＲＭシステムなどの第２コンテンツ保護システムと互換性のあるフォーマットに変換できる。インクルージョンリストは、コンテンツオーナーがどの変換が許容できるかを特定する方法を提供する。その変換は、一般的にはＰＣ１０３で実行される。ＤＲＭは、マルチメディアコンテンツあるいは他のデジタルコンテンツなどのデジタルコンテンツ１１０に対する権利を定義し、組み込み、そして実施するシステムを提供する。ＤＲＭシステム１００は、サービスプロバイダ１０７からインターネット１０５等の保護されていないチャンネルを経由して、あるいはＣＤ、ＤＶＤ、コンピュータファイルまたは同種のものを介してコンテンツ１１０の安全な配布を提供する。システム１００は、使用規則を実施し、コンテンツ１１０が不正に使用されるのを保護する。使用規則には、有効日付、ユーザがオーディオあるいはビデオファイルを再生できる回数、ユーザがオーディオあるいはビデオファイルをコピーできる回数などが挙げられる。デジタル著作権管理システムの一例が、１９９９年４月１２日出願の米国特許出願番号第０９／２９０，３６３号、および２００２年６月２８日出願の米国特許出願番号第１０／１８５，５２７号、第１０／１８５，２７８号および第１０／１８５，５１１号に示されている。これら全てを参照として完全に本明細書内に組み込む。
【００１３】
パーソナルコンピュータ１０３は、インターネット１０５に接続して使用され、サービスプロバイダ１０７から家庭用電子機器１０１にコンテンツを転送することができる。ＰＣ１０３は、第１ＤＲＭシステムと互換性のある暗号化コンテンツ１０９を、例えばＣＥ機器１０１上にある第２ＤＲＭシステムと互換性のある暗号化コンテンツ１１５に複写することができる。メディアファイル１０９を複写するために、インクルージョンリスト１０８を有するライセンスは、一般的にはサービスプロバイダ１０７からメディアファイル１０９と共にＰＣ１０３に転送される。
【００１４】
インクルージョンリストに含まれるコンテンツ保護フォーマットに対するアクセス権およびアクセス制限は、一般的にはコンテンツオーナーにより設定される遵守規則に基づいて管理され、例えば、どのタイプの機器および／またはどのタイプコンテンツ保護システムに添付するメディアファイル１０９を複写できるかを設定する。一例において、インクルージョンリストには、暗号化コンテンツ１０９を複写してもよいとされる技術を単一に識別する１６バイト数にできるグローバル単一識別子（ＧＵＩＤ）を含んでもよい。他の例においては、インクルージョンリストには、「Ｗｉｎｄｏｗｓ(登録商標)  Ｍｅｄｉａ  ＤＲＭ」のストリングなどの文字列を含んでもよく、この文字列は、許容される保護技術を単一に識別する。このように、インクルージョンリスト１０８を有するライセンスを提供することにより、システムと機器との間の操作性を向上させることができる。
【００１５】
ＰＣ１０３は、一般的にはアプリケーションプログラム１１７と共に動作するオペレーティングシステム１１６を使用して機能する。アプリケーションプログラム１１７は、一般的にインクルージョンリスト１１８を検査した後にデジタルコンテンツ１０９の複写を行って、ターゲット保護システムがデジタルコンテンツ１０９に対して許可されるか否かを判断する。
【００１６】
パス１０２および１０４経由でＰＣ１０３およびＣＥ機器１０１へ情報を転送するプロトコルおよび機構は、イーサネット（Ｅｔｈｅｒｎｅｔ）(登録商標)ネットワーク、ユニバーサルシリアルバス（「ＵＳＢ」）、赤外線データ協会（「ＩｒＤＡ」）、ブルートゥース（ＢｌｕｅＴｏｏｔｈ）などの従来のプロトコルおよび機構であってもよい。代替の実施形態において、家庭用電子機器は、パーソナルコンピュータ１０３を使用せずにサービスプロバイダに結合させてもよい。パーソナルコンピュータおよびＣＥ機器は、当技術分野で周知の適切なオペレーティングシステムをいくつでも利用して動作してもよい。本明細書で記述した機能を実装する命令は、コンピュータ実行可能なソフトウェア、ハードウェア（例えば、ＡＳＩＣに焼き付けられた命令）あるいはその組み合わせとして存在してもよい。
【００１７】
使用中、ＤＲＭ１００は、暗号化コンテンツ１０９を提供することによりコンテンツ１１０を保護する。コンテンツ１０９を暗号化してから以降は、データ自身が保護される。従って、コンテンツ１０９は、制限なく移動すること、達成すること、コピーすること、あるいは配布することができる。よって、暗号化コンテンツを隠くしたり、あるいはそのコンテンツをアクセスできないようにする必要がなく、あるいはそのようなデジタルコンテンツをシステムからシステムへ伝送するときに、適所で特別な保護を行う必要がない。例えば、そのようなコンテンツをコピーしてある友人にそのコンテンツを渡すときに、もし許可がなければその友人がそのコンテンツを使用することはできない。暗号化コンテンツを使用できるようにするためには、ユーザはライセンスを取得しなければならない。この例では、インクルージョンリスト１０８を有するライセンスである。インクルージョンリスト１０８を有するこのライセンスは、暗号化コンテンツ１１０を保護する手段である。一例においては、ライセンスは、単一のマシーン１０１に対して付与してもよい。よってコピーされた場合でも、他のマシーン上で機能することはない。しかし、コンテンツオーナーあるいはサービスプロバイダ１０７によりライセンスインクルージョンリスト内で特定すれば、インクルージョンリストと共にデジタルコンテンツを、異なる保護スキームで動作する他のマシーンに提供してもよい。他の例においては、許可されたユーザアカウント経由でログインしたとき、ユーザがネットワーク上の任意の機器からコンテンツにアクセスできるように、ライセンスはネットワーク上の特定のユーザアカウントに対して付与してもよい。
【００１８】
インクルージョンリスト１０８を有する各ライセンスは、コンテンツの使用方法および使用状況を定義するアクセス権およびアクセス制限が含まれる。例えば、ミュージックファイルライセンスは、「再生権」のアクセス権を含んでもよいが、「ＣＤを焼き付ける権利」のアクセス権は含まない。そのライセンスにより、２００５年１０月１日から２００５年１１月１日までの期間であれば、この権利が有効になる。また、デジタルコンテンツ選択に関して複数のライセンス取得が可能になる。これらのライセンスのうちの１つが必要な権利であると認められれば、ユーザはコンテンツデータにアクセスし、使用することができることになる。アクセスとは、ユーザがデジタルコンテンツを使用したり、閲覧したり、再生したり、あるいはそれ以外に使用できるように、暗号学的にコンテンツを復号化すること、パスワードを介してコンテンツにアクセスすることなどを意味する。一実施形態として、インクルージョンを有するライセンスをＸＭＬフォーマットまたは同様のフォーマットで提供してもよい。
【００１９】
上述したように、インクルージョンリストにより、デジタルコンテンツを様々な異なるコンテンツ保護システムに提供できる。一例において、ＰＣ１０３上で動作するＤＲＭシステムは、インクルージョンリスト１０８を有するライセンスを、ＣＥ機器１０１から入手した機器証明書１１１と併せて使用して、機器１０１上で動作するＤＲＭシステムで使用するためにコンテンツが複写できるか否かを判断する。閲覧あるいは再生するデジタルコンテンツは、一般的にミュージックファイル、ピクチャファイル、ビデオファイル、ドキュメントなどを含む。ＣＥ機器１０１上で動作するようなコンテンツ保護システムは、機器証明書を使用してシステム自身を識別する。一例において、機器証明書は、拡張マークアップ言語（「ＸＭＬ」）データ構造あるいは同種の構造であってもよく、この証明書は、システム、機能をサポートしたリストおよびアクセス制御を記述し、一般的にシステム公開鍵を含む。機器証明書１１１は、家庭用電子機器１０１上で動作するコンテンツ保護システムと一緒にパッケージされた１１３である、機器証明書テンプレート１１２から生成される。機器証明書テンプレートは、機器証明書の作成を助ける特別のパターン、ガイドなどと考えてよい。
【００２０】
機器証明書１１１は、検証機構であり、家庭用電子機器１０１のＤＲＭシステムがこの機構を使用して、機器１０１のＤＲＭシステムが保護されたコンテンツ１１５にアクセスするのに適するかを検証することによりセキュリティを提供するのを助ける。機器証明書は、保護されたデジタルコンテンツのホルダが信頼し、依存できる信用証明書であって、コンテンツへのアクセスを行うプロセスの開始を助ける信用証明書である。そのような自動コンテンツ保護検証は、システム１００内で使用される。システム１００は、保護されたデジタルコンテンツの安全な再生あるいはその使用のために設計され、システム１００内で、デジタル署名した証明書１１１等をデジタルコンテンツにアクセスする権利の検証手段として使用する。保護されたデジタルコンテンツ１１５には、ミュージック、ビデオ、テキスト、あるいは従来のライセンス承諾等による管理に従う任意のコンテンツが挙げられる。
【００２１】
機器証明書１１１の例としては、機器ＩＤ、機器性能の要求、不可欠な情報、公開鍵情報などを含むＸＭＬオブジェクトが考えられ、そのようなデータを単一のデジタル署名した機器証明書内に提示することができる。機器証明書１１１は、ＤＲＭプロバイダ（図示せず）が署名してもよく、このＤＲＭプロバイダが、機器証明書１１１がそれを伴うＤＲＭシステムの正確なリフレクションであることを証明するものとなる。また、権限を与えられた第三者（図示せず）が署名してもよい。この第三者は、ＤＲＭプロバイダがそのＤＲＭシステムを作成し、証明するのを許可されることを証明する。機器証明書および機器証明書テンプレートの一例が、２００４年１０月１８日出願の米国特許出願番号第１０／１８，２０４号に記載されている。参照として、全体を本明細書内に組み込む。
【００２２】
図２は、デジタルコンテンツの複写あるいは暗号化の変更のプロセスにおける主要な２つの動作を示すフロー図である。複写を行う方法としては、最初にデジタルコンテンツを暗号化し、コンテンツの暗号化２０１（例えば、ＷＭＤＲＭを保護コンテンツに適用する暗号化）を解除し、その後、コンテンツに対して新規の暗号化２０２（例えば、ＲＣ４暗号化）を追加する。
【００２３】
図３は、複写プロセスにおいて、データが安全にアプリケーション３０１を通過するのを示すブロック図である。コンテンツプロバイダは、インクルージョンリストを提供することにより、コンテンツを規制して、コンテンツの公開を制限することができる。インクルージョンリストを提供することにより、第１ＤＲＭシステムから第２ＤＲＭシステムへの複写を可能にすることができる。コンテンツ保護システムの一例において、インクルージョンリストを有するデジタルコンテンツに対して複写を行うことができ、コンテンツ保護システムの代替例において、インクルージョンリストを有さないデジタルコンテンツに対して複写を行うことができる。
【００２４】
第１ＤＲＭシステム３０２は、アプリケーション３０１等のアプリケーションにリンクできる、リンク可能なライブラリ３０８を含む。ライブラリ３０９は、アプリケーション３０１に対して第１ＤＲＭシステム３０２へのアクセスを提供する。一例において、ライブラリ３０９は「．ｌｉｂ」ファイルなどとして提供してもよい。他の例において、ライブラリは、「．ｄｌｌ」（ダイナミックリンクライブラリ）等として提供してもよい。ライブラリ３０９を他の形態で提供して、アプリケーション３０１に対して第１ＤＲＭシステム３０２の機能性へのアクセスを提供することもできる。
【００２５】
証明書３０５は、アプリケーション３０１と共に含まれ、プロバイダ・ルートまたは認証局鍵３００により署名される。一例において、秘密鍵３０６は、一般的に例えば、ＲＳＡ秘密鍵を含み、システムが許可あるいはインストールされるときに証明書３０５と一緒に提供される。
【００２６】
ランタイム時、証明書３０５は、一般的には第１ＤＲＭシステム３０２が保持するデジタルコンテンツへのアクセスの要求に応答して第１ＤＲＭシステム３０２に渡される。第１ＤＲＭシステム３０２は、乱数あるいは初期ベクトル（「ＩＶ」）３０８を生成する。ＩＶ３０８は、一般的には安全な方法でアプリケーション３０１に提供され、記憶される。一例において、ＩＶ３０８は安全なチャンネルを使用してシステム間で渡される。他の例において、ＩＶ３０８は、アプリケーション３０１に提供される前に、証明書３０５からの公開鍵などの鍵を使用して暗号化される。ＩＶ３０８は、アプリケーションの秘密鍵で復号化され、記憶される。
【００２７】
この時点において、デジタルコンテンツは、一般的に第１ＤＲＭシステム３０２により、小さなチャンクやサンプル内で復号化される。デジタルコンテンツの元の暗号化は解除され、第１ＤＲＭシステム３０２は、チャンクがアプリケーション３０１に提供されるときに、保護のためにそのチャンクに新規の暗号化を適用する。アプリケーション３０１に送信される前に、データを復号化して、チャンクを再暗号化するプロセスは、一般的に一時暗号化と呼ばれる複写の形式であり、このプロセスは中間攻撃３０７に対する脆弱性を最小限に抑える傾向がある。
【００２８】
各デジタルコンテンツのサンプルまたはチャンクは、一般に各コンテンツサンプルに一意となる、一時暗号化鍵を使用して暗号化される。一例において、この一時暗号化鍵は、各デジタルコンテンツのサンプルあるいはチャンクごとに一意のソルト値３０４を生成し、この一意のソルト値３０４をＩＶ値３０８と共にハッシュすることで形成される。チャンクは、一時暗号化鍵を使用して暗号化され、ソルト値３０４と一緒にアプリケーション３０１に提供される。コンテンツチャンクがアプリケーション３０１に到達した時点で、アプリケーション３０１は記憶されたＩＶ値３０８およびソルト値３０４から一時暗号化鍵を作成し、その後、コンテンツチャンクから一時暗号化が解除される。この時点で、アプリケーション３０１は、一般的に暗号化を含む、第２ＤＲＭシステム３０３により入手した適切な保護を適用できる。デジタルコンテンツのサンプルあるいはチャンクは第２ＤＲＭシステムにより保護された後、システム３０３が許可する任意の方法で、例えば、該サンプルまたはチャンクがデジタルオーディオファイルからのものであれば、それを再生することで、利用することができる。
【００２９】
図４は、複写プロセスを使用してデジタルコンテンツを保護する詳細なプロセスの一例を示すブロック図である。デジタルコンテンツ（ＤＲＭペイロードとも言う）４１２の一例として、ムービーとして提供できるようなデジタルビデオデータがある。そのようなデジタルコンテンツは、一般的には図４に示すように、そのコンテンツのコンテンツプロバイダにより暗号化される。デジタルコンテンツの他の例としては、デジタルオーディオデータ、デジタル画像、あるいはドキュメントなどを含む他のマルチメディアまたはデジタルコンテンツが挙げられる。暗号化の他に、そのデジタルコンテンツには、一般的にある種のアクセス権情報が含まれる。一例として、これらアクセス権には、どの他のタイプのコンテンツ保護機構が信頼できて、デジタルコンテンツにアクセスするおよび／またはデジタルコンテンツを複写するのに利用できるかを示すインクルージョンリストが含まれる。
【００３０】
図４は、ＤＲＭシステムＢ４６０による複写のためにデジタルコンテンツ４１２を処理するための複数の要素およびステップを含む、ＤＲＭシステムＡ４５０の例を示す。例示のＤＲＭシステムＢは、アプリケーション間、ＤＲＭシステム間などで配布できる複数の要素とステップを含む。一例においては、ＤＲＭシステムＢは、ＤＲＭシステムを有するアプリケーションを含む。ＤＲＭシステムＡ４５０とＤＲＭシステムＢ４６０は対話して、コンテンツプロバイダが提供した暗号化を解除し、両方のＤＲＭシステムに認証された一時暗号化をしてコンテンツを再暗号化し、一時暗号化したコンテンツをＤＲＭシステムＢ４６０に安全に転送する。ここで、コンテンツは復号化され、最後に、ＤＲＭシステムＢ４６０により使用されるどのようなフォーマットにおいても再暗号化される。
【００３１】
例示の複写プロセスの始めは、システムＢが複写プロセスを開始する。そのような開始の一例においては、デジタルムービーファイルの再生が試みられる。一般的に、証明書等が、システムＢからシステムＡ４５０へ送信される。システムＡがその証明書を検査し、システムＢが信頼できるか否か、およびシステムＢがデジタルコンテンツのインクルージョンリストにあるか否かを判断する。システムＢが信頼できるもので、インクルージョンリストにある場合、システムＡは、複写プロセスを続行することになる。また、システムＢが信頼できないか、あるいはシステムＢがデジタルコンテンツのインクルージョンリストにないときは、このプロセスは続行されない。
【００３２】
プロセスを続行するときに、システムＡはシステムＢから暗号鍵４０１を取得する。一例において、暗号鍵は公開鍵であり、システムＢから取得した証明書から取得する。システムＡは、初期ベクトル（「ＩＶ」）４０３を生成し、公開鍵４０１を使用してＩＶ４０３を暗号化して４０２、暗号化ＩＶ４０４を得る。一例において、ＩＶ４０３はハッシュして別の暗号鍵を生成する際に使用するのに適する乱数である。
【００３３】
システムＡは、一般的に安全なチャンネルを使用して暗号化ＩＶ４０４をシステムＢに提供する。システムＢは、秘密鍵４０５を使用して暗号化ＩＶ４０４を復号化し４０６、元のＩＶ値４０３を得る。システムＢは、後に使用するために、難読化などを使用するような安全な方法でＩＶ４０３を記憶する。この時点で、システムＡとシステムＢとの間の初期化が完了し、一時複写が開始される。
【００３４】
システムＡが、デジタルコンテンツ４１２を読み出し、復号化４１４を開始する。一例において、システムＡが鍵４１５を使用してデジタルコンテンツ４１２を復号化する（４１４）。一例において、デジタルコンテンツ４１２に対する鍵４１５の元の暗号化を行うために、コンテンツプロバイダにより使用される公開鍵に対応する秘密鍵を使用して鍵４１５を復号化することで鍵４１５にアクセスする。他の例において、システムＡは、小さなチャンクで、一般的には１つのチャンクにつき数十バイト、数百バイト、あるいは数千バイトでデジタルコンテンツ４１２を復号化する（４１４）。他の例において、システムＡは、プロセスを続行する前にデジタルコンテンツ４１２の全てを復号化する（４１４）。復号化（４１４）された各チャンクは、暗号化されていないデジタルコンテンツ（別名ペイロード）４１０になる。
【００３５】
次に、システムＡはｓａｌｔ４０８を生成する。一例において、ｓａｌｔ４０８は、ハッシュして別の暗号鍵を生成する際に使用するのに適するデジタルコンテンツチャンク４１０毎に生成された乱数である。一例においては、そのような暗号鍵はＲＣ４鍵である。システムＡは、ソルト値４０８およびＩＶ４０３をハッシュして（４１９）、暗号鍵を得る。他の例において、ハッシュ４１９は、セキュアハッシュアルゴリズム（「ＳＨＡ」）によるハッシュであってもよい。次に、システムＡは、暗号化されているコンテンツチャンクに対応するＩＶ４０３およびｓａｌｔ４０８のハッシュ４１９を介して生成されたＲＣ４鍵を使用して、コンテンツチャンク４１０を暗号化し（４２０）、一時暗号化コンテンツチャンク４２１を得る。一例において、ＲＣ４ストリーム暗号を暗号化４２０のために使用して、ＲＣ４暗号化コンテンツチャンク（別名ＲＣ４ペイロード）４２１を得る。
【００３６】
システムＡは、一般的に安全なチャンネルを使用して、ｓａｌｔ４０８および対応する一時暗号化コンテンツチャンク４２１をシステムＢに提供する。次いで、システムＢは、前もって記憶されたＩＶ４０３およびちょうど受信したばかりのｓａｌｔ４０８をハッシュして（４０９）、一時復号化鍵を生成し、ちょうど受信したばかりの一時暗号化コンテンツチャンク４２１を復号化し（４１１）、暗号化していないデジタルコンテンツ４１０を得る。一例において、復号化４１１および暗号化していないデジタルコンテンツ４１０は、コードおよび／またはデータの難読化を使用するなどの安全な方法で、システムＢ内で実行および維持される。他の例において、ハッシュ４０９は、セキュアハッシュアルゴリズム（「ＳＨＡ」）によるハッシュであってもよい。
【００３７】
全複写プロセスの指示に従って、システムＢはここからコンテンツチャンク４１０の複写を継続する。一例において、オーディオデータの場合のように、コンテンツチャンク４１０は、さらに暗号化され、メディアプレイヤアプリケーションなどを介してレンダリングするためにコーデックに提供される。上述のプロセスがデジタルコンテンツ４１０の各チャンク毎に、一般的にデジタルコンテンツ４１２全体が複写されるまで続行される。
【００３８】
図５は、本出願に記載のシステムおよび方法を実装することができる例示的なコンピューティング環境を示す図である。例示的なコンピューティング環境５００は、コンピューティングシステムの一例であって、本出願に記載の例をこの特定のコンピューティング環境に限定するものではない。
【００３９】
コンピューティング環境５００は、多数の他の汎用あるいは特殊目的コンピューティングシステム構成で実装可能である。周知のコンピューティングシステムの例として、パーソナルコンピュータ、ハンドヘルドデバイスあるいはラップトップデバイス、マイクロプロセッサ系システム、マルチプロセッサシステム、セットトップボックス、プログラム可能な家庭用電化製品、ゲーム機、家庭用電化製品、携帯電話、ＰＤＡなどが挙げられるが、これらに限定されない。
【００４０】
コンピュータ５００は、コンピューティングデバイス５０１の形態で、汎用コンピューティングシステムを含む。コンピューティングデバイス５０１のコンポーネントは、１つあるいは複数のプロセッサ（ＣＰＵ，ＧＰＵ、マイクロプロセッサなど）５０７、システムメモリ５０９、および種々のシステムコンポーネントに結合するシステムバス５０８を含むことができる。プロセッサ５０７は、種々のコンピュータ実行可能な命令を処理して、コンピューティングデバイス５０１の動作を制御し、他の電子機器およびコンピューティングデバイス（図示せず）と通信する。システムバス５０８とは、任意の数の複数の形式のバス構造を示す。これには、メモリバスまたはメモリコントローラ、周辺バス、加速グラフィックスポート（ＡＧＰ）、および様々なバスアーキテクチャのうち任意のものを使用するプロセッサあるいはローカルバスが挙げられる。
【００４１】
システムメモリ５０９は、ランダムアクセスメモリ（ＲＡＭ）等の揮発性メモリおよび／またはリードオンリメモリ（ＲＯＭ）などの不揮発性メモリの形で、コンピュータ可読媒体を含む。基本入出力システム（ＢＩＯＳ）は、ＲＯＭ内に格納される。ＲＡＭは、一般的に、１つまたは複数のプロセッサ５０７により即座にアクセス可能な、および／または該プロセッサ上で現在動作中であるデータモジュールおよび／またはプログラムモジュールを含む。
【００４２】
マスストレージデバイス５０４は、コンピューティングデバイス５０１に結合してもよいし、またはバスに結合することで該コンピューティングデバイスに組み込んでもよい。そのようなマスストレージデバイス５０４は、取り外し可能で不揮発性の磁気ディスク（例えば、「フロッピー（登録商標）ディスク」）５０５に対して読み出しおよび書き込みを行う磁気ディスクドライブ、あるいはＣＤ  ＲＯＭなどの取り外し可能で不揮発性の光ディスク５０６に対して読み出しおよび／または書き込みを行う光ディスクドライブを含む。コンピュータ可読媒体５０５、５０６は、一般的にフロッピー（登録商標）ディスク、ＣＤ、ポータブルメモリスティックなどに提供されるコンピュータ可読命令、データ構造、プログラムモジュールなどを具現化するものである。
【００４３】
任意の数のプログラムモジュールをハードディスク５１０、マスストレージデバイス５０４、ＲＯＭおよび／またはＲＡＭ５０９に格納することができる。例として、オペレーティングシステム、１つまたは複数のアプリケーションプログラム、他のプログラムモジュールおよびプログラムデータがある。オペレーティングシステム、アプリケーションプログラム、他のプログラムモジュールおよびプログラムデータ（またはそれらのいくつかの組み合わせ）のそれぞれは、本明細書内で記述したシステムおよび方法の実施形態を含むことができる。
【００４４】
ディスプレイデバイス５０２は、ビデオアダプタ５１１等のインタフェースを介してシステムバス５０８に接続できる。ユーザは、キーボード、ポインティングデバイス、ジョイスティック、ゲームパッド、シリアルポート等の任意の数の異なる入力デバイス５０３を介してコンピューティングデバイス７０２とのインタフェースをとることができる。これらの入力デバイスあるいは他の入力デバイスは、システムバス５０８に結合された入出力インタフェース５１２を介してプロセッサ５０７に接続されるが、パラレルポート、ゲームポート、および／またはユニバーサルシリアルバス（ＵＳＢ）などの他のインタフェースおよびバス構造で接続してもよい。
【００４５】
コンピューティングデバイス５００は、１つまたは複数のローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）などを介して１つまたは複数のリモートコンピュータに接続したネットワーク化環境で動作できる。コンピューティングデバイス５０１は、ネットワークアダプタ５１３を介して、あるいはモデム、ＤＳＬ、ＩＳＤＮ等のインタフェースによりネットワーク５１４に接続される。
【００４６】
当分野の技術者は、プログラム命令を格納するのに利用するストレージデバイスはネットワークを介して配布できることを当然理解できるだろう。例えば、リモートコンピュータは、適応インストルメンテーションの実行時間管理分析ソフトウェアなどのツールを格納してもよい。ローカルコンピュータあるいはターミナルコンピュータは、リモートコンピュータにアクセスして、プログラムを実行するソフトウェアの一部あるいは全てをダウンロードすることができる。あるいは、ローカルコンピュータは、必要に応じてソフトウェアの断片をダウンロード処理してもよいし、あるいはローカルターミナルにある、およびリモートコンピュータ（あるいはコンピュータネットワーク）にあるいくつかのソフトウェア命令を実行することにより配布してもよい。当分野の技術者は、当分野で周知の従来技術を利用して、ソフトウェア命令の全てあるいは一部を、ＤＳＰ、プログラム可能な論理アレイなどの専用回線により実行できることも当然理解できるであろう。
【図面の簡単な説明】
【００４７】
【図１】インクルージョンリストを有し、デジタルコンテンツの複写を許可するコンテンツ保護システムの一例を示す図である。
【図２】デジタルコンテンツの複写あるいは暗号化の変更のプロセスにおける主要な２つの動作を示すフロー図である。
【図３】複写プロセスにおいて、データが安全にアプリケーションを通過するのを示すブロック図である。
【図４】複写プロセスを使用してデジタルコンテンツを保護する詳細なプロセスの一例を示すブロック図である。
【図５】本出願に記載のシステムおよび方法を示し実装することができる例示的なコンピューティング環境を示す図である。
【図１】
2009500766.tif 000003
【図２】
2009500766.tif 000004
【図３】
2009500766.tif 000005
【図４】
2009500766.tif 000006
【図５】
2009500766.tif 000007
【国際調査報告】
2009500766.tif 000008
2009500766.tif 000009