(57)【特許請求の範囲】
【請求項１】
複数のコンテントに対してクライアント上でデジタル著作権管理を実行するための方法であって、
非対称暗号化方式を使用して暗号化された第１対称鍵と複数の申し込まれたサービスの個々に各々が関連づけられた複数の対称暗号化方式を使用して暗号化された第２対称鍵とを受信することと、
非対称暗号化方式を使用して、秘密鍵に基づき、前記暗号化された第１対称鍵を逆暗号化することと、
前記逆暗号化された第１対称鍵に基づき、前記複数の申し込まれたサービスのうちの１つに関連付けられた第２対称鍵を対称暗号化方式を使用して逆暗号化することであって、前記第２対称鍵は前記第１対称鍵で暗号化されている、ことと、
前記複数の申し込まれたサービスのうちの１つのマルチメディアコンテントおよび前記マルチメディアコンテントに関連づけられた対称暗号化方式を使用して暗号化された第３対称鍵を、前記第１対称鍵および前記複数の第２対称鍵から、別々に受信することと、
対称暗号化方式を使用して、前記複数の申し込まれたサービスのうちの前記１つに関連付けられた前記逆暗号化された第２対称鍵に基づき、前記第３対称鍵を逆暗号化することであって、前記第３対称鍵は前記第２対称鍵で暗号化されている、ことと、
前記逆暗号化された第３対称鍵に部分的に基づき、前記マルチメディアコンテントを逆暗号化することであって、前記マルチメディアコンテントは前記第３対称鍵で暗号化されている、ことと、
を具備する方法。
【請求項２】
公開鍵および前記秘密鍵を具備する非対称鍵の対を生成することを更に具備する、請求項１の方法。
【請求項３】
前記第１対称鍵と前記複数の第２対称鍵とを受信することは、前記第１対称鍵と前記複数の第２対称鍵とを含むライセンス・ファイルを第１サーバから受信することを更に具備する、請求項２の方法。
【請求項４】
前記第１サーバに、前記ライセンス・ファイルに対する要求とともに前記公開鍵を通信することを更に具備する、請求項３の方法。
【請求項５】
前記複数の申し込まれたサービスのうちの前記１つの前記マルチメディアコンテントおよび前記マルチメディアコンテントに関連づけられた前記第３対称鍵を前記第１対称鍵および前記複数の第２対称鍵から別々に受信することは、前記複数の申し込まれたサービスのうちの前記１つの前記マルチメディアコンテントおよび前記マルチメディアコンテントに関連づけられた前記第３対称鍵を、前記第１対称鍵および前記複数の第２対称鍵を含む前記ライセンス・ファイルから別々に、第２サーバから、受信することを更に具備する、請求項４の方法。
【請求項６】
前記マルチメディアコンテントは、前記複数の申し込まれたサービスのうちの前記１つに関連づけられた複数のプログラムのうちの１つのプログラムを具備する、請求項５の方法。
【請求項７】
前記第１対称鍵は、その後に前記第１対称鍵の逆暗号化方式がイナクティブにされる、決定された期間のあいだ有効な、前記逆暗号化方式で暗号化される、請求項６の方法。
【請求項８】
前記第１対称鍵の前記逆暗号化方式は前記第１対称鍵を削除せずにイナクティブにされる、請求項７の方法。
【請求項９】
前記複数のプログラムに関連づけられた複数のプログラム鍵は前記第２対称鍵で暗号化される、請求項８の方法。
【請求項１０】
複数のコンテントに対してサーバ上でデジタル著作権管理を実行するための方法であって、
非対称鍵の対のうちの公開鍵を使用して第１対称鍵を暗号化することと、
前記第１対称鍵を使用して複数の第２対称鍵を暗号化することであって、前記複数の第２対称鍵の各々は、クライアントによって申し込まれた複数のサービスのうちの１つに関連づけられ、前記複数のサービスの各々は、複数のプログラムに関連付けられている、ことと、
前記クライアントに、前記暗号化された第１対称鍵および前記暗号化された複数の第２対称鍵を送信することと、
前記複数のサービスのうちの前記１つに関連づけられた前記第２の対称鍵を使用して、前記複数のサービスのうちの１つの前記複数のプログラムの１つに関連づけられた第３対称鍵を暗号化することと、
前記クライアントに、前記暗号化された第３対称鍵および前記第３対称鍵によって暗号化された複数のプログラムのうちの前記関連づけられた１つを、前記暗号化された第１対称鍵および前記暗号化された複数の第２対称鍵から別々に、提供することと
を具備する方法。
【請求項１１】
前記クライアントに前記暗号化された第１対称鍵および前記暗号化された複数の第２対称鍵を送信することは、ライセンス・ファイル内で、前記クライアントに、前記暗号化された第１対称鍵および前記複数の暗号化された第２対称鍵を送信することを更に具備する、請求項１０の方法。
【請求項１２】
前記クライアントから前記ライセンス・ファイルに対する要求を受信することを更に具備し、前記要求は、前記非対称鍵の対のうちの前記公開鍵および前記クライアントによって申し込まれた前記複数のサービスのリストを具備する、請求項１１の方法。
【請求項１３】
その後に前記第１対称鍵がイナクティブにされる、事前に決定された期間のあいだ有効な、逆暗号化方式で、前記第１対称鍵を暗号化することをさらに具備する、請求項１２の方法。
【請求項１４】
前記複数のサービスの各々に関連づけられた前記第２対称鍵を使用して、前記複数のサービスの各々の関連づけられた前記複数のプログラムの各々を、前記複数のサービスの各々のために、暗号化することを更に具備する、請求項１３の方法。
【請求項１５】
前記クライアントによって申し込まれた前記複数のサービスに関連づけられた複数のサービスの識別子を検索することと、
前記検索された複数のサービスの識別子に基づいて前記複数の第２対称鍵を暗号化することと
を更に具備する請求項１４の方法。
【請求項１６】
前記第１対称鍵を暗号化する前に前記クライアントを認証することを更に具備する、請求項１５の方法。
【請求項１７】
前記第１対称鍵は、前記第１対称鍵を削除せずにイナクティブにされる、請求項１６の方法。
【発明の詳細な説明】
【優先権の主張】
【０００１】
本特許出願は、２００５年９月１日に提出され、そして、その全体が参照として本出願に組み込まれた、“マルチメディア・コンテント配信のための効率的鍵階層構造”と題する米国特許仮出願番号第６０／７１４，１５３号に優先権を主張する。
【技術分野】
【０００２】
下記の記載は、一般にデジタル著作権管理（digital rights management）に係わり、更に詳しくはマルチメディア・コンテント配信のための効率的鍵階層構造に関する。
【背景技術】
【０００３】
第３世代（３Ｇ）モバイル・システムとその他のセルラ・ネットワークが配備されるに従って、新しいインターネット・プロトコル（Internet Protocol）（ＩＰ）パケット・データに基づくサービスが出現しつつある。ネットワーク事業者達が開発しようと求めているサービス分野は、大衆市場へのビデオ・コンテントの配信を含む。高品質ビデオは、一種のデータ集約型コンテントである。家庭用表示オプションを持つ消費者の経験は、利用者の諸期待を予め定義した目標市場をネットワーク事業者やコンテント・プロバイダ達に提供する。可搬性、魅力的なビジネス・モデル、ネットワークの制御と管理、接続制御、及びデバイス能力と結合されたこれ等の利用者の期待は、ネットワーク事業者やコンテント・プロバイダ達に複雑な挑戦的課題を提示する。
【０００４】
配信されるコンテントの保護は、非認可複製に対して防護するために、そして、コンテント配信を直接的又は間接的に制御するために生じる課題である。コンテント・プロバイダは、一般的にはコンテント配信システムがデジタル著作権管理（Digital Rights Management）（ＤＲＭ）を提供する能力を有することを要求する。このＤＲＭは、幾つかの技術協定の内の任意のものを指し、該協定は、このような手段が組み込まれた電子デバイス上で配信されるものの利用者のために制御を提供する。コンテント配信システムの基盤になる構成要素は、送信／受信の期間におけるメディアの暗号化／逆暗号化機能、サブスクリプションに基づくコンテント配信サービスにおけるような機能、である。ＤＲＭソフトウェアは、基盤になる暗号化／逆暗号化アルゴリズム、クライアント部分及びサーバ部分の両者で使用されるハッシュ・アルゴリズム及び認証アルゴリズムのインプリメンテーションを提供することが出来る。ＤＲＭは、クライアントに対してライセンスのダウンロード及び安全なファイル記憶機能を提供することも出来る。
【０００５】
ＤＲＭシステムで利用されることが出来る２つの型の暗号方式又は暗号作成技術は、対称暗号方式と非対称暗号方式である。対称鍵暗号方式では、暗号化と逆暗号化双方に対して同一の鍵が使用される。対称鍵暗号方式の例は、データ暗号化規格（Data Encryption Standard）（ＤＥＳ）システム及び高度暗号化規格（advanced Encryption Standard）（ＡＥＳ）システムを含む。公開鍵暗号方式としても知られる、非対称暗号方式では、各利用者は、公開鍵と秘密鍵を有する。暗号化は、公開鍵を用いて実行され、他方逆暗号化は、秘密鍵を用いて実行される。非対称鍵暗号方式の例は、リベスト−シャミア−エーデルマン（Rivest Shamir and Adleman）（ＲＳＡ）アルゴリズム及び楕円曲線暗号方式（Elliptic Curve Cryptography）（ＥＣＣ）を含む。対称鍵暗号方式は、非対称鍵暗号方式と比べて高速であるが、しかし対称鍵暗号方式は、その共有鍵を通信対象に秘密裏に伝達しなければならないという欠点が難である。非対称鍵暗号方式は、その名が表すように、公開鍵と秘密鍵の利用に基づいて処理要求を不均等に分割する。
【発明の概要】
【サマリー】
【０００６】
下記は、開示される実施形態の幾つかの態様の基本的な理解を提供するために、簡単化された概要を提示する。この概要は、広範囲の概観ではないし、そのような実施形態の不可欠な又は決定的に重要な要素を特定することも又そのような実施形態の範囲を正確に概説することも意図していない。その目的は、説明される実施形態の幾つかの概念を後に提示される更に詳細な説明への前奏として簡単化された形で提示することである。
【０００７】
１又は複数の実施形態とその対応する開示に従って、マルチメディア・コンテント配信のための効率的鍵階層構造に関連して種々の態様が説明される。２つの型の暗号作成技術（例えば、対称暗号方式と非対称暗号方式）が認証、鍵、及びコンテント保護のために利用される。幾つかの実施形態によれば、複数のコンテントに対するデジタル著作権管理をクライアント・デバイス上で実行するための方法が提供される。該方法は、公開部分と秘密部分を具備する非対称鍵対を生成して該非対称鍵対の公開部分を送信することを含む。該方法は、第１対称鍵と第２対称鍵を受信することも含む。該第１対称鍵は、該非対称鍵対の公開部分を利用して暗号化されることが出来、そして該第２対称鍵は、複数のコンテントに関連付けられる。
【０００８】
幾つかの実施形態に従ったものは、デジタル著作権管理を容易にする装置である。該装置は、非対称鍵対を生成するための命令を実行して該非対称鍵対の少なくとも第１部分をサーバに選択的に送信する、プロセッサを含む。該非対称鍵対の少なくとも第２部分に関連する情報を記憶するメモリも該装置に含まれる。
【０００９】
幾つかの実施形態によるものは、マルチメディア・コンテントのデジタル著作権管理を容易にする装置である。該装置は、公開鍵と秘密鍵を生成するための手段及び該公開鍵をライセンス・ファイルの要求と共にサブスクリプション・サーバに公開鍵を伝達するための手段を含む。又、該装置には、該要求されたライセンス・ファイルを受信するための手段、及び該ライセンス・ファイルに含まれるヘッダ情報に一部は基づいてマルチメディア・コンテントを逆暗号化するための手段、が含まれる。
【００１０】
幾つかの実施形態に従ったものは、デジタル著作権管理のためのコンピュータ実行可能な諸命令をその上に記憶しているコンピュータ可読媒体である。該命令は、非対称鍵対を生成すること及び該非対称鍵対の少なくとも第１部分とマルチメディア・コンテントへの接続要求とをサーバに送ること、を含む。該命令は、該マルチメディア・コンテントに関連する接続情報と対称鍵とを含むライセンス・ファイルを受信すること及び該マルチメディア・コンテントをディスプレイ上に可視化するために該接続情報を逆暗号化すること、を更に含む。
【００１１】
幾つかの実施形態によれるものは、マルチメディア・コンテントの配信のための鍵階層構造に対するコンピュータ実行可能な諸命令を実行するプロセッサである。該命令は、公開鍵と秘密鍵とを具備する鍵対を生成すること及びサブスクリプション・サーバからのライセンス・ファイルをフェッチするために該公開鍵を送信すること、を含む。該命令は、ヘッダ情報と少なくとも１つの対称鍵とを含むライセンス・ファイル情報を受信すること及び該ヘッダ情報に一部は基づいてプログラムを逆暗号化すること、を更に含む。
【００１２】
幾つかの実施形態によるものは、複数のコンテントのためのサーバ上でデジタル著作権管理を実行するための方法である。該方法は、クライアントから非対称鍵対の公開部分を受信することを含む。第１対称鍵は、第２対称鍵を使用して暗号化されそして複数のコンテントと関連付けられる。第２対称鍵は、非対称鍵対の公開部分を使用して暗号化される。
【００１３】
幾つかの実施形態に従ったものは、マルチメディア・コンテントの配信を容易にする装置である。該装置は、暗号化された第１対称鍵及びマルチメディア・コンテントの配信の要求と関連付けられる少なくとも第２の暗号化された対称鍵を生成するための命令とを実行する、プロセッサを含む。該装置は又、該プロセッサによって生成された該第１対称鍵と該少なくとも第２の対称鍵との内の少なくとも１つに関連する情報を記憶する、メモリを含む。
【００１４】
幾つかの実施形態によれるものは、コンテントの配信のための鍵階層構造の創成を容易にする装置である。該装置は、クライアントから非対称鍵対の少なくとも一部分を受信するための手段を含む。同様に含まれるものは、第１対称鍵及び少なくとも第２の対称鍵を創成するための手段である。しかも、該少なくとも第２の対称鍵を暗号化するために該第１対称鍵を利用するための手段及び該非対称鍵対の少なくとも一部分を用いて該第２対称鍵を暗号化するための手段、もある。
【００１５】
幾つかの実施形態に従ったものは、デジタル著作権管理のためのコンピュータ実行可能な諸命令をその上に記憶しているコンピュータ可読媒体がある。該命令は、マルチメディア・コンテントへの接続のための要求を受理することを含み、該要求は、非対称鍵対の少なくとも一部分を含む。第１対称鍵及び少なくとも第２の対称鍵が創成されて、該第１対称鍵は、該第２対称鍵対を用いて暗号化される。該命令は、該第２対称鍵対を該マルチメディア・コンテントと関連付けること及び該第１対称鍵と該第２対称鍵とをクライアントに送ることを含む。
【００１６】
幾つかの実施形態によるものは、デジタル著作権管理のためのコンピュータ実行可能な諸命令を実行するプロセッサである。該命令は、要求されたライセンス・ファイルに対する暗号化されたセッション鍵を生成すること及び申し込まれたサービスと関連付けられる少なくとも１つの暗号化されたサービス鍵を創成すること、を含む。該命令は、クライアントの暗号化鍵を用いて少なくとも１つの暗号化されたセッション鍵を創成すること及び該暗号化されたサービス鍵と該少なくとも１つの暗号化されたセッション鍵とを該要求されたライセンス・ファイルの中に記憶すること、を更に含む。
【００１７】
上述及び関連する目的達成のために、１又は複数の実施形態は、下記で十分に説明されそして請求項において特別に指摘される諸特徴を含む。下記の説明と添付図は、特定の実例となる諸態様を詳細に説明し、そして、諸実施形態の諸原理が利用されることが可能な種々の方法の内の単なる数例を示す。他の利点と新規性が下記の詳細な説明から図面と合わせて考慮されれば明白であり、そして開示される諸実施形態は、全てのこのような態様及びそれ等の同等物を含むように意図される。
【００１８】
［用語解説］
サービス鍵ＫＳｅｒｖｉｃｅ＝プログラム鍵ＫＰｒｏｇｒａｍを暗号化するために使用される鍵。サービス鍵ＫＳｅｒｖｉｃｅは、特定のサービス（例えば、ＣＮＮ、ＭＳＮＢＣ）にマッピングする。鍵の型：対称。
【００１９】
プログラム鍵ＫＰｒｏｇｒａｍ＝プログラムのビデオ・データと音声データを暗号化するために使用される鍵。プログラム鍵ＫＰｒｏｇｒａｍは、特定のプログラム（例えば、テレビ・プログラム）にマッピングする。鍵の型：対称。
【００２０】
セッション鍵ＫＳｅｓｓｉｏｎ＝データを対称に暗号化するために一時的な方法で使用される鍵。セッション鍵ＫＳｅｓｓｉｏｎは、ライセンス・ファイル中のサービス鍵ＫＳｅｒｖｉｃｅを暗号化するために使用される。鍵の型：対称。
【００２１】
クライアントの暗号化鍵ＥＤｅｖｉｃｅ＝クライアントの暗号化鍵の公開部分。この鍵は、該クライアントにメッセージを配信することを望む任意のデバイスに配布されることが出来る。鍵の型：非対称。
【００２２】
クライアントの逆暗号化鍵ＤＤｅｖｉｃｅ＝クライアントの暗号化鍵の秘密部分。この鍵は、クライアントには秘密のままである。鍵の型：非対称。
【００２３】
認証鍵ＱＤｅｖｉｃｅ＝クライアント−サーバ通信の期間それぞれの側を認証するために使用される認証鍵。鍵の型：キー−ハッシュド（Keyed−Hashed）メッセージ認証コード。
【図面の簡単な説明】
【００２４】
【図１】図１は、マルチメディア・コンテント配信のための効率的鍵階層構造のためのシステムのブロック図を図示する。
【図２】図２は、マルチメディア・コンテント配信のための効率的鍵階層構造のためのシステムの別のブロック図を図示する。
【図３】図３は、プログラム鍵を使用するマルチメディア・コンテントの暗号化を図示する。
【図４】図４は、サービス鍵を使用するプログラム鍵の暗号化を図示する。
【図５】図５は、セッション鍵を使用するサービス鍵の暗号化を図示する。
【図６】図６は、クライアントの暗号化鍵を使用するセッション鍵の暗号化を図示する。
【図７】図７は、デジタル著作権管理（ＤＲＭ）システムの例示的なアーキテクチャを図示する。
【図８】図８は、ＤＲＭシステムの動作のための方法を図示する。
【図９】図９は、クライアントの起動呼プロセス流れを図示する。
【図１０】図１０は、クライアントがライセンス・ファイルをフェッチするためのプロセス図を示す。
【図１１】図１１は、種々の鍵を用いるプログラム逆暗号化シーケンスを示す。
【図１２】図１２は、クライアント上で多数のコンテントのためのデジタル著作権管理を実行するための方法を図示する。
【図１３】図１３は、サーバ上で多数のコンテントのためのデジタル著作権管理を実行するための方法を図示する。
【図１４】図１４は、クライアント上で多数のコンテントのためのデジタル著作権管理を実行するためのシステムを図示する。
【図１５】図１５は、サーバ上で多数のコンテントのためのデジタル著作権管理を実行するためのシステムを図示する。
【図１６】図示された図１６は、無線デバイス又は無線端末の可能な構成の概念的なブロック図である。
【発明を実施するための形態】
【００２５】
種々の実施形態が図面を参照してここに説明される。下記の説明では、説明の目的のために、多くの具体的な詳細が１又は複数の態様の完全な理解を提供するために説明される。しかしながら、そのような（諸）実施形態は、これ等の具体的な詳細がなくても実行されることが可能であることは明らかであると言える。他の例では、周知の構成及びデバイスがこれ等の実施形態を説明することを容易にするためにブロック図の形式で示される。
【００２６】
本願で使用されるように、用語“コンポーネント”、“モジュール”、“システム”及び類似の用語は、コンピュータ関連の構成要素、ハードウェア、ファームウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、或いは実行中のソフトウェア、を指すように意図される。例えば、コンポーネントは、プロセッサ上で走るプロセス、プロセッサ、オブジェクト、実行ファイル、実行のスレッド、プログラム、及び／又はコンピュータであることが出来るが、これ等に限定されない。説明のために、計算デバイス上で走るアプリケーションと該計算デバイスは、両者共にコンポーネントであることが出来る。１又は複数のコンポーネントが処理及び／又は実行のスレッド内に常駐出来る、そして、ある１つのコンポーネントは、１つのコンピュータ上に局在されることが出来る及び／又は２以上のコンピュータ間に分散されることも出来る。その上、これ等のコンポーネントは、種々のデータ構造をその上に記憶させた種々のコンピュータ可読媒体から実行することが出来る。該コンポーネントは、例えば、１又は複数のデータ・パケットを有する信号に従って局所プロセス及び／又は遠隔プロセスによって通信することが出来る（例えば、１つのコンポーネントからのデータは、局所システム、分散型システム内の別のコンポーネントと、及び／又は信号によってインターネットのようなネットワークをわたり他のシステムと、影響しあう）。
【００２７】
更に、種々の実施形態が利用者デバイスに関連して本明細書で説明される。利用者デバイスは、又、システム、加入者ユニット、加入者局、移動局、移動デバイス、遠隔局、接続点、基地局、遠隔端末、接続端末、ハンドセット、ホスト、利用者端末、端末、利用者エージェント、無線端末、無線デバイス、又は利用者設備、とも呼ばれることが出来る。利用者デバイスは、セルラ電話機、コードレス電話機、シップ（Session Initiation Protocol）（ＳＩＰ）電話機、無線ローカル・ループ（wireless local loop）（ＷＬＬ）局、個人デジタル補助装置（Personal Digital Assistant）（ＰＤＡ）、無線接続能力を有するハンドヘルド・デバイス、或いは無線モデムに接続される他の（複数の）処理デバイス、であることが出来る。
【００２８】
その上、本明細書で説明される種々の態様又は特徴は、方法、装置、或いは標準プログラム技術及び／又は工業技術を使用する製造要綱、として与えられることが出来る。本明細書で使用される用語“製造要綱”は、任意のコンピュータ可読デバイス、キャリア、又は媒体から接続可能なコンピュータ・プログラムを含むように意図される。例えば、コンピュータ可読媒体は、磁気記憶デバイス（例えば、ハード・ディスク、フロッピー（登録商標）ディスク、磁気テープ…）、光学ディスク（例えば、コンパクト・ディスク（ＣＤ）、デジタル多用途ディスク（digital versatile disk）（ＤＶＤ）…）、スマート・カード、及びフラッシュ・メモリ・デバイス（例えば、カード、スティック、キー・ドライブ…）を含むことが出来るがこれ等に限定されない。
【００２９】
種々の実施形態が、多数のデバイス、コンポーネント、モジュール、及び類似のものを含むことが出来るシステムの用語で提示される。該種々のシステムは、追加のデバイス、コンポーネント、モジュール、等々を含むことが出来る、及び／又は図面に関連して説明されるデバイス、コンポーネント、モジュール、等々を必ずしも全て含まなくても良い、ということは理解及び認識されて然るべきである。これ等の手法の組合せも又使用されることが出来る。
【００３０】
ここで図を参照して、図１は、マルチメディア・コンテント配信のための効率的鍵階層構造のためのシステム１００のブロック図を図示する。本明細書に記載される種々の実施形態は、マルチメディア・コンテントの安全な配信に影響する様々な異なる暗号作成技術の効率的使用を提供する暗号化鍵と逆暗号化鍵の軽量レイヤ化を提供する。該レイヤ化、すなわち、階層構造は、第１対称鍵を暗号化する利用者鍵に基づいており、該対称鍵は、次にサービス鍵を暗号化する。サービス鍵は、プログラム鍵を暗号化するために使用され、プログラム鍵は、最終的にマルチメディア・コンテントを暗号化する。
【００３１】
幾つかの実施形態では、非対称暗号方式は、そこでは符合する秘密鍵によってのみ逆暗号化されることが出来る情報を暗号化するために公開鍵が使用され、対称鍵を安全に配送するために使用される。しかしながら、対称暗号方式が非対称暗号方式よりも計算機上で高速であるという２つのアルゴリズム間のプロセス上の差異のために、一旦対称鍵が転送されると、対称暗号方式が大部分の暗号化／逆暗号化を実行するために使用される。
【００３２】
幾つかの実施形態に従えば、対称暗号方式がメッセージの信憑性を確認するために使用される。具体的には、ハッシュ・メッセージ認証符号−セキュア・ハッシュ・アルゴリズム１（Hash Message Authentication Code−Secure Hash Algorithm 1）（ＨＭＡＣ−ＳＨＡ１）がメッセージ署名と検証のために利用されることが出来る。ハッシュ法は、システム１００におけるエンティティを認証するために鍵とともに使用されることも出来る。ハッシュ・アルゴリズムは、任意の長さのメッセージを入力として受け取りそして固定長のハッシュ値を戻す。メッセージが容易には元に戻せないような（例えば、ハッシュ値から原メッセージに戻ることは容易ではない）方法でメッセージを固定長値に変換する一方向機能を与えるハッシュ・アルゴリズムである、セキュア・ハッシュ・アルゴリズムが使用される。更に、使用されるハッシュ法の技術は、極度に低い衝突確率（例えば、２つの異なるメッセージは同一ハッシュ値を生成するはずがない）を有するはずである。ハッシュ法は、エンティティを認証するために鍵とともに使用されることが出来る。
【００３３】
ハッシュ法は、鍵の秘密部分を持つエンティティがメッセージをハッシュに暗号化したこと及び該メッセージが転送中に外部から読み取られなかったことを証明する、デジタル署名を創成するために非対称暗号方式を用いて使用されることが出来る。署名の別の形式は、メッセージ認証符号（Message Authentication Code）（ＭＡＣ）のような対称鍵を用いて遂行されることが出来る。ＭＡＣは、送信側と受信側の間で共有される秘密鍵を用いて計算されることが出来る。
【００３４】
システム１００は、例えば、サービス・コンテントを入力として受け取って多数の利用者に該コンテントを出力するＭｅｄｉａＦＬＯシステムであることが出来る。本明細書で議論されるように、ＭｅｄｉａＦＬＯシステムは、該システムにおける秘密を保護するために対称暗号方式と非対称暗号方式の双方を使用することが出来る。一般に、２つのアルゴリズムの処理上の相違のために、非対称暗号方式は、対称鍵を安全に配送するために使用されることが出来る。対称暗号方式は、大部分の暗号化／逆暗号化を実行するために使用されることが出来る。非対称暗号方式は、メッセージ認証のために使用されることが出来る。
【００３５】
システム１００は、クライアント又は利用者デバイス１０２の中に含まれることが可能で、それは、例えばセルラ電話機、スマート・フォーン、ラップトップ、ハンドヘルド通信デバイス、ハンドヘルド計算デバイス、衛星無線通信装置、全地球測位システム、個人デジタル補助装置（ＰＤＡ）、及び／又は無線通信ネットワークを介して通信するための他の適切なデバイスのような、移動デバイスであることが出来る。利用者デバイス１０２は、ライセンス管理サーバ１０４と無線で通信することが出来る。通信ネットワーク中には多数の利用者デバイス１０２とサーバ１０４が含まれることが出来るけれども、理解されるように、簡明を期するため単一のサーバ１０４と通信データ信号を送信する単一の利用者デバイス１０２が図示されている。
【００３６】
利用者デバイス１０２は、非対称鍵対のような、鍵対１０８を生成するために構成されることが出来るプロセッサ１０６を含むことが出来る。鍵対１０８は、公開部分と秘密部分を含むことが出来る。非対称鍵対は、例えば、下記でさらに詳細に論じられる起動プロセス期間中に生成されることが出来る。鍵対１０８の公開部分は、マルチメディア・コンテントに対するデジタル著作権を取得するために及び／又はライセンス・サーバ１０４からライセンス・ファイルをフェッチするために、送信機／受信機１１０によってサーバ１０４に（例えば、無線で）送信されることが出来る。デジタル著作権は、該コンテントがデバイス上でいかにして使用されることが出来るかを説明することが出来る。例えば、コンテントに関連付けられたデジタル著作権は、該コンテントをただ見ること、特定の回数該コンテントを見ること、該コンテントの許容される保存、該コンテントが見られることが出来る回数、等々を制限することが出来る。送信機／受信機は、１つのコンポーネントとして図示されるけれども、それは２つ以上のコンポーネントで構成されることが出来るということは理解されるべきである。
【００３７】
もし利用者デバイス１０２がマルチメディア・コンテントを取得するために認可されれば、サーバは、デバイスの送信機／受信機１１０により受信されることが出来る、１又は複数の対称鍵１１４を用いて応じることが出来る。記憶媒体１１２は、非対称鍵１０８、対称鍵１１４、或いは両方の鍵と関連付けられる情報を検索可能な書式で保持するために構成されることが出来る。例えば、利用者デバイス１０２で受信される第１対称鍵は、鍵対１０８の公開部分を使用して暗号化されることが出来る。幾つかの実施形態では、第１対称鍵は、ある期間の後鍵が無効にされる有効期間と関連付けられることが出来る逆暗号化方式（若しくは、別の無効化方式）を用いて暗号化されることが出来る。受信される第２対称鍵は、複数のコンテント（例えば、マルチメディア・コンテント）と関連付けられることが出来る。幾つかの実施形態では、第２対称鍵は、第１対称鍵を用いて暗号化されることが出来る。
【００３８】
プロセッサ１１０は、対称鍵を逆暗号化するために構成されることが出来る。例えば、第１対称鍵は、非対称鍵対１０８の秘密部分を利用して逆暗号化されることが出来る。幾つかの実施形態に従えば、第１対称鍵と第２対称鍵１１４は、ライセンス・ファイル１１６中に含まれる。そのような実施形態では、プロセッサ１１０は、第２対称鍵をライセンス・ファイルから検索するためにそしてそれを第１対称鍵に基づき対称暗号方式を使用して逆暗号化するために、構成されることが出来る。ディスプレイ１１８は、利用者デバイス１０２と関連付けられることが出来て、プログラムを逆暗号化することは、媒体がディスプレイ上に可視化されることと実質的に同時に実行されることが出来る。
【００３９】
幾つかの実施形態に従えば、第３対称鍵がサーバ１０４によって提供されることが出来、そして、多数のマルチメディア・コンテント中の第１のコンテント及び第２対称鍵と関連付けられることが出来る。プロセッサ１１０は、第２対称鍵を利用して第３対称鍵を逆暗号化するために及び第３対称鍵と関連付けられる多数のコンテントから第１コンテントを逆暗号化するために、構成されることが出来る。幾つかの実施形態では、第３対称鍵は、第１対称鍵を用いて暗号化（及び、逆暗号化）されることが出来る。
【００４０】
その上あるいはそれに代わり、受信機１１０は、ヘッダ情報（例えば、利用者ＩＤ、ＥｐｏｃｈＩＤ）を含むライセンス・ファイル１１６の情報を受信するために、構成されることが出来る。ライセンス・ファイル１１６は、暗号化されたセッション鍵と少なくとも１つのサービス鍵を含むことも出来る。暗号化されたサービス鍵は、記憶媒体１１２中に検索可能な書式で記憶されることが出来る。プロセッサ１１０は、ライセンス・ファイル１１６中の受信されたヘッダ情報に一部は基づいて、プログラム或いはマルチメディア・コンテントを逆暗号化するために構成されることが出来る。逆暗号化は、幾つかの実施形態に従えば、プログラム或いはマルチメディア・コンテントがディスプレイ上に可視化されることと実質的に同時に行われることが出来る
本明細書中で使用されるメモリ、記憶装置、データベース、或いはその他の媒体への何れの参照が、不揮発性及び／又は揮発性メモリを含むことが出来る。適切な不揮発性メモリは、読み出し専用メモリ（read only memory）（ＲＯＭ）、プログラム可能ＲＯＭ（ＰＲＯＭ）、電気的プログラム可能ＲＯＭ（ＥＰＲＯＭ）、電気的消去書き込み可能ＲＯＭ（ＥＥＰＲＯＭ）或いはフラッシュ・メモリを含むことが出来る。揮発性メモリは、ランダム・アクセス・メモリ（random access memory）（ＲＡＭ）を含むことが出来、それは外部キャッシュ・メモリとして働く。限定としてではなく説明として、ＲＡＭは、例えば、スタティックＲＡＭ（static RAM）（ＳＲＡＭ）、ダイナミックＲＡＭ（dynamic RAM）（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、ダブル・データ・レート（double data rate）ＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ）、エンハンスト（enhanced）ＳＤＲＡＭ（ＥＳＤＲＡＭ）、シンクリンク（Synchlink）ＤＲＡＭ（ＳＬＤＲＡＭ）、ラムバス・ダイレクト（Rambus direct）ＲＡＭ（ＲＤＲＡＭ）、ダイレクト・ラムバス・ダイナミック（direct Rambus dynamic）ＲＡＭ（ＤＲＤＲＡＭ）、及びラムバス・ダイナミック（Rambus dynamic）ＲＡＭ（ＲＤＲＡＭ）のような、多数の形態で利用可能である。
【００４１】
図２は、マルチメディア・コンテント配信のための効率的鍵階層構造のためのシステム２００の別のブロック図を図示する。システムは、１又は複数のクライアント或いは利用者デバイス２０２（例えば、移動デバイス）及び、ライセンス・サーバ或いは認証デバイスであることが出来る１又は複数のサーバ２０４を含む。利用者デバイス２０２は、秘密部分２０８と公開部分２１０とを含むことが出来る非対称鍵対２０６を生成するために構成されることが出来る。鍵対２０６の公開部分２１０は、利用者デバイス２０２の利用者が利用者デバイス２０２上の申し込んだマルチメディア・コンテントへの複数の権利を取得するためにサーバ２０４に送信されることが出来る。
【００４２】
サーバ２０４は、利用者デバイス２０２から公開部分２１０を、例えば（送信機／受信機対２１２として示される）受信機２１２により、受信するために構成されることが出来る。サーバ２０４は、利用者デバイス２０２の利用者により申し込まれたコンテント２１６と関連付けられることが出来る少なくとも１つのサービス識別子２１４を（利用者デバイス２０２或いは別のソースから）受信するため又は要求するために構成されることも出来る。
【００４３】
サーバ２０４と関連付けられるプロセッサ２１８は、マルチメディア・コンテントへの接続を取得するために利用者デバイス２０２により利用されることが出来る種々の対称鍵を生成するために構成されることが出来る。例えば、プロセッサ２１８は、第１対称鍵と第２対称鍵２２０とを生成すること及び第２対称鍵を用いて第１対称鍵を暗号化することが出来る。第２対称鍵は、非対称鍵対２０６の公開部分２０８を使用して暗号化されることが出来る。幾つかの実施形態に従えば、第１対称鍵は、利用者によって申し込まれたコンテント２１６と関連付けられる。第１対称鍵を暗号化するために、プロセッサ２１８は、利用者により申し込まれたコンテント２１６と関連付けられる１又は複数のサービス識別子２１４を検索するために及び該検索された１又は複数のサービス識別子２１４に基づいて第２対称鍵を検索するために、構成されることが出来る。幾つかの実施形態に従えば、クライアントは、サーバ２０４又は別のデバイスによって該複数の対称鍵の暗号化の前に認証されることが出来る。対称鍵２２０は、送信機２１２により利用者デバイスに伝達されることが出来る。
【００４４】
幾つかの実施形態に従えば、サーバ２０４は、利用者デバイス２０２からライセンス・ファイル２２２の要求を受信する。該要求は、クライアント暗号化鍵２０８と申し込まれたサービスのリスト２１４を含むことが出来る。プロセッサ２１８は、申し込まれたサービス２１４に関連付けられる暗号化されたセッション鍵２２０を（対称暗号方式によって）生成するために及びクライアントの暗号化鍵２０８を用いて暗号化される暗号化されたセッション鍵２２０を（非対称暗号方式によって）生成するために、構成されることが出来る。サーバ２０４（又は、プロセッサ２１８）と関連付けられる記憶媒体２２４は、該暗号化されたサービス鍵及び該要求されたライセンス・ファイル２２２中に該少なくとも１つの暗号化されたセッション鍵を記憶すること又は保持することが出来る。ライセンス・ファイル２２２は、認証された利用者デバイス２０２へ送られることが出来る。
【００４５】
図３は、プログラム鍵を使用するマルチメディア・コンテントの暗号化３００を図示する。特定のプログラム（平文プログラム３０２）のためのマルチメディア・コンテントは、対称鍵暗号化３０４を用いる対称暗号方式を使用しプログラム鍵ＫＰｒｏｇｒａｍ３０６によって暗号化される。平文は、暗号化操作が適用される前のデータに与えられる名称であり、そして、暗号文は、暗号化操作が適用された後のデータに与えられる名称である。プログラム鍵ＫＰｒｏｇｒａｍ３０６は、それ自身サービス鍵ＫＳｅｒｖｉｃｅ（示されない）によって暗号化され、そして暗号化されたプログラム鍵ＫＰｒｏｇｒａｍ３０６は、プログラムＫＰｒｏｇｒａｍ［Ｐｒｏｇｒａｍ］３０８と共に配送される。プログラミングは、メタデータ部分とコンテント部分とを含むことが出来る。コンテント部分は、プログラム鍵ＫＰｒｏｇｒａｍ３０６により暗号化される。コンテント部分についての情報（例えば、コンテントのデジタル表示、セキュリティ又は権利管理情報、等々）を含む、該プログラミングのメタデータ部分は、暗号化されたプログラム鍵ＫＰｒｏｇｒａｍ３０６を含む。
【００４６】
さて図４を参照すると、サービス鍵を使用するプログラム鍵の暗号化４００が図示される。プログラム鍵ＫＰｒｏｇｒａｍ４０２は、対称鍵暗号化４０６を使用して対応するサービス鍵ＫＳｅｒｖｉｃｅ４０４により暗号化される。これは暗号化されたプログラム鍵（ＫＳｅｒｖｉｃｅ［ＫＰｒｏｇｒａｍ］）４０８を作る。それぞれのプログラム鍵ＫＰｒｏｇｒａｍ４０２を対応するサービス鍵ＫＳｅｒｖｉｃｅ４０４を使用して防護することによって、単一のプログラムが異なる複数のサービスに対して再利用されることが出来て、該異なる複数のサービスに対して該プログラムを暗号化するために使用される該プログラム鍵は、複製されるべき唯一のデータである。
【００４７】
限定目的ではなく例示目的のために、第１利用者“Ａ”は、ＥＳＰＮサービスに申し込み、そして第２利用者“Ｂ”は、ＣＮＮサービスとＥＳＰＮサービス両方に申し込んでいる。両サービスで“放送”されるべきプログラム、例えば、商業広告（Ａｄ）プログラムは、Ａｄプログラム鍵ＫＳｅｒｖｉｃｅＡｄを用いて暗号化され、暗号化されたＡｄプログラムＫＰｒｏｇｒａｍＡｄ（Ａｄ  Ｐｒｏｇｒａｍ）を創成する。Ａｄプログラム鍵ＫＰｒｏｇｒａｍＡｄは、ＥＳＰＮサービス鍵ＫＳｅｒｖｉｃｅＥＳＰＮによって暗号化され、ＥＳＰＮサービス暗号化されたＡｄプログラム鍵ＫＳｅｒｖｉｃｅＥＳＰＮ（ＫＰｒｏｇｒａｍＡｄ）を創成する。Ａｄプログラム鍵ＫＰｒｏｇｒａｍＡｄは又、ＣＮＮサービス鍵ＫＳｅｒｖｉｃｅＣＮＮによっても暗号化され、ＣＮＮサービス暗号化されたＡｄプログラム鍵ＫＳｅｒｖｉｃｅＣＮＮ（ＫＰｒｏｇｒａｍＡｄ）を創成する。ＥＳＰＮサービス暗号化されたＡｄプログラム鍵ＫＳｅｒｖｉｃｅＥＳＰＮ（ＫＰｒｏｇｒａｍＡｄ）は、暗号化されたＡｄプログラムＫＰｒｏｇｒａｍＡｄ（Ａｄ  Ｐｒｏｇｒａｍ）と共に第１利用者Ａと第２利用者Ｂとに配信される。第１利用者Ａと第２利用者Ｂは、ＥＳＰＮサービス鍵ＫＳｅｒｖｉｃｅＥＳＰＮを使用することによってＫＰｒｏｇｒａｍＡｄが検索された後に、ＥＳＰＮサービス中のＡｄプログラムに接続することが出来る。しかしながら、Ａｄプログラムを暗号化するために同一の鍵（ＫＰｒｏｇｒａｍＡｄ）が使用されるという理由で、該Ａｄプログラムは、暗号化されたＡｄプログラムＫＰｒｏｇｒａｍＡｄ（Ａｄ  Ｐｒｏｇｒａｍ）の別の複製をＣＮＮサービスに対して配布することを必要とせずに、ＣＮＮサービスを介して第２利用者Ｂによっても接続可能である。ＣＮＮサービス暗号化されたＡｄプログラム鍵ＫＳｅｒｖｉｃｅＣＮＮ（ＫＰｒｏｇｒａｍＡｄ）のみが配布されるべきである。このようにして、Ａｄプログラムは、利用者が（ＥＳＰＮサービス暗号化されたＡｄプログラム鍵ＫＳｅｒｖｉｃｅＥＳＰＮ（ＫＰｒｏｇｒａｍＡｄ）からＡｄプログラム鍵ＫＰｒｏｇｒａｍＡｄを検索すること／逆暗号化することによって）ＥＳＰＮサービスに接続しようと、（ＣＮＮサービス暗号化されたＡｄプログラム鍵ＫＳｅｒｖｉｃｅＣＮＮ（ＫＰｒｏｇｒａｍＡｄ）からＡｄプログラム鍵ＫＰｒｏｇｒａｍＡｄを検索すること／逆暗号化することによって）ＣＮＮサービスに接続しようと、第２利用者Ｂによって逆暗号化されることが出来る。
【００４８】
図５は、セッション鍵を使用するサービス鍵の暗号化５００を図示する。サービス鍵ＫＳｅｒｖｉｃｅ５０２は、対称鍵暗号化方式５０６を用いてセッション鍵ＫＳｅｓｓｉｏｎ５０４によって暗号化され、暗号化されたサービス鍵（ＫＳｅｓｓｉｏｎ［ＫＳｅｒｖｉｃｅ］）５０８を創成する。幾つかの実施形態では、セッション鍵ＫＳｅｓｓｉｏｎ５０４は、複数のサービス鍵ＫＳｅｒｖｉｃｅ５０２を扱う、ここで該複数のサービス鍵ＫＳｅｒｖｉｃｅ５０２は、ライセンス・ファイル５１０で配信される。このようにして、特定の利用者に提供されるサービスは、これは該利用者によって申し込まれたサービスに基づいていることが出来、ライセンス・ファイル５１０により定義される。その上、それぞれのライセンス・ファイル５１０及びライセンス・ファイル５１０中のサービス鍵ＫＳｅｒｖｉｃｅ５０２は、ある事前に決定された期間有効であることが出来、その期間は“エポック（Epoch）”と呼ばれることが出来る。このような事前に決定された期間の後、ライセンス・ファイル５１０及びライセンス・ファイル５１０中のサービス鍵ＫＳｅｒｖｉｃｅ５０２は、期限満了とされる或いは失効させられる。このような鍵の失効は、認可されてない利用者に知られるようになった鍵がもたらす可能性があるシステム損壊を阻止する或いは緩和することが出来る。所与のエポックのためのサービス鍵は、視聴時期が所与のエポックで規定されていた、コンテントの失効時刻の後デバイスから除去されるべきである。
【００４９】
サービス鍵ＫＳｅｒｖｉｃｅは、クライアントの暗号化鍵ＥＤｅｖｉｃｅを使用して非対称暗号化方式により暗号化されることが出来るけれども、この暗号化方法（及びその関連付けられる逆暗号化方法）は、遅いことがあり得る。そこで、セッション鍵ＫＳｅｓｓｉｏｎがクライアント／ライセンス／エポックそれぞれに対して創成されることが出来て、該セッション鍵ＫＳｅｓｓｉｏｎのみが非対称暗号方式を使用して保護される。利用者によって選択されている“チャネル”の表示が速くなるようにクライアント上でサービス鍵ＫＳｅｒｖｉｃｅの逆暗号化が速くなるために（例えば、利用者が“チャネル・サーフィン”している場合該利用者によって選択されたサービスと関連付けられるプログラムを逆暗号化するために必要とされる特別なプログラム鍵の逆暗号化は速いものであるべき）、全てのサービス鍵ＫＳｅｒｖｉｃｅは、そのエポックに対して単一のセッション鍵ＫＳｅｓｓｉｏｎによって保護される。該セッション鍵ＫＳｅｓｓｉｏｎは、サービス鍵ＫＳｅｒｖｉｃｅを保護するために対称暗号方式を実行する。この方法において、サービス鍵ＫＳｅｒｖｉｃｅは、それ等が対称暗号方式を使用してクライアント上に暗号化された形式で記憶されるので、可能な限り長く保護される。幾つかの実施形態では、暗号化されたセッション鍵ＫＳｅｓｓｉｏｎは、クライアントが起動されるのと実質的に同時に、（非対称暗号方式を使用して）逆暗号化され、そして該逆暗号化されたセッション鍵ＫＳｅｓｓｉｏｎは、クライアント上でキャッシュに蓄えられ、従ってそれは、毎回逆暗号化される必要はなく（非対称暗号方式よりも比較的速い、対称暗号方式を使用して）１又は複数のサービス鍵ＫＳｅｒｖｉｃｅを逆暗号化するために使用されることが出来る。
【００５０】
図６は、クライアント暗号化鍵を使用するセッション鍵の暗号化６００を図示する。セッション鍵ＫＳｅｓｓｉｏｎ６０２は、非対称鍵暗号化方式６０６を使用してクライアントへの配送のためにクライアントの即ちデバイスの暗号化鍵ＥＤｅｖｉｃｅ６０４、それは公開鍵である、によって暗号化される。暗号化されたセッション鍵（ＥＤｅｖｉｃｅ［ＫＳｅｓｓｉｏｎ］）が配送され、そして該クライアントは、クライアントの逆暗号化鍵ＤＤｅｖｉｃｅ、それは秘密鍵である、を使用してセッション鍵ＫＳｅｓｓｉｏｎ６０２を逆暗号化することが出来る。
【００５１】
さて図７を参照すると、デジタル著作権管理（ＤＲＭ）システム７００の例示的なアーキテクチャが図示される。幾つかの実施形態では、異なる様々な型の鍵のレイヤ化、即ち、階層構造は、セッション鍵ＫＳｅｓｓｉｏｎを暗号化するクライアント暗号化鍵ＥＤｅｖｉｃｅに基礎を置き、該セッション鍵ＫＳｅｓｓｉｏｎは、次にサービス鍵ＫＳｅｒｖｉｃｅを暗号化する。更に、該サービス鍵ＫＳｅｒｖｉｃｅは、マルチメディア・コンテントを保護するために使用されるプログラム鍵ＫＰｒｏｇｒａｍを暗号化するために使用される。このようにして、本明細書に記載されるＤＲＭシステム７００は、コンテントのデジタル著作権を保護するために鍵の階層構造を利用することが出来る。幾つかの実施形態では、高度暗号化標準−カウンタ（Counter）（ＡＥＳ−ＣＴＲ）が対称鍵アルゴリズムとして使用される、ここにＡＥＳは、米連邦情報処理規格（US Federal Information Processing Standards）（ＦＩＰＳ）ＰＵＢ１９７として米国連邦標準技術局（the National Institute of Standards and Technology）（ＮＩＳＴ）により採用された暗号技術規格である。
【００５２】
ＤＲＭシステム７００に含まれるものは、クライアント７０２（システム７００中に存在可能な全てのクライアントの代表）、ＤＲＭサーバ７０４、ライセンス鍵サーバ７０６、及びサブスクリプション・サーバ７０８である。幾つかの実施形態では、１組の暗号方式のシステム・モジュール及びＤＲＭシステム・モジュールは、基盤になる暗号化／逆暗号化コンポーネント及びハッシング／認証コンポーネントを提供して、クライアント７０２、ＤＲＭサーバ７０４、ライセンス鍵サーバ７０６、及びサブスクリプション・サーバ７０８で使用される。その上、該１組の暗号方式のシステム・モジュール及びＤＲＭシステム・モジュールは、ライセンスの検索／ダウンロード機能及びクライアント７０２のための安全なファイル−記憶機能を提供することも出来る。そのような記憶装置は、クライアント鍵データベース７１０と関連付けられることが出来る。
【００５３】
該１組の暗号方式のシステム・モジュール及びＤＲＭシステム・モジュールによって提供される機能は、異なる一般的な範疇に分割されることが出来る、それは公開鍵暗号化方式機能、メディア暗号法機能、及び認証機能を含むことが出来る。異なる範疇の機能は、互いに影響し合って、そのような機能を、安全なファイル記憶として、乱数発生（random number generation）（ＲＮＧ）として、及び、組込みファイル・システム（embedded file system）（ＥＦＳ）における鍵の検索と記憶として、提供する。例えば、認証機能は、複数の認証鍵を生成するための、及び、１つの認証鍵を使用してクライアントとサーバにおいてメッセージに署名及び検証するための、機能を提供する。認証機能は、又該認証鍵をＥＦＳ中に記憶してクライアント７０２で必要とされる場合、それを検索する機能も提供する。
【００５４】
幾つかの実施形態では、署名と検証のために使用されるアルゴリズムは、ＨＭＡＣ、鍵付きハッシュ・アルゴリズムであり、そのＨＭＡＣは、幾つかの実施形態では、メッセージ認証コードを生成するためにメッセージ・ダイジェスト・バージョン５（Message Digest Version 5）（ＭＤ５）とともに認証鍵を使用する。例えば、クライアント／サーバ通信の期間に使用される認証鍵ＱＤｅｖｉｃｅは、鍵付きハッシュ・メッセージ認証コード（ＨＭＡＣ）であって、それは秘密鍵との組み合わせで暗号学的ハッシュ関数を使用して計算されるメッセージ認証コードの１つの型である。何れかのＭＡＣを用いるので、該コードは、データの完全性とメッセージの真正性の双方を実質的に同時に検証するために使用されることが出来る。メッセージ・ダイジェスト・アルゴリズム５（ＭＤ５）又はセキュア・ハッシュ・アルゴリズム１（ＳＨＡ−１）のような任意の繰り返し暗号学的ハッシュ関数がＨＭＡＣの計算において使用されることが出来る、その結果、ＭＡＣアルゴリズムは、従ってＭＭＡＣ−ＭＤ５又はＨＭＡＣ−ＳＨＡ−１と呼ばれる。ＨＭＡＣの暗号方式としての強さは、基盤となるハッシュ関数の暗号方式の強さ及び鍵の大きさと品質に依存する。
【００５５】
メディア暗号法の機能の範疇は、プログラム鍵ＫＰｒｏｇｒａｍ、サービス鍵ＫＳｅｒｖｉｃｅ、及びセッション鍵ＫＳｅｓｓｉｏｎを生成するための機能を提供し、そしてこれ等の鍵を使用してメディアと鍵を暗号化しそして逆暗号化する。幾つかの実施形態では、該機能は、暗号方式のコアによって提供される。全ての暗号化関数と逆暗号化関数は、セッション鍵ＫＳｅｓｓｉｏｎの暗号化／逆暗号化に対する場合を除いて、対称暗号方式を用いて実行されることが出来る。本明細書で論じられるように、セッション鍵ＫＳｅｓｓｉｏｎの暗号化／逆暗号化は、非対称暗号方式を使用して実行される。
【００５６】
クライアント７０２は、起動プロセスの一部として公開鍵／秘密鍵対を生成することが出来る。幾つかの実施形態では、公開鍵暗号方式の機能範疇と認証の機能範疇は、クライアント７０２が自身をＤＲＭシステム７００におけるサーバに登録するプロセスである、クライアントの起動呼プロセス中に使用される。クライアントの起動呼プロセスは、図９を参照して下記で更に詳細に論じられる。
【００５７】
図８は、ＤＲＭシステムの動作のための方法８００を図示する。８０２では、公開鍵／秘密鍵対が生成される。鍵対のこのような生成は、クライアントが起動されるのと実質的に同時に行われることが出来て、該鍵対は、クライアント上に記憶されることが出来る。公開鍵は、サブスクリプション・サーバに通信されることも出来る。クライアントは、公開鍵／秘密鍵対の生成を介して暗号学的アイデンティティの所有者であると考えられることが出来る。本明細書で論じられるように、公開鍵の提供は、クライアントへの通信の安全なチャネルを提供する。具体的には、公開鍵暗号方式の機能は、クライアント暗号化鍵ＥＤｅｖｉｃｅとクライアント逆暗号化鍵ＤＤｅｖｉｃｅを生成する機能を提供し、そしてそれ等の鍵をクライアント上に記憶する。幾つかの実施形態では、クライアント暗号化鍵ＥＤｅｖｉｃｅは、公開鍵であり、そしてクライアント逆暗号化鍵ＤＤｅｖｉｃｅは、秘密鍵であって、これらの鍵は、公開鍵／秘密鍵対を構成する。このようにして、該起動プロセスは、これ等の鍵を生成させ、ＥＦＳ中に配置させ、そしてクライアント鍵の公開部分ＥＤｅｖｉｃｅをサブスクリプション・サーバ上のクライアント鍵データベース中に組み込まれるようにする。
【００５８】
８０４では、クライアントは、公開鍵ＥＤｅｖｉｃｅを送ることによってサブスクリプション・サーバに接続することが出来、そしてサブスクリプション・サーバは、クライアント鍵データベースを更新するために該鍵をライセンス・サーバに送ることが出来る。該鍵対のこの公開部分は、ライセンス・ファイル或いはクライアントへ送られる他の秘密情報を暗号化するために後に使用される。起動プロセスは、又利用者識別子（user identifier）（ＵｓｅｒＩＤ）がクライアントに割り当てられるようにする。クライアントのクライアント暗号化鍵ＥＤｅｖｉｃｅは、この特別なＵｓｅｒＩＤに関連付けられる。幾つかの実施形態では、ライセンス鍵サーバとクライアントの全ての更なる通信は、正しいライセンスを検索するためにこのＵｓｅｒＩＤを使用する。
【００５９】
クライアントが認証された後で又はそれと実質的に同時に、サブスクリプション・サーバは、ＤＲＭサーバにクライアントに関する認証鍵ＱＤｅｖｉｃｅの要求を送る。ＤＲＭサーバは、認証鍵ＱＤｅｖｉｃｅを生成して、それをサブスクリプション・サーバに戻す。サブスクリプション・サーバは、ＥＤｅｖｉｃｅを用いて認証鍵ＱＤｅｖｉｃｅを暗号化して、該暗号化された認証鍵ＥＤｅｖｉｃｅ（ＱＤｅｖｉｃｅ）をクライアントに返送する。クライアントは、該サーバを認証の後、該暗号化された認証鍵ＥＤｅｖｉｃｅ（ＱＤｅｖｉｃｅ）をクライアントのＥＦＳ中に記憶する。クライアントとサーバは、互いからのメッセージを認証するために使用されることが出来る認証鍵を今や共有する。一旦クライアントが起動されてしまうと、ＤＲＭシステム中の諸サービスに接続するために必要とされるライセンス・ファイルは、クライアントによって取得されることが出来る。幾つかの実施形態では、クライアントが該メディア・コンテントに接続し続けるために、サービス鍵の新セットを含む新ライセンス・ファイルとＫＳｅｒｖｉｃｅは、事前に決定された間隔（例えば、エポックの有効期限）で取得される。
【００６０】
８０６では、ライセンス鍵サーバは、ライセンス・ファイルをフェッチするためにクライアントにより接続される。クライアントがライセンス・ファイルをフェッチするためのプロセス図は、図１０を参照して下記で説明される。一旦取得されると、ライセンス・ファイルは、クライアントにおいてその場所に記憶されることが出来て、後でそこに記憶されたサービス鍵ＫＳｅｒｖｉｃｅとセッション鍵ＫＳｅｓｓｉｏｎとの検索のために用いられる。要求を処理するために、８０８において、ライセンス鍵サーバは、クライアントが真正且つ認可されたクライアントであるかどうかを、サブスクリプション・サーバに連絡することにより、及びクライアントのクライアント暗号化鍵ＥＤｅｖｉｃｅと認証鍵ＱＤｅｖｉｃｅと更にクライアントにより申し込まれているサービスのリスト（ＳｅｒｖｉｃｅＩＤｓ）とをＵｓｅｒＩＤに基づき検索することによって、判定することが出来る。このようにして、サブスクリプション・サーバは、クライアントの認証情報をクライアントの認証鍵ＱＤｅｖｉｃｅの形式で提供する。一旦これ等の鍵が検索されると、ライセンス鍵サーバは、クライアントのクライアント暗号化鍵ＥＤｅｖｉｃｅを使用して署名を検査することが出来る。
【００６１】
もしクライアントが認証されるならば、次にライセンス・ファイルの要求がＤＲＭサーバに転送される。このようにして、ＤＲＭサーバは、クライアントが認証され認可された後で接続されるだけである。具体的には、８１０において、クライアントのクライアント暗号化鍵ＥＤｅｖｉｃｅとクライアントにより申し込まれているサービスのリストがＤＲＭサーバに送られる。ＤＲＭサーバは、該ライセンス・ファイルに対するセッション鍵ＫＳｅｓｓｉｏｎを生成し、そして該セッション鍵ＫＳｅｓｓｉｏｎを使用して、クライアントにより申し込まれているサービスに対する全てのサービス鍵ＫＳｅｒｖｉｃｅを、ＳｅｒｖｉｃｅＩＤｓによって決められたように、暗号化する。サービス鍵ＫＳｅｒｖｉｃｅの暗号化は、対称暗号方式によって実行される。ＤＲＭサーバは、クライアントのクライアント暗号化鍵ＥＤｅｖｉｃｅを使用してセッション鍵ＫＳｅｓｓｉｏｎも暗号化する。上述で論じられたように、この暗号化は、非対称暗号方式を使用して実行される。
【００６２】
８１２では、暗号化されたセッション鍵ＫＳｅｓｓｉｏｎと暗号化されたサービス鍵ＫＳｅｒｖｉｃｅがライセンス鍵サーバによってライセンス・ファイル中に、その他のヘッダ情報と共に記憶される。該ヘッダ情報は、例えば、ＵｓｅｒＩＤ、その間サービス鍵ＫＳｅｒｖｉｃｅが有効であるＥｐｏｃｈＩＤ、及びエポックの開始と終了時間、である。このようにして、複数のライセンス・ファイルが事前に決定された期間においてクライアントのために生成されることが出来て、それぞれのライセンス・ファイルは、その特別なエポックの間有効であるサービス鍵ＫＳｅｒｖｉｃｅを、該ライセンス・ファイルに対して生成されたセッション鍵ＫＳｅｓｓｉｏｎを用いて暗号化されたサービス鍵ＫＳｅｒｖｉｃｅと共に含むことが出来る。例えば、利用者がサブスクリプションを変更すると、クライアントは、変更された申し込まれたプログラミングと関連付けられるサービス鍵ＫＳｅｒｖｉｃｅの変更されたセットを入手するはである。サービス鍵ＫＳｅｒｖｉｃｅのこの変更されたセットは、新しく生成され（且つ暗号化された）セッション鍵ＫＳｅｓｓｉｏｎを含む新しいライセンス・ファイルと共に配送される。
【００６３】
例示的なライセンス・ファイルが下記に示される。
【表１】
0005425884.tif 000002
【００６４】
８１４では、ライセンス・ファイルがライセンス鍵サーバによってクライアントへ返送される。幾つかの実施形態では、最終的な結果は、クライアントにライセンス・ファイル（複数のサービス鍵ＫＳｅｒｖｉｃｅを含む）と上述のように（該エポックの間）安全化されたセッション鍵ＫＳｅｓｓｉｏｎとを提供することである。
【００６５】
８１６では、プログラムを逆暗号化するために、クライアントは、逆暗号化されたプログラム鍵ＫＰｒｏｇｒａｍを求めるための鍵をフェッチするために関数呼出しにおいてＥｐｏｃｈＩＤ、ＳｅｒｖｉｃｅＩＤ、ＰｒｏｇｒａｍＩＤ及び暗号化されたプログラム鍵ＫＰｒｏｇｒａｍを使用する。例えば、ＥｐｏｃｈＩＤ  Ｙ、ＳｅｒｖｉｃｅＩＤ  Ｘ、ＰｒｏｇｒａｍＩＤ  Ｚ及び暗号化されたプログラム鍵ＫＳｅｒｖｉｃｅＸ（ＫＰｒｏｇｒａｍＺ）が与えられると、逆暗号化されたプログラム鍵ＫＰｒｏｇｒａｍＺが求められることが出来る。プログラム逆暗号化のシーケンスは、図１１を参照して下記で説明される。
【００６６】
８１８では、クライアントは、該メディア・コンテントを逆暗号化して再生する。幾つかの実施形態では、プログラム鍵ＫＰｒｏｇｒａｍを使用するコンテントの実際の対称暗号方式逆暗号化は、該メディアがクライアント上のプレーヤ（player）によってディスプレイ上に可視化されるのと実質的に同時に行われる。暗号化されたプログラム・ファイル名とプログラム鍵ＫＰｒｏｇｒａｍは、次にインターフェースを使用してプレーヤに供給される。メディアの逆暗号化は、仮想ファイルＩ／Ｏインターフェースを利用することが出来、それは暗号方式のコア・インプリメンテーションの周りに仮想ファイルＩ／Ｏラッパーを提供しそしてプレーヤへの逆暗号化プロセスを単純化する。
【００６７】
図９は、クライアントの起動呼プロセス流れ９００を図示する。公開鍵暗号方式の機能は、クライアント鍵を生成する機能を提供し、クライアント鍵を使用してセッション鍵を暗号化及び逆暗号化することが出来る。幾つかの実施形態では、公開鍵暗号方式の機能は、暗号化されたプログラム鍵を逆暗号化するための且つ特定のエポックの間セッション鍵をキャッシュに蓄えるための、ラッパー機能も又提供する。幾つかの実施形態では、クライアント鍵は、公開鍵と秘密鍵双方を有する、ロン・リベスト(Ron Rivest)、アディ・シャミア(Adi Shamir)、レン・エーデルマン(Len Adleman)（ＲＳＡ）によって説明された方式に基づくアルゴリズムを使用して生成される。
【００６８】
ＤＲＭクライアント９０２は、例えば、フォーン・インフォ・ハッシュ（Phone Info Hash）９０６を介してサブスクリプション・サーバ９０４にクライアント暗号化鍵ＥＤｅｖｉｃｅを伝達する。サブスクリプション・サーバ９０４は、９０８において、利用者デバイスを認証することが出来て、そしてクライアント９０２が認証されるのと実質的に同時に、９１２において、クライアント暗号化鍵ＥＤｅｖｉｃｅをＤＲＭサーバ９１０に転送することが出来る。ＤＲＭサーバ９１０は、９１４において、認証鍵ＥＤｅｖｉｃｅ（ＱＤｅｖｉｃｅ）及び認証鍵ＱＤｅｖｉｃｅに関連付けられるクライアント暗号化鍵を用いて応答する。認証鍵ＥＤｅｖｉｃｅ（ＱＤｅｖｉｃｅ）に関連付けられるクライアント暗号化鍵及びフォーン・インフォ・ハッシュは、９１６において、ＤＲＭクライアント９０２に送られる。
【００６９】
クライアントがライセンス・ファイルをフェッチするためのプロセス図１０００が図１０に示される。幾つかの実施形態では、ＤＲＭクライアント１００２は、ライセンス鍵サーバに利用者の識別子（例えば、ＵｓｅｒＩＤ）及びクライアント１００２が該ライセンス・ファイルをフェッチすることを望むエポックの識別子（例えば、ＥｐｏｃｈＩＤ）を提供することによって、ライセンス鍵サーバ１００４からライセンス・ファイルをフェッチする。利用者識別子とエポック識別子は、１００６において、ライセンス要求と共に送られる。その上、クライアント１００２は、ライセンス鍵サーバ１００４にクライアント１００２のクライアント逆暗号化鍵ＤＤｅｖｉｃｅを用いて署名されたクライアント１００２の認証鍵ＱＤｅｖｉｃｅを提供することが出来る。
【００７０】
ライセンス鍵サーバ１００４は、１０１０において、サブスクリプション・サーバ１００８からのクライアント認証を要求する。サブスクリプション・サーバ１００８は、１０１２において、クライアント認証（例えば、サービスＩＤｓ、ＥＤｅｖｉｃｅ、ＱＤｅｖｉｃｅ）の要求に応答することが出来る。クライアント１００２は、１０１４において、認証され、そしてサービス鍵（例えば、サービスＩＤＳ、ＥｐｏｃｈＩＤ、ＥＤｅｖｉｃｅ）の要求が、１０１８において、ＤＲＭサーバ１０１６に送られる。
【００７１】
１０２０において、暗号化されたセッション鍵ＫＳｅｓｓｉｏｎ及び暗号化されたサービス鍵ＫＳｅｒｖｉｃｅがサーバ１０１６によって生成される。１０２２では、サービス鍵（暗号化されたセッション鍵ＫＳｅｓｓｉｏｎ、暗号化されたサービス鍵ＫＳｅｒｖｉｃｅ）の要求への応答がライセンス鍵サーバ１００４に送られる。ライセンスの要求への応答が、１０２４において、クライアント１００２に送られる。一旦取得されると、１０２６では、ライセンス・ファイルは、クライアント１００２においてその場所に記憶されることが出来て、そこに記憶されたサービス鍵ＫＳｅｒｖｉｃｅとセッション鍵ＫＳｅｓｓｉｏｎの後の検索のために用いられる。
【００７２】
図１１は、種々の鍵を用いるプログラム逆暗号化シーケンス１１００を図示し、ここでは、内部的には、クライアントは、ＥｐｏｃｈＩＤに関連付けられるエポックに対して要求されるライセンスが既にフェッチされたことを仮定する。クライアントは、１１０２において、過去に記憶されたクライアント逆暗号化鍵ＤＤｅｖｉｃｅを使用してライセンス・ファイル中のセッション鍵ＥＤｅｖｉｃｅ（ＫＳｅｓｓｉｏｎ）を逆暗号化し、１１０４において、該逆暗号化された（平文の）セッション鍵ＫＳｅｓｓｉｏｎを使用してライセンス・ファイル中のサービスＸに対するサービス鍵ＫＳｅｓｓｉｏｎ（ＫＳｅｒｖｉｃｅＸ）を逆暗号化し、そして、１１０６において、サービスＸに対する逆暗号化されたサービス鍵ＫＳｅｒｖｉｃｅＸを使用してプログラムＺに対する暗号化されたプログラム鍵ＫＳｅｒｖｉｃｅＸ（ＫＰｒｏｇｒａｍＺ）を逆暗号化する。クライアントは、次に１１０８において、プログラムの逆暗号化のために平文でのプログラム鍵ＫＰｒｏｇｒａｍＺを返す。このようにして、幾つかの実施形態では、クライアントにおいてプログラムを逆暗号化するために、クライアントは、利用者がシステム内で起動されそして適切なクライアント鍵ファイル（例えば、クライアント暗号化鍵ＥＤｅｖｉｃｅとクライアント逆暗号化鍵ＤＤｅｖｉｃｅ）を有する、と仮定する。クライアントは、又該特定のエポックに対するライセンス・ファイルがクライアントにダウンロード完了していると仮定する。もしこれらの要求が有効でなければ、ＤＲＭシステムは、誤りを通報することが出来る。もし（クライアントがシステム内で起動された時に生成された鍵ファイルとは別の）異なる鍵ファイルがクライアント上に存在するならば、誤りのない逆暗号化が起きても出力データは、有用なデータではない。
【００７３】
クライアント上で多数のコンテントのためのデジタル著作権管理を実行するための方法１２００が図１２に図示される。説明を単純にする目的で、本明細書で開示される方法は、一連のブロックとして示されそして説明されるけれども、請求項に記載される内容は、ブロックの番号や順序によって限定されないことが理解されそして認識されるべきである、というのは、ある複数のブロックは、異なる順番で及び／又は本明細書で図示され説明されるものとは異なるブロックを並列的に用いて生じることが可能だからである。その上、必ずしも全ての図示されたブロックが下記に記載される方法を実現するために必要とされるわけではない。該ブロックに関連付けられる機能は、ソフトウェア、ハードウェア、それ等の組合せ或いはその他任意の適切な手段（例えば、デバイス、システム、プロセス、コンポーネント）によって実現されることが出来ることが認識されるべきである。加えて、本明細書全体に亘って開示される方法は、このような方法を種々のデバイスに輸送し移転することを容易にする製品上に、記憶されることが出来るということが更に認識されるべきである。当業者等は、方法が一連の相互に関係する状態又は事象として、例えば、ステート・ダイアグラムで、別の形で表わされることが出来ることを理解し認識する。
【００７４】
方法１２００は、１２０２で開始し、そこでは、例えば、起動プロセスの一部として、非対称鍵対が生成される。非対称鍵対の生成は、公開鍵又は公開部分及び秘密鍵又は秘密部分を生成することを含むことが出来る。１２０４では、非対称鍵対の公開部分がサーバ、デジタル著作権管理機関、ライセンス・サーバ、或いはその他（本明細書でサーバと呼ばれる）、に伝送される。サーバは、第１対称鍵と第２対称鍵を暗号化して、該暗号化された対称鍵をクライアントに転送することが出来る。１２０６では、第１対称鍵と第２対称鍵がクライアントに受信される。
【００７５】
第１対称鍵は、非対称鍵対の公開部分を用いて暗号化されることが出来る。幾つかの実施形態では、第１対称鍵は、事前に決定された間隔の間有効である逆暗号化方式（例えば、時間あるいは間隔を測定するための他の方式）を用いて暗号化されることが出来る。第２対称鍵は、多数のコンテントに関連付けられることが出来る。幾つかの実施形態では、第２対称鍵は、第１対称鍵を用いて暗号化されることが出来る。
【００７６】
幾つかの実施形態では、１２０８において、方法１２００は継続することが出来て、そこでは、第１対称鍵、第２対称鍵、或いは両対称鍵が逆暗号化される。例えば、第１対称鍵は、非対称鍵対の秘密部分を使用して逆暗号化されることが出来る。もし第２対称鍵が第１対称鍵を用いて暗号化されているならば、第２対称鍵の逆暗号化は、第１対称鍵に基づいて行われることが出来る。
【００７７】
１２１０では、第３対称鍵を受信することが幾つかの実施形態に従い方法１２００に含まれることが出来る。第３対称鍵は、多数のコンテントに関連付けられることが出来る。サーバは、第１対称鍵を用いて第３対称鍵を暗号化することが出来る。１２０８において、方法１２００は継続し、そこでは、少なくとも第３対称鍵は、第１対称鍵に基づいて逆暗号化されている。
【００７８】
幾つかの実施形態に従い、第１対称鍵と第２対称鍵は、ライセンス・ファイルの中に含まれることが出来る。もしライセンス・ファイルの中に含まれていれば、１２０８において、第１対称鍵に基づいて行われる第２対称鍵を逆暗号化することは、該ライセンス・ファイルから第２対称鍵を検索すること及び対称暗号方式を用いて第２対称鍵を逆暗号化することを含む。幾つかの実施形態では、多数のコンテント中の第１コンテントと第２対称鍵は、第３対称鍵と関連付けられる。第３対称鍵は、逆暗号化された第２対称鍵を用いて逆暗号化されることが出来る、そして第３対称鍵と関連付けられる多数のコンテントから第１コンテントが逆暗号化されることが出来る。
【００７９】
図１３は、サーバ上で多数のコンテントのためのデジタル著作権管理を実行するための方法１３００を図示する。方法１３００は１３０２で開始し、そこでは非対称鍵対の公開部分がクライアントから受信される。１３０４では、第１対称鍵が第２対称鍵を使用して暗号化される。第１対称鍵は、多数のコンテントに関連付けられることが出来る。第１対称鍵を暗号化することは、クライアントによって申し込まれている多数のコンテントに関連付けられる多数のサービス識別子（ＩＤ）を検索することを含む。第１対称鍵は、該検索された多数のサービスＩＤに基づいて検索されることが出来る。幾つかの実施形態では、第１対称鍵を暗号化する前に、１３０６において、クライアントが認可される。方法１３００は１３０８へと継続し、そこでは、第２対称鍵は、非対称鍵対の公開部分を用いて暗号化される。幾つかの実施形態に従い、第１対称鍵と第２対称鍵は、１３１０において、クライアントに転送されることが出来る。
【００８０】
さて図１４を参照すると、クライアント上で多数のコンテントのためのデジタル著作権管理を実行するためのシステム１４００が図示される。システム１４００は、機能ブロックとして表わされ、それは、プロセッサ、ソフトウェア或いはそれ等の組合せ（例えばファームウェア）により実現される機能を表す機能ブロックであることが出来る。
【００８１】
システム１４００は、公開鍵と秘密鍵を生成するために構成されることが出来る生成モジュール１４０２を含む。それ等の鍵は、非対称暗号方式を利用して生成されることが出来る。該公開鍵をライセンス・ファイルの要求と共にライセンス・サーバに伝達するために構成されることが出来る伝達モジュール１４０４も又含まれる。受信モジュール１４０６は、要求されたライセンス・ファイルを受信するために構成されることが出来る。該ライセンス・ファイルは、例えば、サーバから受信されることが出来る。ライセンス・ファイルに含まれるヘッダ情報に一部は基づいてマルチメディア・コンテントを逆暗号化するために構成されることが出来る逆暗号化モジュール１４０８も又含まれる。幾つかの実施形態に従えば、システム１４００は、ライセンス・ファイルに含まれるサービス鍵を記憶するために構成されることが出来る記憶モジュール（示されない）も又含むことが出来る。幾つかの実施形態に従えば、マルチメディア・コンテントが逆暗号化されるのと実質的に同時にディスプレイ・スクリーン上にメディアを可視化するために構成されることが出来る可視化モジュール（示されない）がシステムに含まれる。
【００８２】
図１５は、サーバ上で多数のコンテントのためのデジタル著作権管理を実行するためのシステム１５００を図示する。システム１５００は、機能ブロックとして表わされ、それはプロセッサ、ソフトウェア或いはそれ等の組合せ（例えばファームウェア）により実現される機能を表す機能ブロックであることが出来る。
【００８３】
システム１５００は、クライアントから非対称鍵対の少なくとも一部を受信するために構成されることが出来る受信モジュール１５０２を含む。受信される部分は、公開部分であることが出来る。第１対称鍵と少なくとも第２対称鍵を創成するために構成されることが出来る創成モジュール１５０４も又含まれる。第１対称鍵は、複数のコンテントに関連付けられることが出来る。システム１５００は、少なくとも第２対称鍵を暗号化するために第１対称鍵を利用するために構成されることが出来る利用モジュール１５０６を更に含むことが出来る。非対称鍵対の少なくとも一部を用いて第２対称鍵を暗号化するために構成されることが出来る暗号化モジュールも又含まれる。幾つかの実施形態に従えば、第１対称鍵と少なくとも第２対称鍵を創成する前にクライアントを認証するために構成されることが出来る認証モジュール（示されない）がある。幾つかの実施形態に従えば、暗号化された第１対称鍵と暗号化された第２対称鍵とをクライアントに伝送するために構成されることが出来る伝送モジュール（示されない）がある。
【００８４】
さて図１６を参照すると、無線デバイス又は無線端末１６００の可能な構成の概念的なブロック図が図示される。当業者等が認めるように、端末１６００の精確な構成は、具体的なアプリケーションと全体的な設計上の制約に依存して変わり得る。プロセッサ１６０２は、本明細書で開示されたシステムと方法を実装することが出来る。
【００８５】
端末１６００は、アンテナ１６０６に接続されたフロントエンド・トランシーバ１６０４を用いて与えられることが出来る。フロントエンド・トランシーバ１６０４は、データ通信を受信するために構成される。ベース・バンド・プロセッサ１６０８は、該トランシーバ１６０４に接続されることが出来る。ベース・バンド・プロセッサ１６０８は、ソフトウェアに基づくアーキテクチャ又は他の型のアーキテクチャを用いて実装されることが出来る。マイクロプロセッサは、プラットフォームとして利用されることが出来て、諸機能の中でもとりわけ、制御機能と全体的なシステム管理機能を提供するソフトウェア・プログラムを走らせる。デジタル信号プロセッサ（digital signal processor）（ＤＳＰ）は、組込み通信ソフトウェア層とともに与えられることが出来、それはマイクロプロセッサの処理要求を軽減する特定用途アルゴリズムを走らせる。該ＤＳＰは、例えばパイロット信号捕捉、時間同期、周波数追跡、スペクトル拡散処理、変調及び復調機能、及び順送り（forward）誤り訂正のような、種々の信号処理機能を提供するために利用されることが出来る。
【００８６】
端末１６００は、ベース・バンド・プロセッサ１６０８に接続される種々の利用者インターフェース１６１０を含むことも出来る。利用者インターフェース１６１０は、キーパッド、マウス、タッチ・スクリーン、ディスプレイ、着信報知機、バイブレータ、オーディオ・スピーカ、マイクロフォン、カメラ、及び／又はその他の入出力デバイスを含むことが出来る。
【００８７】
ベース・バンド・プロセッサ１６０８は、プロセッサ１６０２を具備する。ベース・バンド・プロセッサ１６０８のソフトウェアに基づく実行では、該プロセッサは、マイクロプロセッサ上で走るソフトウェア・プログラムであることが出来る。しかしながら、当業者等は容易に認めるように、プロセッサ１６０２は、この実施形態に限定されず、本明細書に記載される種々の機能を実行することが出来る、ハードウェア構成、ソフトウェア構成、又はそれ等の組合せを含む、公知の種々の手段によって与えられることが出来る。プロセッサ１６０２は、データの記憶のためにメモリ１６１２に接続されることが出来る。メモリ１６１２は、製造及び／又は試験プロセス期間中に受信されたプログラム・データを記憶するために構成され、そしてプロセッサ１６０２又は１６０８は、該プログラム・データを用いてプログラムされるために構成される。
【００８８】
（例えば、マルチメディア・コンテントとデジタル著作権管理の配信のための効率的鍵階層構造に関連する）種々の実施形態は、それ等の種々の態様を遂行するために種々の人工知能（ＡＩ）に基づく方式を利用することが出来る。例えば、自動分類システムとプロセスを介して１又は複数の利用者に対する種々の鍵を有効にする及び無効にするためのプロセスである。本明細書で使用されるように、用語“推論”は、一般に、事象、センサ、及び／又はデータを介して獲得された観測情報の集合から、システム、環境、及び／又は利用者の状態を推論する又はそれについて思考するプロセスのことを指す。推論は、特定のコンテクスト又は動作を識別するために利用されることが出来る、或いは、例えば状態に関する確率分布を生成することが出来る。推論は、確率的―即ち、データと事象の考察に基づく関心のある状態に関する確率分布の計算、であることが出来る。推論は、事象及び／又はデータの集合からより高いレベルの事象を構成するために利用される技術を指すことも出来る。このような推論は、観測された諸事象及び／又は記憶された事象データの集合から、該諸事象が時間的近接性において相関付けられるか否かに関わらず、及び該諸事象とデータが１つの事象及びデータ源から来たのか数個の源から来たのかに関わらず、新しい事象又は動作の構成をもたらす。種々の分類方式及び／又はシステム（例えば、サポート・ベクトル・マシン、ニューラル・ネットワーク、エキスパート・システム、ベイズ信頼性ネットワーク、ファジー論理、データ融合エンジン…）が、主題の実施形態と関連する自動的及び／又は推論的動作を実行することに関連して利用されることが出来る。
【００８９】
分類子（classifier）は、ある入力属性ベクトル、ｘ＝（ｘ１，ｘ２，ｘ３，ｘ４，ｘｎ）を該入力があるクラスに属する信頼度（confidence）にマッピングする関数、即ち、ｆ（ｘ）＝ｃｏｎｆｉｄｅｎｃｅ（ｃｌａｓｓ）、である。このような分類子は、確率論及び／又は統計学に基づく解析（例えば、ユーティリティや費用を要因として解析に織り込む）を利用して、利用者が自動的に実行されることを願う動作を予測又は推論する。
【００９０】
サポート・ベクトル・マシン（ＳＶＭ）は、利用され得る分類子の一例である。ＳＶＭは、可能な入力空間中に超曲面を見つけることによって動作し、その超曲面は、トリガリング基準（triggering criteria）を非トリガリング事象から分割しようと試行する。直観的に、これは、トレーニング・データに近いが同一ではない試験データに対する分類を正しくする。他の有向（directed）及び無向（undirected）モデル分類手法は、例えば、ナイーブ・ベイズ、ベイジアン・ネットワーク、判定ツリー、ニューラル・ネットワーク、ファジー論理モデルを含み、そして独立な種々異なるパターンを提供する確率論的分類モデルが利用されることができる。本明細書で使用される分類は、又優先順位のモデルを開発するために利用される、統計回帰を含む。
【００９１】
本明細書から容易に理解されるように、１又は複数の実施形態は、暗示的に（例えば、利用者の挙動を観察すること、外部の情報を受信することにより）トレーニングされるばかりでなく、明示的に（例えば、汎用トレーニング・データにより）トレーニングされる、分類子を使用することができる。例えば、ＳＶＭの分類子は、分類子コンストラクタ及び属性選択モジュール内で学習フェーズ又はトレーニング・フェーズ（phase）によって構成される。従って、多数の機能を自動的に学習及び実行するために該分類子が使用されることができる、該機能は、事前に決定された基準に従い、何時鍵を創成するか、何れの型の鍵を創成するか、を判断することが含むが、それに限定されない。該基準は、接続すべきデータ又はコンテントの量、コンテントの型、該コンテントの重要性、等々を含むことが出来るが、それ等に限定されない。
【００９２】
本明細書で説明された諸実施形態は、ハードウェア、ソフトウェア、ミドルウェア、マイクロコード、或いはこれ等の任意の組合せ、によって実現されることが出来る。システム及び／又は方法がソフトウェア、ファームウェア、ミドルウェア又はマイクロコード、プログラム・コード又はコード・セグメントで与えられる場合、それ等は、記憶コンポーネントのような、機械可読媒体中に記憶されることが出来る。コード・セグメントは、処理手順、関数、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェア・パッケージ、クラス、或いは命令の任意の組合せ、データ構造、或いはプログラム文、を表すことが出来る。１つのコード・セグメントは、情報、データ、引数、パラメータ、或いはメモリ内容を渡すこと及び／又は受信することによって、別のコード・セグメント或いはハードウェア回路に接続されることが出来る。情報、引数、パラメータ、データ等々は、メモリ・シェアリング（memory sharing）、メッセージ・パッシング（message passing）、トークン・パッシング（token passing）、ネットワーク伝送等々を含む、任意の適切な手段を用いて渡され、転送され或いは送信されることが出来る。
【００９３】
ソフトウェアの実行に関しては、本明細書に記載された諸技術は、本明細書中で説明された諸機能を実行するモジュール（例えば、処理手順、関数、等々）を用いて実行されることが出来る。ソフトウェア・コードは、メモリ・ユニットの中に記憶されることができ、そして、プロセッサにより実行されることが出来る。該メモリ・ユニットは、プロセッサの内部又はプロセッサの外部に実装されることが出来る、後者の場合、該メモリ・ユニットは、公知の種々の手段を介して該プロセッサに通信で接続されることが出来る。
【００９４】
開示された諸実施形態は、下記の技術の任意の１つ又はそれ等の組合せに適用されることが可能である、該技術は、即ち：符号分割多元接続（Code Division Multiple Access）（ＣＤＭＡ）システム、マルチキャリア（Multiple−Carrier）ＣＤＭＡ（ＭＣ−ＣＤＭＡ）、広帯域ＣＤＭＡ（Ｗ−ＣＤＭＡ）、高速下り回線パケット・アクセス（High−Speed Downlink Packet Access）（ＨＳＤＰＡ）、時分割多元接続（Time Division Multiple Access）（ＴＤＭＡ）システム、周波数分割多元接続（Frequency Division Multiple Access）（ＦＤＭＡ）システム、及び直交周波数分割多元接続（Orthogonal FDMA）（ＯＦＤＭＡ）システムである。
【００９５】
本明細書中で開示された諸実施形態に関連して説明された方法或いはアルゴリズムのステップは、直接ハードウェアにおいて、プロセッサにより遂行されるソフトウェア・モジュールにおいて、或いは両者の組合せにおいて、具体化されることが可能である。ソフトウェア・モジュールは、ＲＡＭメモリ、フラッシュ・メモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハード・ディスク、リムーバブル・ディスク、ＣＤ−ＲＯＭ、或いは他の任意の公知の記憶媒体形式、の中に常駐することが出来る。例示的な記憶媒体は、プロセッサが該記憶媒体から情報を読み、該記憶媒体に情報を書くことが出来るように、プロセッサと接続されている。それに代わって、記憶媒体は、プロセッサと一体になることも出来る。プロセッサと記憶媒体は、ＡＳＩＣの中に常駐することが可能である。該ＡＳＩＣは、利用者端末の中に常駐することが出来る。それに代わって、プロセッサと記憶媒体は、利用者端末中で単体部品として常駐することが可能である。
【００９６】
本明細書に記載された方法は、同業者には公知の多様なハードウェア、プロセッサ及びシステム上で実現されることが出来ることは注目されるべきである。例えば、本明細書に記載されたように、クライアントが動作するための一般的な要求は、クライアントが、コンテント及び情報を表示するためのディスプレイと、該クライアントの動作を制御するプロセッサと、そして該クライアントの動作に関係するデータとプログラムを記憶するためのメモリとを有することである。幾つかの実施形態では、クライアントはセルラ電話である。幾つかの実施形態では、クライアントは、通信能力を有するハンドヘルド・コンピュータである。更に別の実施形態では、クライアントは、通信能力を有するパーソナル・コンピュータである。その上、ＧＰＳ受信機のようなハードウェアが本明細書に記載された種々の実施形態を実現するために必要に応じてクライアント中に組み込まれることが出来る。更に、 “クライアント”と“サーバ”のような用語は、本明細書中で具体的なデバイス及び／又はエンティティを指すために使用されてきたけれども、これ等の用語は、何れにせよ限定的であると解釈されるべきではなくて、本明細書に含まれる諸実施形態のより明確な説明を提供するために使用されている。従って、一連のトランザクション又はシナリオの中で“クライアント”であるデバイス又はエンティティは、別系統のトランザクション又はシナリオの中では“サーバ”と考えられることが出来る。
【００９７】
本明細書中で開示された諸実施形態と関連して説明された種々の説明的なロジック、論理ブロック、モジュール、及び回路は、汎用プロセッサ、デジタル信号プロセッサ（digital signal processor）（ＤＳＰ）、特定用途向け集積回路（application specific integrated circuit）（ＡＳＩＣ）、フィールド・プログラマブル・ゲート・アレイ（field programmable gate array）（ＦＰＧＡ）或いは他のプログラム可能な論理デバイス、ディスクリート・ゲート（discrete gate）或いはトランジスタ・ロジック（transistor logic）、ディスクリート・ハードウェア部品（discrete hardware components）、或いは本明細書に記載された機能を実行するために設計されたそれ等の任意の組合せ、を用いて実装又は実行されることが出来る。汎用プロセッサは、マイクロプロセッサであって良い、しかし、その代わりに、プロセッサは、任意の通常のプロセッサ、制御器、マイクロ制御器、或いはステート・マシン（state machine）であって良い。プロセッサは、計算するデバイスの組合せ、例えば、ＤＳＰとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、ＤＳＰコアと結合された１又は複数のマイクロプロセッサ、或いは任意の他のこのような構成、として実装されることも可能である。
【００９８】
上述で説明されてきた内容は、１又は複数の実施形態の具体例を含む。無論、前述の諸実施形態を説明する目的のために、コンポーネントや方法の全ての考え得る組合せを説明することは不可能である。しかし、当業者は、種々の実施形態の多くの更なる組合せと置き換えが可能であることを認識する。従って、説明された諸実施形態は、添付された請求項の範囲の中に入る全てのその様な変更、修正及び変形を含んでいると意図される。更に、用語“含む（include）”が詳細な説明あるいは請求項で使用される範囲では、その用語は、“具備する（comprising）”が請求項中で移行語として使用される場合に解釈されるように、用語“具備する（comprising）”と同様な意味において包含することを意図される。
【図１】
0005425884.tif 000003
【図２】
0005425884.tif 000004
【図３】
0005425884.tif 000005
【図４】
0005425884.tif 000006
【図５】
0005425884.tif 000007
【図６】
0005425884.tif 000008
【図７】
0005425884.tif 000009
【図８】
0005425884.tif 000010
【図９】
0005425884.tif 000011
【図１０】
0005425884.tif 000012
【図１１】
0005425884.tif 000013
【図１２】
0005425884.tif 000014
【図１３】
0005425884.tif 000015
【図１４】
0005425884.tif 000016
【図１５】
0005425884.tif 000017
【図１６】
0005425884.tif 000018