(57)【要約】      （修正有）【課題】暗号化されたコンテンツを記憶させてアクセスするシステムおよび方法を記述する。【解決手段】少なくとも１つの実施形態は、暗号化されたコンテンツを記憶させてアクセスし、安全なハードウェアデバイスを具備しているシステムを含む。安全なハードウェアデバイスは、メモリに結合され、信頼されたモジュールを備え、離れた位置からのコンテンツを受け取るように構成され、コンテンツを暗号化し、コンテンツを解読するためのキーを発生させるように構成されている。システムは、ロジックをさらに具備しており、ロジックは、メモリ内に記憶され、暗号化されたコンテンツにアクセスするように構成され、複数の解読モジュールおよび少なくとも１つのデコーダを備えている。【選択図】図１
2008259163.tif 000002
【特許請求の範囲】
【請求項１】
暗号化されたコンテンツを記憶させてアクセスする方法において、
ハードウェアデバイスにおいて、離れた位置からのコンテンツを受け取ることと、
コンテンツを暗号化し、コンテンツを解読するためのキーを発生させることと、
キーを暗号化し、暗号化されたキーを受け取る複数の解読モジュールのうちの少なくとも１つの解読モジュールを選択することと、
複数の解読モジュールのうちの選択された１つ以上の解読モジュールに暗号化されたキーを送り、暗号化されたキーは解読されることと、
キーを使用して、コンテンツを解読することとを含み、
解読モジュールは、メモリ中に記憶されているソフトウェアアプリケーションの一部分である方法。
【請求項２】
キーを受け取る複数の解読モジュールのうちの１つの解読モジュールを選択することは、ランダムな順番で実行される請求項１記載の方法。
【請求項３】
キーを受け取る複数の解読モジュールのうちの１つの解読モジュールを選択することは、周期的に実行される請求項２記載の方法。
【請求項４】
キーを受け取る複数の解読モジュールのうちの１つの解読モジュールを選択することは、非周期的に実行される請求項２記載の方法。
【請求項５】
選択された解読モジュールにキーを送ることは、残りの解読モジュールに偽キーを送ることをさらに含む請求項２記載の方法。
【請求項６】
複数の解読モジュールのうちの少なくとも１つの解読モジュールを選択することは、
予め定められた権限レベルと整合する、対応した権限レベルを持つ解読モジュールを最初に識別することと、
識別された解読モジュールの中から選択することとを含む請求項１記載の方法。
【請求項７】
暗号化されたコンテンツを記憶させてアクセスする方法において、
複数の解読モジュールのうちの少なくとも１つの解読モジュールによって、ハードウェアデバイスから暗号化されたキーを受け取ることと、
ハードウェアデバイスから暗号化されたコンテンツを受け取ることと、
セッションキーを使用して、暗号化されたキーを解読することと、
解読されたキーを使用して、暗号化されたコンテンツを解読することと、
コンテンツをデコードすることとを含み、
キーは、ハードウェアデバイスに記憶されていた暗号化されたコンテンツを解読するために使用される方法。
【請求項８】
複数の解読モジュールのうちの１つの解読モジュールにおいて、ハードウェアデバイスからのキー受け取ることは、ランダム式で実行される請求項７記載の方法。
【請求項９】
選択された解読モジュールにおいてキーを受け取ることは、残りの解読モジュールにおいて偽キーを受け取ることをさらに含む請求項８記載の方法。
【請求項１０】
暗号化されたコンテンツを解読することは、マルチメディアコンテンツのビデオ部分およびオーディオ部分を別々に解読することを含む請求項７記載の方法。
【請求項１１】
暗号化されたコンテンツを記憶させてアクセスするシステムにおいて、
メモリに結合され、信頼されたモジュールを備え、離れた位置からのコンテンツを受け取るように構成され、コンテンツを暗号化し、コンテンツを解読するためのキーを発生させるように構成されている安全なハードウェアデバイスと、
メモリ内に記憶され、暗号化されたコンテンツにアクセスするように構成され、複数の解読モジュールおよび少なくとも１つのデコーダを備えているロジックとを具備するシステム。
【請求項１２】
ロジックは、安全なハードウェアデバイスから暗号化されたコンテンツを受け取り、解読モジュールのうちの１つの解読モジュールにデータをルーティングするように動作するコンテンツルータをさらに備える請求項１１記載のシステム。
【請求項１３】
安全なハードウェアデバイスは、離れた位置からのマルチメディアコンテンツを受け取る受信機モジュールをさらに備え、マルチメディアコンテンツは暗号化される請求項１１記載のシステム。
【請求項１４】
安全なハードウェアデバイスは、コンテンツを解読するためのキーを受け取る複数の解読モジュールのうちの１つの解読モジュールを選択するようにさらに構成されている請求項１１記載のシステム。
【請求項１５】
メモリ中に記憶されているロジックは、暗号化されたコンテンツのビデオ部分およびオーディオ部分を解読する別々の組の解読モジュールをさらに備える請求項１１記載のシステム。
【請求項１６】
信頼されたモジュールは、メモリ中に記憶されているロジックへの認証されていないアクセスを監視するように構成されている請求項１１記載のシステム。
【請求項１７】
少なくとも１つのデコーダは、証明出力保護プロトコル（ＣＯＰＰ）、広帯域デジタルコンテンツ保護（ＨＤＣＰ）、アナログコンテンツ保護（ＡＣＰ）、およびコピー世代管理システム（ＣＧＭＳ）のうちの少なくとも１つのものに準拠しているデバイスのみに、デコードされたコンテンツを送る請求項１１記載のシステム。
【請求項１８】
ハードウェアデバイスは、暗号化されたコンテンツのビデオ部分およびオーディオ部分を解読するための別々のキーを送る請求項１５記載のシステム。
【請求項１９】
ハードウェアデバイスは、残りの解読モジュールに偽解読キーを送るように構成されている請求項１４記載のシステム。
【請求項２０】
ハードウェアデバイスは、解読キーを受け取る複数の解読モジュールのうちの１つの解読モジュールをランダムな順番で選択するようにさらに構成されている請求項１４記載のシステム。
【請求項２１】
ハードウェアデバイスは、解読キーを受け取る複数の解読モジュールのうちの１つの解読モジュールを周期的ベースで選択するようにさらに構成されている請求項１４記載のシステム。
【請求項２２】
ハードウェアデバイスは、解読キーを受け取る複数の解読モジュールのうちの１つの解読モジュールを非周期的ベースで選択するようにさらに構成されている請求項１４記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般的に、データの暗号化に関する。さらに詳細に述べると、ハードウェアとソフトウェアとの組み合わせによって、暗号化されたコンテンツを記憶させてアクセスするシステムに関する。
【背景】
【０００２】
年々、消費者の間でデジタルビデオコンテンツの人気が高まっている。ブロードキャスト、ケーブル、オンデマンド方式、固定媒体、およびマルチメディアコンテンツの他の利用可能なソースを通して消費者にとって利用可能なオーディオコンテンツおよびビデオコンテンツの量が増加しており、消費者が容易にアクセスおよびプログラミングできるコンテンツの量が増加している。さらに、簡単に利用可能である多くのデバイス（例えば、ＰＣ、ＤＶＤレコーダ）およびサービスによって、消費者は、オンデマンドビデオおよびオーディオコンテンツを記録、タイムシフト、または表示させることができる。さらに、ビデオサービスを配信するＩＰＴＶ（インターネットプロトコルテレビ）のような、ダウンロード可能なコンテンツの形態でインターネットおよび他のデータサービスを通して利用可能になっているビデオコンテンツの量も増加している。
【０００３】
一般的に、ビデオコンテンツは、例えば、ＭＰＥＧ−１、ＭＰＥＧ−２、またはＤＶ（デジタルビデオ）のような任意の数の一般的なフォーマットで記憶される。同様に、オーディオコンテンツは、例えば、ＭＰ３、ＷＡＶ、またはＭＰＥＧオーディオのような任意の数の一般的なデジタルフォーマットで記憶される。非常に数多くのデジタルフォーマットでマルチメディアコンテンツを利用可能にすると、可搬性の度合いが高いことからマルチメディアコンテンツの配布がより容易になる。残念なことに、技術によってマルチメディアコンテンツの配布が容易になることが続くと、マルチメディアコンテンツの配信、オーディオ／ビジュアルの作品の著作権侵害もまた年々急増する。例えば、インターネットを通して、マルチメディアコンテンツへのアクセスおよびマルチメディアコンテンツのコピーを容易にできることから、ビデオおよびオーディオの著作権侵害は、継続的な問題であり続ける。
【０００４】
マルチメディアコンテンツの認証されていないコピーおよび配布に対応するために、オーディオ／ビジュアル作品の発行元および製作者は、デジタルコンテンツへのアクセスを制御する技術に頼っている。用語、デジタル権利マネンジメント（ＤＲＭ）は、一般的に、マルチメディアコンテンツに対する制限されたアクセスを実現するために使用される技術を表している。このようなＤＲＭ技術は、暗号化を用いて、コンテンツへのアクセスを制御するマルチメディアプレイヤーソフトウェアを含む多くのさまざまな技術に基づいている。しかしながら、ソフトウェアアプリケーションを使用して、暗号化されたコンテンツへのアクセスを制御する１つの明らかな欠点は、多くのケースにおいて、このソフトウェアがアクセスされてリバースエンジニアリングされることである。一般的に、パーソナルコンピュータがオープンな環境で動作すると仮定すると、マルチメディアコンテンツを保護することが課題である。いくつかの例では、保護されたエリアのメモリから保護されていないエリアのメモリにソフトウェアコードを移動することができ、保護されていないエリアのメモリにおいて、コードは詳細に分析され、解析される。さらに、オープンメモリ中に存在するマルチメディアソフトウェアアプリケーションを解析し、暗号化キーが記憶されている正確なメモリの位置を決定することも可能である。適切なツールにより、これらの暗号化キーを保持しているメモリのブロックをダンプして、保護されたコンテンツへのアクセスを獲得することが可能である。したがって、暗号化されたマルチメディアコンテンツを保護するソフトウェアのアプローチには、依然として、保護されていないコンテンツと同一の明らかな欠点がある。
【概要】
【０００５】
簡単に記述すると、数ある中の１つの実施形態は、暗号化されたコンテンツを記憶させてアクセスし、安全なハードウェアデバイスを具備するシステムを含む。安全なハードウェアデバイスは、メモリに結合され、信頼されたモジュールを備え、離れた位置からのコンテンツを受け取るように構成されており、コンテンツを暗号化し、コンテンツを解読するためのキーを発生させるように構成されている。システムはロジックをさらに具備している。ロジックは、メモリ内に記憶され、暗号化されたコンテンツにアクセスするように構成され、複数の解読モジュールおよび少なくとも１つのデコーダを備えている。
【０００６】
別の実施形態は、ハードウェアデバイスにおいて、離れた位置からのコンテンツを受け取ることと、コンテンツを暗号化し、コンテンツを解読するためのキーを発生させることと、キーを暗号化し、暗号化されたキーを受け取る複数の解読モジュールのうちの少なくとも１つの解読モジュールを選択することと、複数の解読モジュールのうちの１つの解読モジュールに暗号化されたキーを送り、暗号化されたキーは解読されることと、キーを使用して、コンテンツを解読することとを含み、解読モジュールは、メモリ中に記憶されているソフトウェアアプリケーションの一部分である、暗号化されたコンテンツを配信する方法を含む。
【０００７】
さらに別の実施形態は、複数の解読モジュールのうちの少なくとも１つの解読モジュールによって、ハードウェアデバイスから暗号化されたキーを受け取ることと、ハードウェアデバイスから暗号化されたコンテンツを受け取ることと、セッションキーを使用して、暗号化されたキーを解読することと、解読されたキーを使用して、暗号化されたコンテンツを解読することと、コンテンツをデコードすることとを含み、キーは、ハードウェアデバイスに記憶されていた暗号化されたコンテンツを解読するために使用される、暗号化されたコンテンツを配信する方法を含む。
【０００８】
本開示の他のシステム、方法、機能および効果は、図面および詳細な説明を考察すると、当業者に明らかであり、または明らかになるだろう。すべてのこのような付加的なシステム、方法、機能、および効果は、本開示の範囲内である詳細な説明内に含まれ、そして、添付した特許請求の範囲によって保護されることを意図している。
【０００９】
暗号化されたコンテンツを記憶させて配信するシステムおよび方法の多くの観点は、図面を参照すると、よりよく理解することができる。必ずしも図面中のコンポーネントはスケーリングされていないが、代わりに、ここで開示した原理を明瞭に図示する際に強調がなされている。さらに、図面における同一の参照符号は、いくつかの図面にわたって対応している部分を示している。
【詳細な説明】
【００１０】
本開示のさまざまな観点を要約して、図面で図示しているような開示の説明をこれから詳細に参照する。これらの図面に関連して本開示を記述するが、ここで開示する１つ以上の実施形態に開示を限定する意図はない。反対に、添付した特許請求の範囲によって規定されているような本開示の精神および範囲内に含まれているすべての代替実施形態、修正および均等物を対象とすることを意図している。
【００１１】
暗号化されたマルチメディアコンテンツを記憶させてアクセスするシステムおよび方法の実施形態を開示する。背景において説明したように、ソフトウェアを使用する従来のアプローチで見出された１つの明らかな欠点は、コンピュータが動作するのはオープンな環境であることから、保護されているエリアのメモリから保護されていないエリアのメモリにソフトウェアコードを移動することができ、保護されていないエリアのメモリにおいて、コードは詳細に分析され、解析されることである。多くの場合、一般的に、コンピュータメモリ自体へのアクセスが制限されていないことから、コンピュータメモリ中に存在するマルチメディアソフトウェアアプリケーションを解析すると、暗号化キーが記憶されている正確なメモリの位置を決定することがさらに可能である。適切なツールにより、これらの暗号化キーを保持しているメモリのブロックをダンプして、保護されたコンテンツにアクセスすることが可能である。
【００１２】
ここで開示したある実施形態のシステムでは、ハードウェアとソフトウェアとの間でマルチメディアコンテンツの記憶、解読、およびデコードを分けることによって、これらの認識されている欠点に取り組んでいる。ハードウェアとソフトウェアとの組み合わせを使用して、ソフトウェアの改ざんの可能性を無くすことによってソフトウェアコードを安全に実行する。いくつかの実施形態では、ハードウェア駆動型プログラムを実行するためのシステムは、オープンシステムのメモリに結合されている安全なハードウェアデバイスを具備しており、この安全なハードウェアウェアデバイスは、暗号化されたマルチメディアコンテンツを記憶させて提供するように構成されている。システムは、システムメモリ内に記憶されているロジックをさらに具備しており、このロジックは、暗号化されたマルチメディアコンテンツにアクセスしてデコードするように構成されている。ここで説明する実施形態の場合、ハードウェアデバイスには、オープンなアーキテクチャ環境中にあるメモリを読んだり変更したりする能力があることを正しく認識すべきである。また、ロジックはオープンメモリ中に存在しているので潜在的にアクセス可能であるが、これに対して、マルチメディアコンテンツおよび解読キーはハードウェア中に安全に記憶されていることをさらに正しく認識すべきである。
【００１３】
図１は、暗号化されたコンテンツを配信するシステムの実施形態のトップレベルのフロー図を図示している。システムは、保護されたコンテンツを記憶させるように構成されている安全なハードウェアデバイス１２０を具備している。一般的に、保護されたコンテンツは、コンテンツに対して条件付きアクセスを提供するために暗号化されているコンテンツに関連する。暗号化プロセスおよび解読プロセスは、データを保護するアルゴリズムによって使用されるキーに依存する。いくつかの例において、暗号化プロセスおよび解読プロセスに対して異なるキーが使用されてもよい。データの実際の暗号化は多くの方法で行われ、そして、このデータの実際の暗号化は本開示の範囲外であることに留意すべきである。
【００１４】
いくつかの実施形態では、暗号化されたコンテンツは、例えば、インターネット１５０のようなネットワーク環境１５０を通してハードウェアデバイス１２０によって受け取られてもよい。このような実施形態の場合、パーソナルコンピュータまたはサーバのようなネットワーク上の別のノード１５２が、暗号化されている形態で、ネットワーク１５０を通してハードウェアデバイス１２０にマルチメディアコンテンツを送ってもよい。他の実施形態では、暗号化されたコンテンツは、ケーブルオペレータのようなサービスプロバイダから受け取られてもよい。このような実施形態では、暗号化されたコンテンツは、ケーブルテレビの信号を加入者に配信する設備に設置されているケーブルテレビヘッドエンド１６２から送られてもよい。さらに、例えば、Ｂ-ＣＡＳ（株式会社ビーエスコンディショナルアクセスシステムズ）といったＩＳＤＢ−ＣＡＳシステム（統合デジタル放送サービスのコンディンショナルアクセスシステム）１６４のオペレータからの暗号化されたコンテンツが、ハードウェアデバイス１２０によって受け取られてもよい。これらのシステムでは、加入者が、メディアコンテンツに条件付きアクセスできるように、デジタルメディアコンテンツは、ケーブルネットワークを通して、暗号化された形態で加入者に送られる。
【００１５】
いくつかの実施形態では、ハードウェアデバイス１２０内のＣＡ（条件付きアクセス）インターフェイス１２２が、離れた位置からの、暗号化されているまたはスクランブルされている信号を受け取って、コンテンツをローカル的に解読する。いくつかの実施形態では、ＣＡインターフェイス１２２が、単に、オペレータから受け取ったハードウェア（例えば、Ｂ-ＣＡＳカード）を組み込み、サービスプロバイダから受け取った信号を解読してもよい。一度、ハードウェアデバイス１２０がコンテンツを解読すると、今度はハードウェアデバイス１２０内でローカル的に発生されたキーを使用して、ハードウェアデバイス１２０内の信頼されたモジュール１２４がもう一度コンテンツを暗号化する。ランダムベースで解読キーを変えるにあたって十分な柔軟性を維持するために、コンテンツが、ハードウェアデバイス１２０によってもう一度暗号化されることに留意すべきである。ハードウェアデバイス１２０は、コンテンツを解読する際に使用すべきキーを発生させ、このキーをルーティングする場所を選択する。
【００１６】
マルチメディアコンテンツは、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、Ｈ．２６４、３ＧＰＰ、３ＧＰＰ−２、標準規格精細ビデオ（ＳＤビデオ）、高精細ビデオ（ＨＤビデオ）、デジタルビデオディスク（ＤＶＤ）マルチメディア、ビデオコンパクトディスク（ＶＣＤ）マルチメディア、高精細デジタルビデオディスク（ＨＤ−ＤＶＤ）マルチメディア、デジタルテレビビデオ／高精細デジタルテレビ（ＤＴＶ／ＨＤＴＶ）マルチメディア、ＡＶＩ、ＤＶ、クイックタイム（ＱＴ）ファイル、ウィンドウズ（登録商標）メディアオーディオ（ＷＭＡ）、ウィンドウズメディアビデオ（ＷＭＶ）、拡張システムフォーマット（ＡＳＦ）、あるいは任意の数の他の一般的なデジタルマルチメディアフォーマットを含む、任意の数のフォーマットでエンコードされてもよいが、これらに限定されるものではないことに留意すべきである。上記の例示的なフォーマットは単なる例であり、そして暗号化されたマルチメディアコンテンツを記憶させてアクセスするシステムおよび方法のさまざまな実施形態は、マルチメディアメディアコンテンツの最も広い範囲の意味で、何らかのタイプのマルチメディアコンテンツを対象とすることを意図している。
【００１７】
図１中のシステムは、パーソナルコンピュータまたはラップトップのようなコンピューティングシステム１１０のメモリ中に記憶させるソフトウェアアプリケーション１４０をさらに具備している。ソフトウェアアプリケーション１４０を実行するコンピューティングシステム１１０は、ディスプレイ１１２と、例えば、キーボードまたはマウスのようなユーザ入力デバイス１１４とを備えていてもよい。ソフトウェアアプリケーション１４０は、解読モジュール１４２とデコーダ１４４とをさらに備えていてもよい。解読モジュール１４２は、信頼されたモジュール１２４によって送られたキーを使用して、ハードウェアデバイス１２０から受け取った保護されているコンテンツを解読する。好ましい実施形態では、ソフトウェアアプリケーションは、複数の解読モジュール１４２を備えている。システムが初期化されるとき、さまざまな解読モジュール１４２の存在がハードウェアデバイス１２０に通知される。解読モジュール１４２の存在がハードウェアデバイス１２０に通知されるには、これらの解読モジュール１４２のそれぞれのメモリアドレスをハードウェアデバイス１２０に送ることが必要である。いくつかの実施形態では、暗号化されたコンテンツを解読するためのキーを受け取る解読モジュール１４２のうちの１つの解読モジュールを、ハードウェアデバイス１２０がランダムに選択する。コンピューティングシステム１１０上でコンテンツを表示することができるように解読された後に、デコーダ１４４がマルチメディアコンテンツをデコードする。
【００１８】
コンピューティングシステム１１０は、任意のカスタムメードまたは商業的に入手可能なプロセッサ、中央処理ユニット（ＣＰＵ）、（マイクロチップの形態の）半導体ベースのマイクロプロセッサ、マクロプロセッサ、１つ以上の特定用途向け集積回路（ＡＳＩＣ）、複数の適切に構成されているデジタルロジックゲート、ならびにコンピューティングシステム１１０の全体的な動作を個々に、およびさまざまな組み合わせで調整するディスクリート素子を含む他の周知の電気構成を含むことが可能である。
【００１９】
ソフトウェアアプリケーション１４０が存在するメモリは、揮発性メモリ素子（例えば、ＤＲＡＭおよびＳＲＡＭのようなランダムアクセスメモリ（ＲＡＭ)）と不揮発性メモリ素子（例えば、ＲＯＭ、ハードドライブ、テープ、ＣＤＲＯＭ等）との組み合わせのうちのいずれか１つを含むことができる。メモリは、一般的に、ネイティブオペレーティングシステム、１つ以上のネイティブアプリケーション、エミュレーションシステム、あるいはさまざまなオペレーティングシステムおよび／またはエミュレートされたハードウェアプラットフォームのうちのいずれかのもののためのエミュレートされたアプリケーション、エミュレートされたオペレーティングシステム等を含む。例えば、アプリケーションは、特定用途ソフトウェアを含んでいてもよい。一般的に、メモリは、簡略する目的で省略されている他のコンポーネントを含むことができ、そして含むことになることを当業者は正しく認識するだろう。
【００２０】
ハードウェアデバイス１２０は、カテゴリ５（ＣＡＴ−５）接続、ＩＥＥＥ−１３９４高性能シリアルバス（ファイヤワイヤ）接続、ユニバーサルシリアルバス（ＵＳＢ）接続、シリアル接続、並列接続、あるいはワイヤレス接続を含む任意の数の一般的なインターフェイスを通して、ソフトウェアアプリケーション１４０が存在するコンピューティングシステム１１０に結合されていてもよいが、これらに限定されるものではない。代替実施形態では、ハードウェアデバイス１２０およびソフトウェアアプリケーション１４０は、コンピューティングシステム１１０内のＰＣカードのようなカード上に共に組み込まれてもよいことに留意すべきである。このような実施形態では、ハードウェアデバイス１２０が、システムバスを通して（ソフトウェアアプリケーション１４０が存在する）システムメモリに結合されるように、ハードウェアデバイス１２０は集積回路であってもよい。
【００２１】
図２Ａをこれから参照すると、図２Ａは、暗号化されたコンテンツを配信するシステムの実施形態の機能的なブロック図を図示している。（当業者が）システムを理解するために不可欠でないいくつかのコンポーネントは、簡略する目的のために省略されていることに留意すべきである。システムはハードウェアデバイス２１０とソフトウェアアプリケーション２３０とを具備している。ソフトウェアアプリケーション２３０は、一般的に、ハードウェアデバイス２１０によって受け取られたコンテンツを表示するために使用されるＰＣまたはラップトップのようなコンピューティングシステムのメモリ中に記憶されているソフトウェアに関連する。ハードウェアデバイス２１０は、暗号化されているまたはスクランブルされているコンテンツ２１４をサービスプロバイダから受け取ると、例えば、ＣＡインターフェイス１２２によって、受け取ったコンテンツを解読する。ハードウェアデバイス２１０は、信頼されたモジュール２１６をさらに備えており、信頼されたモジュール２１６は、解読されたコンテンツをローカル的に暗号化して、受け取ったコンテンツを解読するソフトウェアアプリケーション２３０によって後に使用されるキー２１８を発生させるように構成されている。
【００２２】
キー２１８を受け取るソフトウェアアプリケーション２３０中に位置付けられている複数の解読モジュール２３２、２３４、２３６、２３８のうちの１つの解読モジュールを選択する権限を、信頼されたモジュール２１６が持っている。複数の解読モジュール２３２、２３４、２３６、２３８は、解読キー２１８を区別することをより困難にするために、安全性の目的に利用されることを正しく認識すべきである。さらに、いくつかの実施形態では、さまざまな解読モジュール２３２、２３４、２３６、２３８が、それぞれ異なった権限レベルを持ち、これは、異なるタスクをモジュールが完了できるようにする。したがって、初期化されるときに、ハードウェアデバイス２１０上に現在記憶されているコンテンツを解読するために必要とされる権限を持つ複数の解読モジュール２３２、２３４、２３６、２３８が、ハードウェアデバイス２１０によって識別される。そして、ハードウェアデバイス２１０内の信頼されたモジュール２１６が、適切な権限レベルを持っている解読モジュール２３２、２３４、２３６、２３８の中で選択を行う。したがって、いくつかの実施形態では、ターゲットの解読モジュールの選択は、すべての利用可能な解読モジュールから、または利用可能な解読モジュールのサブセットから行われてもよく、このことによってキーの正確な位置を決定することがより困難になる。キー２１８を取り出すために、メモリのブロックを単にコピーまたは転送することができないように、発生されたキー２１８はハードウェア中に記憶されることも正しく認識すべきである。最後に、４つの解読モジュールを図２Ａに示したが、異なる実施形態では、異なる数のモジュールを備えていてもよいことに留意すべきである。
【００２３】
いくつかの実施形態では、コンテンツを解読するためのキー２１８を受け取るソフトウェアアプリケーション２３０内の新しい解読モジュール２３２、２３４、２３６、２３８を、信頼されたモジュール２１６が周期的（または、他の実施形態では非周期的）に選択する。安全なコンテンツを解読するために使用されるキー２１８の区別をより困難にするために、この選択は、周期的（または非周期的）に、またはランダム式で行われてもよい。周期的（または非周期的）に、およびランダム式で選択が行われることによって、キー２１８の正確な位置は所定の任意のときに不明であるので、安全性が向上することに留意すべきである。
【００２４】
実際に、解読キー２１８を送る前に解読モジュール２３４が選択されると、信頼されたモジュール２１６は、最初に、ターゲットの解読モジュール２３４と通信セッションを開始する。好ましい実施形態の場合、信頼されたモジュール２１６が、さまざまな解読モジュール２３２、２３４、２３６、２３８に直接インターフェイスすることに留意すべきである。さまざまな解読モジュールに直接インターフェイスすることは、ソフトウェアアプリケーション２３０によるキーの取り扱いを最小限にするのに役立ち、その結果、ソフトウェアアプリケーション２３０が存在するメモリを不正操作することによるキーへのアクセスの可能性が減少することになる。
【００２５】
これから簡単に図２Ｂを参照すると、図２Ｂは、図２Ａにおける解読モジュールにキーを配信するデータフロー図を図示している。ハードウェアデバイス２１０からソフトウェアアプリケーション２３０への送信中の不正操作から、または認証されていないアクセスからキー２１８を守るために、キー２１８自体が、ターゲットの解読モジュール２３４に送られる前に暗号化される。安全な通信セッションは、予め定められたセッションキー２１９を使用して、キー２１８を暗号化することによって確立される。信頼されたモジュール２１６と解読モジュール２３２、２３４、２３６、２３８の両者は、セッションキー２１９にアクセスすることができるので、解読モジュール２３２、２３４、２３６、２３８のそれぞれが、暗号化されたキーを解読する機能を持つ。ハードウェアデバイス２１０およびソフトウェアアプリケーション２３０中に含まれているセッションキーが、それぞれ、完全に同一のキーであっても、完全に同一のキーでなくてもよいことを当業者は正しく認識すべきである。認証されていないユーザが、ハードウェアデバイス２１０とソフトウェアアプリケーション２３０との間でデータの送信を監視することを試みたとしても、予め定められたセッションキー２１９を使用して、キー２１８を暗号化することによって、安全性が維持される事実を強調する。
【００２６】
図２Ａに戻って参照する。ターゲットの解読モジュール２３４に暗号化されたキーが送られると、ハードウェアデバイス２１０は、ソフトウェアアプリケーション２３０中に位置付けられているコンテンツルータ２４２に暗号化されたコンテンツ２１４を送る。特に、コンテンツルータ２４２は、暗号化されたコンテンツを受け取ると、コンテンツを解読するためのキー２１８を受け取るように選択されている解読モジュール２３４に、この暗号化されたコンテンツを転送する。したがって、いくつかの実施形態では、コンテンツのサイズが大変大きいので、コンテンツは、キー２１８とは部分的に異なった適切なパスを通して移動される。これによって、解読／デコードするために、他のコンテンツに対してあるコンテンツを優先するか否かをソフトウェアアプリケーション２４２が決定することもできる。例えば、ある特定のコンテンツの一部のみが暗号化されている場合、そのコンテンツが最初に処理されてもよい。他の実施形態では、コンテンツは、解読モジュール２３２、２３４、２３６、２３８によって直接受け取られてもよいことにも留意すべきである。
【００２７】
コンテンツが一度解読されると、解読されたコンテンツは、さらなる処理のためにデコーダ２４０に転送される。マルチメディアのデジタルフォーマット（例えば、ＭＰＥＧ−１またはＭＰＥＧ−２）に基づいて、適切なデコードスキームが利用される。例えば、マルチメディアコンテンツが、テレビまたはモニタのようなディスプレイ２５０上で表示される。好ましい実施形態では、デコーダは、証明出力保護プロトコル（ＣＯＰＰ）、広帯域デジタルコンテンツ保護（ＨＤＣＰ）、アナログコンテンツ保護（ＡＣＰ）、またはコピー世代管理システム（ＣＧＭＳ）のような、いくつかのタイプの限定されたアクセスメカニズムを組み込んでいるデバイスのみに、デコードされたコンテンツを出力する。最後に、いくつかの実施形態では、信頼されたモジュール２１６が、ソフトウェアアプリケーション２３０の完全性を監視し、認証されていないユーザからのあらゆる種類の不正操作を検出するように構成されていてもよい。非限定的な例として、信頼されたモジュール２１６は、コード実行における何らかの停止に関してソフトウェアアプリケーションを監視してもよい。別の非限定的な例として、ソフトウェアアプリケーション２３０が位置付けられているメモリに対して行われる何らかの修正を、信頼されたモジュール２１６が監視してもよい。
【００２８】
図３は、暗号化されたコンテンツを配信するシステムの代替実施形態の機能的なブロック図を図示している。図３に図示しているように、ハードウェアデバイス３１０は、将来のアクセスのために、マルチメディアコンテンツ３１４を安全に記憶している。ハードウェアデバイス３１０は、信頼されたモジュールプロセッサ３１６をさらに備えている。図３における実施形態の場合、信頼されたモジュールプロセッサ３１６は、複数のキー３１８、３２０、３２２、３２４を含んでいてもよい。しかしながら、複数のキーのうちの１つのキーのみが、安全なコンテンツ３１４を解読することができる真キー３１８である。他の「偽」キー３２０、３２２、３２４を使用して、安全なコンテンツ３１４を解読することは不可能である。さらに、解読モジュール３３２、３３４、３３６、３３８のうちのどの解読モジュールが実際に機能するキー３１８を持っているかを決定することをより困難にするために、他の「偽」キー３２０、３２２、３２４は安全対策として利用される。
【００２９】
初期化されるとき、ソフトウェアアプリケーション３３０が、解読モジュール３３２、３３４、３３６、３３８のそれぞれの存在をハードウェアデバイス３１０に再度通知する。示している図の場合、信頼されたモジュールプロセッサ３１６からキー３１８を受け取る解読モジュールＡの３３２は、ハードウェアデバイス３１０によって選択される。「偽」キー３２０、３２２、３２４は、残りの解読モジュールＢの３３４、解読モジュールＣの３３６、解読モジュールＤの３３８に送られる。真キー３１８および偽キー３２０、３２２、３２４が送られる前に、信頼されたモジュール３１６は、最初に、解読モジュール３３２、３３４、３３６、３３８と通信セッションを開始する。キー３１８、３２０、３２２、３２４は、すべて暗号化されて解読モジュール３３２、３３４、３３６、３３８に送信される。図２Ａに対して説明したように、キー３１８、３２０、３２２、３２４が受け取られると、解読モジュール３３２、３３４、３３６、３３８は、それぞれ、セッションキーを使用して、解読モジュールのそれぞれのキーを解読する。図３に示しているように、真キーおよび偽キーの送信は、安全な送信リンクによって送られる。
【００３０】
ターゲットの解読モジュール３３２に暗号化されたキーが送られると、ハードウェアデバイス３１０がコンテンツルータ３４２に暗号化されたコンテンツ３１４を送り、そして、機能する真キー３１８を受け取った、認証されている解読モジュール３３２に、コンテンツルータ３４２がコンテンツ３１４を転送する。受け取ったキー３１８を使用してコンテンツが解読された後に、解読モジュール３３２が、さらなる処理のために、デコーダ３４０にコンテンツを転送する。マルチメディアコンテンツのデジタルフォーマット（例えば、ＭＰＥＧ−１またはＭＰＥＧ−２）に基づいて、適切なデコードスキームが利用される。そうすると、マルチメディアコンテンツが、例えば、テレビまたはモニタのようなディスプレイ３５０上で表示される。
【００３１】
図４は、暗号化されたコンテンツを配信するシステムのさらに別の実施形態の機能的なブロック図を図示している。示している実施形態の場合、マルチメディアコンテンツ４１４のビデオ部分およびオーディオ部分は、さらなるレベルの保護を実現するために、別々に記憶されて暗号化される。いくつかの実施形態では、信頼されたモジュールプロセッサが、解読モジュール４３２、４３４、４３６、４３８のうちの１つの解読モジュールを選択して、安全な接続を通してキー４１８を転送する。暗号化されたキー４１８が受け取られると、ターゲットの解読モジュール４３４が、セッションキーを使用して、暗号化されたキー４１８を解読する。他の実施形態では、マルチメディアコンテンツのビデオ部分およびオーディオ部分に対して、別々のキーが発生されてもよい。さらに他の実施形態では、マルチメディアコンテンツのビデオ部分およびオーディオ部分が、完全に分離された独立した解読パスを通して流れるように、別々の組の解読モジュールとともに別々のキーが実現されてもよい。１つのキー４１８のみを図４に示しているが、（真キー、およびさまざまな「偽」キーを伴っている）図３に図示している複数のキー構成のような他の構成も、同様に実現されることに留意すべきである。
【００３２】
図５は、図２から図４におけるハードウェアデバイスの観点から、暗号化されたコンテンツを配信する方法の実施形態のフローチャートを図示している。図５における実施形態は、ブロック５１０において、ハードウェアデバイスにおいて、離れた位置からのコンテンツを受け取ることを含む。次に、ステップ５２０において、コンテンツが暗号化され、コンテンツを解読するための対応するキーが発生される。安全性の目的ためにキーが暗号化されると、解読モジュールのうちの１つの解読モジュールが、暗号化されたキーを受け取るために選択される（ブロック５３０）。次に、キーは、解読されたモジュールに送られる（ブロック５４０）。最後に、ブロック５５０において、コンテンツが、キーを使用して解読される。
【００３３】
図６は、図２から図４におけるソフトウェアアプリケーションの観点から、暗号化されたコンテンツを配信する方法の実施形態のフローチャートを図示している。図６における実施形態は、以下のことを含む。最初に、暗号化されたキーが、ハードウェアデバイスから受け取られる（ステップ６１０）。次に、暗号化されたコンテンツが、ソフトウェアアプリケーションによって受け取られる（ステップ６２０）。セッションキーを使用して、暗号化されたキーが解読される（ステップ６３０）。ステップ６４０において、受け取られたコンテンツが、キーを使用して解読される。最後に、解読されたコンテンツが、デコードされる（ステップ６５０）。
【００３４】
本開示の実施形態は、ハードウェア、ソフトウェア、ファームウェア、あるいはこれらの組み合わせたもので実現することができる。いくつかの実施形態では、メモリ中に記憶され、適切な命令実行システムによって実行されるソフトウェアまたはファームウェア中で方法およびシステムが実現される。代替の実施形態のように、ハードウェアで実現される場合、方法およびシステムは、すべて周知である技術、例えば、データ信号でロジック機能を実現するロジックゲートを有するディスクリートロジック回路、適切な組み合わせロジックゲートを有する特定用途向け集積回路（ＡＳＩＣ）、１つ以上のプログラマブルゲートアレイ（ＰＧＡ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）等の技術を組み合わせたもの、あるいはこれらの技術のうちのいずれかのもので実現することができる。
【００３５】
フローチャート中のあらゆるプロセスの記述またはブロックは、プロセスにおける特定の論理的機能またはステップを実現する１つ以上の実行可能な命令を含んでいるモジュール、セグメント、またはコードの部分を提示しているとして理解すべきである。さらに、代替実施形態は本開示の実施形態の範囲内に含まれており、この場合、機能は、本開示の当業者によって理解されているように、関係ある機能性に基づいて、実質的に同時であることを含む、説明したまたは示した本開示の実施形態から外れた順序で、または逆の順序で実行されてもよい。
【００３６】
ここで記述したソフトウェアアプリケーションのさまざまな実施形態は、ロジック機能を実現するために実行可能な命令の順序付けされたリストを含み、命令実行システム、装置またはデバイスによる使用のために、あるいは、命令実行システム、装置またはデバイスとともに使用するために、任意のコンピュータ読取可能な媒体で具現化することができる。命令実行システム、装置またはデバイスは、命令実行システム、装置またはデバイスからの命令をフェッチして、その命令を実行できるコンピュータベースシステム、プロセッサ搭載システムのようなものである。この文書の状況では、「コンピュータ読取り可能な媒体」は、命令実行システム、装置またはデバイスによって使用されるプログラムを、またはこれらに関連して使用されるプログラムを含有、記憶、通信、伝搬または移動させることができる何らかの手段である。コンピュータ読取り可能な媒体は、例えば、電子、磁気、光、電磁、赤外線、または半導体のシステム、装置、デバイス、あるいは伝搬媒体であってもよいが、これらのものに限定されるものではない。コンピュータ読取可能な媒体のさらなる特定の例（網羅されていないリスト）には、１以上のワイヤを持つ電気接続（電子）、ポータブルコンピュータディスケット（磁気）、ランダムアクセスメモリ（ＲＡＭ）（電子）、リードオンリーメモリ（ＲＯＭ）（電子）、消去可能プログラマブルリードオンリーメモリ（ＥＰＲＯＭまたはフラッシュメモリ）（電子）、光ファイバ（光学）、およびポータブルコンパクトディスクリードオンリーメモリ（ＣＤＲＯＭ）（光学）が含まれる。さらに、コンピュータ読取可能な媒体は、紙またはプログラムが印刷される別の適切な媒体であってもよく、例えば、紙または他の媒体の光学スキャンによって、電子的にプログラムが取り込まれると、このプログラムは、コンパイルされ、または組み込まれ、さもなければ必要に応じて適切な方法で処理され、コンピュータメモリ中に記憶されることに留意すべきである。さらに、本開示の範囲には、ハードウェア構成の媒体またはソフトウェア構成の媒体に組み込まれるロジックに本開示の実施形態の機能を組み込むことも含まれている。
【００３７】
さらに、先に記述した実施形態は、可能性あるインプリメンテーションの単なる例であることを強調する。本開示の原理から逸脱することなく、先に記述した実施形態に対して多くの変更および修正を実行してもよい。すべてのこのような変更および修正は本開示の範囲内に含まれ、特許請求の範囲によって保護されるべきであることが意図されている。
【図面の簡単な説明】
【００３８】
【図１】図１は、暗号化されたコンテンツを配信するシステムの実施形態のトップレベルのフロー図を図示している。
【図２Ａ】図２Ａは、暗号化されたコンテンツを配信するシステムの実施形態の機能的なブロック図を図示している。
【図２Ｂ】図２Ｂは、図２Ａに示した解読モジュールにキーを配信するデータフロー図を図示している。
【図３】図３は、暗号化されたコンテンツを配信するシステムの代替実施形態の機能的なブロック図を図示している。
【図４】図４は、暗号化されたコンテンツを配信するシステムの代替実施形態の機能的なブロック図を図示している。
【図５】図５は、暗号化されたコンテンツを配信する方法の実施形態のフローチャートを図示している。
【図６】図６は、暗号化されたコンテンツを配信する方法の代替実施形態のフローチャートを図示している。
【図１】
2008259163.tif 000003
【図２Ａ】
2008259163.tif 000004
【図２Ｂ】
2008259163.tif 000005
【図３】
2008259163.tif 000006
【図４】
2008259163.tif 000007
【図５】
2008259163.tif 000008
【図６】
2008259163.tif 000009
【手続補正書】
【提出日】平成20年1月28日(2008.1.28)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００３
【補正方法】変更
【補正の内容】
【０００３】
一般的に、ビデオコンテンツは、例えば、ＭＰＥＧ−１、ＭＰＥＧ−２、またはＤＶ（デジタルビデオ）のような任意の数の一般的なフォーマットで記憶される。同様に、オーディオコンテンツは、例えば、ＭＰ３、ＷＡＶ、またはＭＰＥＧオーディオのような任意の数の一般的なデジタルフォーマットで記憶される。非常に数多くのデジタルフォーマットでマルチメディアコンテンツを利用可能にすると、可搬性の度合いが高いことからマルチメディアコンテンツの配布がより容易になる。残念なことに、技術によってマルチメディアコンテンツの配布が容易になることが続くと、マルチメディアコンテンツの配信、オーディオ／ビジュアルの作品の著作権侵害もまた年々急増する。例えば、インターネットを通して、マルチメディアコンテンツへのアクセスおよびマルチメディアコンテンツのコピーを容易にできることから、ビデオおよびオーディオの著作権侵害は、継続的な問題であり続ける。  
マルチメディアコンテンツの認証されていないコピーおよび配布に対応するために、オーディオ／ビジュアル作品の発行元および製作者は、デジタルコンテンツへのアクセスを制御する技術に頼っている。用語、デジタル権利マネンジメント（ＤＲＭ）は、一般的に、マルチメディアコンテンツに対する制限されたアクセスを実現するために使用される技術を表している。このようなＤＲＭ技術は、暗号化を用いて、コンテンツへのアクセスを制御するマルチメディアプレイヤーソフトウェアを含む多くのさまざまな技術に基づいている。しかしながら、ソフトウェアアプリケーションを使用して、暗号化されたコンテンツへのアクセスを制御する１つの明らかな欠点は、多くのケースにおいて、このソフトウェアがアクセスされてリバースエンジニアリングされることである。一般的に、パーソナルコンピュータがオープンな環境で動作すると仮定すると、マルチメディアコンテンツを保護することが課題である。いくつかの例では、保護されたエリアのメモリから保護されていないエリアのメモリにソフトウェアコードを移動することができ、保護されていないエリアのメモリにおいて、コードは詳細に分析され、解析される。さらに、オープンメモリ中に存在するマルチメディアソフトウェアアプリケーションを解析し、暗号化キーが記憶されている正確なメモリの位置を決定することも可能である。適切なツールにより、これらの暗号化キーを保持しているメモリのブロックをダンプして、保護されたコンテンツへのアクセスを獲得することが可能である。したがって、暗号化されたマルチメディアコンテンツを保護するソフトウェアのアプローチには、依然として、保護されていないコンテンツと同一の明らかな欠点がある。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
【特許文献１】米国特許第６３３７９１２号明細書
【特許文献２】米国特許第５５５５３０４号明細書
【特許文献３】米国特許第４７４３７４７号明細書
【特許文献４】米国特許出願公開第２００４／００３１０４９号明細書
【外国語明細書】
2008259163000001.pdf